
- •Основные понятия и определения микропроцессорной техники: микропроцессор, микропроцессорная система, микроконтроллер. Принципы построения микропроцессорных систем.
- •Архитектура микропроцессора: архитектура со сложной системой команд (cisc-процессоры), архитектура с упрощенной системой команд (risc-процессоры). Принстонская и гарвардская архитектуры.
- •3. Структура микропроцессорной системы и основные режимы ее работы – выполнение основной программы, обслуживание прерываний, прямой доступ к памяти.
- •4. Модуль процессора микропроцессорной системы. Состав модуля – операционный блок, блок управления, интерфейсный блок. Выполняемые функции.
- •5. Модуль памяти мпс. Выполняемые функции. Основные характеристики. Типы микросхем, применяемых для построения постоянной и оперативной памяти микропроцессорных систем.
- •6. Реализация обмена данными между внешними устройствами и микропроцессорной системой (мпс). Модуль ввода/вывода мпс, выполняемые функции, функциональная схема устройства ввода/вывода.
- •7. Понятие о системе команд микропроцессоров. Основные группы команд. Способы адресации операндов в микропроцессорах.
- •Форматы команд
- •Способы адресации операндов и команд
- •Адресация операндов
- •Адресация команд
- •Группы команд микропроцессора
- •8. Классификация и структура микроконтроллеров (мк). Процессорное ядро мк, его основные характеристики.
- •9. Типы памяти микроконтроллеров: память программ, память данных, регистры, внешняя память.
- •Память программ
- •Память данных
- •Регистры мк
- •Внешняя память
- •10. Порты ввода/вывода: назначение, основные типы. Таймеры микроконтроллеров: назначение, внутренняя структура.
- •Таймеры микроконтроллеров
- •12. Интерфейсы микропроцессорных систем, классификация и принципы построения
- •14. Последовательные асинхронные интерфейсы: rs-232, rs-422, rs-485, ирпс (интерфейс радиальный последовательный). Назначение, форматы передачи данных, основные технические характеристики.
- •15. Последовательные синхронные интерфейсы: spi (Synhronous Peripheral Interface), i2c (Inter Integrated Circuit). Назначение, форматы передачи данных, основные технические характеристики.
- •Интерфейсная шина i2c
- •16. Однокристальные микроконтроллеры семейства mcs-51: состав и общая характеристика. Структурная организация: регистры, память данных и программ.
- •17. Однокристальные микроконтроллеры семейства mcs-51: порты ввода/вывода, таймеры/счетчики, последовательный порт, система прерываний. Назначение, основные особенности.
- •18. Работа микроконтроллеров семейства mcs-51 в автономном режиме, способы подключения внешней памяти программ и данных.
- •21. Микроконтроллеры подсемейства pic18: общая характеристика, особенности архитектуры и системы команд.
- •Организация памяти
- •Система прерывания
- •Порты ввода/вывода
- •Генератор тактовых импульсов
- •Система команд pic18
- •Основные этапы разработки микроконтроллерных систем
- •Разработка и автономная отладка аппаратных средств мкс
- •Разработка и отладка программного обеспечения
- •23. Язык Ассемблер для микроконтроллеров семейства mcs-51: назначение, структура полей предложений на языке Ассемблер, директивы Ассемблера.
- •Поля предложения на языке Ассемблер
- •Примеры
- •Директивы Ассемблера
- •Метка Операция Операнды Комментарий
- •Метка Операция Операнды Комментарий
- •Опрос двоичного датчика
- •Ожидание события
- •Формирование временной задержки
- •Формирование управляющих сигналов из мк
- •Защита от дребезга контактов
- •25. Методы ввода информации с клавиатуры для микроконтроллеров семейства mcs-51: виды клавиатур, схема подключения контактов клавиатур к микроконтроллеру, методы опроса клавиатуры.
- •Описание микроконтроллерного устройства
- •Создание исходного файла базовой программы
- •Включение и выключение светодиода. Чтобы подать логическую единицу на вывод rb0 (для включения светодиода) необходимо в нулевой бит регистра portb записать 1:
- •Опрос переключателя. Ниже приведен текст программы, которая по нажатию клавиши sa1 включает светодиод vd1, а при ее отпускании светодиод гаснет.
- •Представление информации в языке Си
- •Операции и выражения в Си
- •Операторы управления вычислительным процессом
- •Функции
10. Порты ввода/вывода: назначение, основные типы. Таймеры микроконтроллеров: назначение, внутренняя структура.
Каждый МК имеет некоторое количество линий ввода/вывода, которые объединены в многоразрядные (чаще 8-разрядные) параллельные порты ввода/вывода Рx (х – имя порта, используемое в техническом описании). Порты обозначаются либо цифрами (Р0, Р1, Р2 и т.д.), либо буквами латинского алфавита (PA, PB, PC и т.д.). В карте памяти МК каждый порт представлен регистром данных порта, который имеет имя, аналогичное порту, то есть Рx. В режиме ввода логические уровни сигналов на линиях порта Рx отображаются нулями или единицами в соответствующих разрядах регистра данных порта Рx. В режиме вывода данные, записанные под управлением программы в регистр Рx, передаются на выводы МК, которые отмечены в качестве линий порта Рx. Обращение к регистру данных порта Рx осуществляется теми же командами, что и обращение к ячейкам резидентной оперативной памяти. Кроме того, во многих МК отдельные разряды портов могут быть опрошены, установлены или сброшены командами битового процессора.
С функциональной точки зрения различают следующие типы параллельных портов:
1) однонаправленные порты, предназначенные в соответствии со спецификацией МК только для ввода или только для вывода информации;
2) двунаправленные порты, направление передачи которых (ввод или вывод) устанавливается программно, обычно при инициализации микроконтроллерной системы;
3) порты с альтернативной функцией (мультиплексированные порты). Отдельные линии этих портов используются совместно периферийными устройствами МК, такими, как таймеры, АЦП, контроллеры последовательных интерфейсов. Если соответствующий периферийный модуль МК не используется, то выводы порта, связанные с ним, можно задействовать как обычные линии ввода/вывода. Напротив, если модуль активизирован, то принадлежащие ему линии порта автоматически конфигурируются в соответствии с функциональным назначением в модуле и не могут быть использованы в качестве линий ввода/вывода.
Объединение групп линий в порты позволяет обращаться к ним как к ячейкам памяти, что удобно для организации обмена в параллельном формате. Однако двунаправленные порты современных МК выполняются с возможностью независимого задания направления передачи каждой линии. Поэтому в случае необходимости каждая линия может быть сконфигурирована индивидуально и обслужена командами битового процессора независимо от других линий того же порта. Учитывая это обстоятельство, обычно схемотехника портов ввода/вывода рассматривается на уровне одной линии.
Различают следующие основные типы линий портов:
1) двунаправленные линии, которые настраиваются на ввод или вывод программированием бита в регистре направления передачи;
2) двунаправленные линии, которые не требуют предварительной настройки направления передачи.
Примером линий 1-го типа могут служить линии портов МК семейства PIC16 фирмы Microchip (рис. 10.1). В каждой линии имеется триггер данных, входящий в регистр данных порта PORT; триггер направления передачи данных, входящий в регистр направления TRIS; выходной буфер OBF; буфер чтения вывода порта IBF. Буферы OBF и IBF имеют выходы с тремя состояниями. Управление состоянием выходов выполняется с помощью сигналов на входах EN. При EN = 1 выходы буферов находятся в активном режиме и передают логические “1” или “0” со входов. При EN = 0 находятся в отключенном Z-состоянии. Управление буфером OBF выполняется от триггера TRIS. Когда в триггере записан “0”, высокий уровень с инверсного выхода триггера поступает на управляющий вывод EN буфера OBF и переводит его выход в активный режим. Информация, записанная в триггере данных PORT (“0” или “1”), поступает на выход линии порта. Когда в триггере TRIS записана “1”, на выводе EN будет “0”, и выход буфера OBF переходит в Z-состояние, т.е. отключается от вывода порта. Логическое состояние на выводе порта в этом случае может быть прочитано с помощью буфера IBF, который открывается командой чтения выводов порта. Буфер IBF открывается кратковременно только на момент чтения выводов порта. В остальное время выход IBF находится в Z-состоянии и не влияет на шину данных МК. Таким образом, для настройки линии порта на вывод в соответствующий разряд регистра TRIS надо записать 0, а для настройки линии на ввод – записать 1.
Рис. 10.1. Схема двунаправленной линии порта МК семейства PIC16
Примером двунаправленных портов, которые не требуют предварительной настройки направления передачи, могут служить линии порта Р0 микроконтроллера 8051 фирмы Intel (рис. 10.2). Особенность этих линий заключается в том, что при считывании возвращаемое значение равно логическому произведению сигнала на линии и содержимого одноименного триггера регистра данных порта Р0.i. По этой причине те разряды порта, которые будут считываться, должны быть установлены в «1» командой записи в порт и лишь потом прочитаны. Транзистор VT1 линии порта выполнен по схеме с открытым стоком, поэтому в режиме ввода линии имеет высокое входное сопротивление (Z-состояние). Значение сигнала на выводе порта может быть прочитано через буфер IBF, который открывается сигналом «чтение выводов». В режиме вывода «1» транзистор VT1 закрыт и выходная линия порта оказывается под «плавающим» потенциалом. Поэтому для вывода «1» необходимо устанавливать на выводах порта «подтягивающие» резисторы для задания высокого уровня.
Рис. 10.2. Схема двунаправленной линии порта P0 МК семейства MCS-51