- •Аналоговые и цифровые устройства автоматики
- •Глава 1. Архитектура и устройство
- •1.1. Внутренняя организация мк
- •1.2. Назначение выводов микросхемы мк
- •1.3. Организация памяти в мк
- •1.4. Регистр состояния программы psw
- •1.5. Таймеры/счетчики, регистры tmod и tcon
- •1. 6. Режимы работы таймеров/счетчиков
- •Структура прерываний мк
- •1.8. Блок последовательного интерфейса мк
- •1.8.1. Последовательная передача информации
- •1.8.2. Последовательный порт однокристального мк
- •1.8.3. Регистр управления последовательным портом scon
- •1.8.4. Режимы работы последовательного порта
- •1.8.5. Асинхронный обмен (режимы 1,2,3) данными
- •1.8.6. Скорость приёма/передачи
- •1.8.7. Работа мк в локальной сети
- •1.9. Системный сброс однокристального мк
- •1.10. Режим пониженного энергопотребления мк
- •1.11. Нагрузочная способность портов ввода/вывода
- •1. 12. Расширение портов ввода/вывода
- •Глава 2. Система команд однокристальных мк семейства mcs51
- •Способы адресации операндов
- •2.2. Команды мк
- •2.3. Правила написания программ на языке assembler
- •Метка операция операнд(ы) комментарии
- •2.3.1. Метка
- •2.3.2. Операция
- •2.3.3. Операнды
- •2.3.4. Комментарий
- •2.4. Директивы ассемблера
- •2.4.1. Директивы символических определений
- •Пример:
- •Ozu_org xdata 0800h; Адрес начала области внешнего озу.
- •2.4.2. Директивы резервирования и инициализации памяти
- •2.4.3. Директивы управления состоянием ассемблера
- •Глава 3. Обработка данных в однокристальных микроконтроллерах
- •3.1. Обращение к внутренней, внешней памяти данных и памяти программ
- •3.2. Арифметические операции
- •3.3. Логические операции
- •3.4. Операции с битами
- •Глава 4. Взаимодействие однокристального мк с объектом управления
- •4.1. Программный опрос и ожидание срабатывания позиционных датчиков
- •4.2. Ожидание импульсного сигнала
- •4.3. Программирование таймеров/счетчиков и формирование дискретных управляющих сигналов
- •4.4. Программирование прерываний в микропроцессорном устройстве
- •4.5. Программирование последовательного порта
- •Глава 5. Аппаратные средства
- •5.1. Ввод информации с клавиатуры
- •5.1.1. Прямое подключение клавиш к разрядам порта мк
- •В блоке основной программы происходит инициализация системы, разрешение прерываний, а затем выполняется основная программа.
- •Применение шифратора для организации клавиатуры
- •Шифратора
- •5.1.3. Матричный способ подключения клавиатуры
- •5.1.4. Комбинированный способ организации клавиатуры
- •5.2. Отображение информации в микропроцессорном устройстве
- •5.2.1. Контроллер клавиатуры и дисплея к580вв79 ( intel 8279 )
- •5.2.2. Матричные светодиодные индикаторы
- •5.2.3. Жидкокристаллический дисплей
- •Ввод аналоговых сигналов в микропроцессорный контроллер
- •Ацп с параллельными цифровыми выходами
- •5.3.2. Применение ацп с последовательным выходом
- •5.3.3. Применение таблиц для вычисления функций
- •5.4. Формирование управляющих аналоговых сигналов
- •5.5. Построение ацп с использованием цап
- •5.6. Микропроцессорный контроллер как управляющее устройство в системах автоматического регулирования
- •Согласование дискретных датчиков и исполнительных механизмов с однокристальным мк
- •5.8. Контроль напряжения питания в микропроцессорных системах
- •Глава 6. Отладка программного обеспечения и программирование однокристальных мк
- •6.1. Интегрированная система отладки программного обеспечения для мк ProView
- •6.1.1. Оптимизирующий кросс - компилятор c51
- •6.1.2. Макроассемблер a51
- •6.1.4. Отладчик/симулятор WinSim51
- •6.2. Запуск ProView и создание файла проекта
- •Если в системе задействованы таймеры-счетчики, то удобно промоделировать их работу при разворачивании соответствующих окон Timer (рис.76).
- •В окне указаны источники и адреса векторов прерываний, их состояние и приоритет. Разрешенные прерывания отмечены словом Enable, неразрешенные - Not Enable.
- •Рассмотрим основные пункты раздела debug (отладка), представлены на рис. 84. Эти функции предназначены для выполнения процесса отладки прикладной программы пользователя.
- •6.3. Программирование однокристальных мк
- •Контрольные вопросы для закрепления материала
- •Заключение
- •Библиографический список
- •Глава 1. Архитектура и устройство однокристальных мк семейства mcs51………………………..6
- •Глава 6. Отладка программного обеспечения и программирование однокристальных мк ……….203
- •162600, Г.Череповец , пр. Луначарского, 5
6.3. Программирование однокристальных мк
После того как прикладная управляющая программа отлажена, наступает этап “прошивки” ее во FLASH память программ МК. Рассмотрим процесс программирования микросхемы AT89S8252 с помощью программы программатора, разработанной фирмой AEC ELECTRONICS. Преимуществом данной программы является то, что плата разработанного устройства с МК непосредственно подключается к параллельному порту персонального компьютера, FLASH память программируется сигналами +5В.
Запуск программы осуществляется с помощью файла AEC_ISP.exe.
Окно программы программатора представлено на рис. 88. Необходимо отметить, что программаPROVIEW после компиляции создает только объектный код программы. Для того чтобы создать HEX код, необходимо воспользоваться дополнительной утилитой, преобразующей объектный код в шестнадцатеричный. Утилита OH.EXE (INTEL) выполняет такое преобразование. Рассмотрим разделы меню.
Рис. 88. Окно программы программатора для AT89S8252
(A) Load HEX file to flash buffer – загрузка HEX кодов прикладной программы в память программ;
(B) Load HEX file to EEPROM buffer – загрузка HEX кодов в двухкилобайтное Flash ОЗУ;
(С) Display flash buffer - просмотр содержимого Flash памяти программ;
(D) Display EEPROM buffer – просмотр содержимого Flash памяти данных;
Program - запись кодов в память программ;
Read Flash & EEPROM to buffer – чтение содержимого памяти программ и памяти данных в буфер;
Save Flash buffer to HEX file – сохранить содержимое Flash памяти программ в HEX файл;
Save EEPROM buffer to HEX file – сохранить содержимое Flash памяти данных в HEX файл;
Reset - установка уровня сигнала сброса;
Setup - установка параметров конфигурации программы;
Show schematic – схемотехника подключения;
About program - о программе;
(X) Quit - выход из программы.
Подключение МК к порту принтера представлено на рис. 89.
Рис. 89. Подключение МК AT89S8252 к порту принтера
Итак, рассмотрим этапы программирования:
При выключенном питании персонального компьютера и разработанного контроллера подключите плату устройства к порту принтера.
Включите питание компьютера и загрузите программу AEC_ISP.EXE.
Подключите питание к разработанному контроллеру.
Выберите пункт “А” в меню программы, на запрос “Input Filename:” введите полный путь к вашему файлу с указанием его расширения HEX.
Активизируйте пункт “Е” меню, начнется процесс программирования.
При необходимости защиты вашей программы от несанкционированного доступа можно предварительно перед прошивкой установить 3 бита защиты в разделе Setup. В этом случае прошитая программа не сможет быть прочитана.
Контрольные вопросы для закрепления материала
Каков принцип тестирования внутреннего и внешнего ОЗУ МК?
Объясните назначение стека, какой принцип использован при загрузке и разгрузке стека?
Какой командой можно переопределить вершину стека?
Назовите способы программного контроля импульсного сигнала.
Назовите способы программного контроля состояния позиционного датчика.
Что такое “дребезг контакта”, в чем заключается отрицательное влияние этого эффекта?
Какими способами можно избавиться от “дребезга контакта”?
Какое число нужно загрузить в регистр таймера для получения задержки в 30 мС? Собственная частота кварцевого резонатора 12МГЦ.
Что должно происходить в микропроцессорной системе, если поступило несколько запросов на прерывания одновременно?
Каким образом организовать проверку правильности передачи информации по последовательному каналу?
Назовите виды клавиатур, применяемых в микропроцессорных устройствах.
Назовите способы аппаратного подключения клавиатуры.
В чем преимущества использования метода прерывания при организации клавиатуры перед программным опросом?
Назовите средства для отображения информации.
В чем преимущество динамического метода отображения информации перед статическим?
Объясните устройство и принцип работы семисегментного индикатора, как получаются коды индикатора?
В чем преимущество ЖК - дисплеев перед светодиодными?
Назовите особенности программирования и преимущества контроллера клавиатуры и дисплея К580ВВ79.
В чем преимущество матричных индикаторов и дисплеев перед сегментными?
Как сформировать коды информации для матричного индикатора?
Каковы особенности программирования дисплея МТ107-7?
Назовите основные параметры АЦП.
Что такое УВХ и его назначение?
Определите максимальную частоту изменения технологического параметра, воспроизводимого без искажений, если время преобразования АЦП составляет 5мкС.
Объясните назначение коммутатора в многоканальном устройстве обработки аналоговой информации.
В чем преимущества АЦП с последовательным выходом перед АЦП, имеющим параллельные выходы?
Каковы особенности управления АЦП с последовательным выходом?
Дайте понятие интерполяции.
С какой целью используют метод табличного поиска значений функции?
Объясните формулу (5.8).
Как определить уровень квантования для АЦП и ЦАП?
Назовите достоинства и недостатки программного АЦП с использованием ЦАП в сравнении с аппаратным АЦП.
Что называется периодом квантования в цифровой системе управления?
Объясните смысл теоремы Котельникова.
Объясните работу цифрового ПИ - регулятора скорости вращения вала электродвигателя по функциональной схеме.
Какие технические средства обеспечивают гальваническую развязку цепей и ее назначение?
С какой целью необходимо контролировать напряжение питания в микропроцессорной системе?
Объясните принцип работы сторожевого таймера.
Какие существуют способы отладки микропроцессорных устройств?
Что такое эмулятор?