
- •Основные понятия и определения микропроцессорной техники: микропроцессор, микропроцессорная система, микроконтроллер. Принципы построения микропроцессорных систем.
- •Архитектура микропроцессора: архитектура со сложной системой команд (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, а при ее отпускании светодиод гаснет.
- •Представление информации в языке Си
- •Операции и выражения в Си
- •Операторы управления вычислительным процессом
- •Функции
Таймеры микроконтроллеров
Для выполнения функций, связанных с управлением в реальном времени, в состав МК включают специальные аппаратные средства, которые называются таймером.
Модули таймеров служат для приема информации о времени наступления тех или иных событий от внешних датчиков, а также для формирования управляющих воздействий во времени.
В процессе развития модули таймеров в составе 8-разрядных МК непрерывно совершенствовались. Рассмотрим принцип действия одного из первых модулей, который входит в состав МК 8051 фирмы Intel. Схемотехникой МК предусматривается использование таймера в режиме счетчика внешних событий, поэтому его часто называют таймером/счетчиком.
Таймер представляет собой 16-разрядный счетчик со схемой управления (рис. 10.3). В карте памяти МК счетчик отображается двумя регистрами: ТН – старший байт счетчика, TL – младший байт. Регистры доступны для чтения и записи. Направление счета – только прямое, то есть при поступлении входных импульсов содержимое счетчика инкрементируется. В зависимости от программных настроек счетчик может использовать один из двух источников входных сигналов:
1) импульсную последовательность с выхода управляемого делителя частоты;
2) внешнюю импульсную последовательность, поступающую на один из входов МК.
В первом случае говорят, что счетчик работает в режиме таймера, во втором – в режиме счетчика событий. При переполнении счетчика устанавливается в «1» триггер переполнения TF, который генерирует запрос на прерывание, если прерывание от таймера разрешены. После переполнения работа счетчика продолжается. Последовательность изменения кодов следующая: FFFFh, 0000h, 0001h и т.д. Пуск и останов счетчика могут выполнятся только под управлением программы посредством установки или сброса соответствующего бита в регистре управления таймером. Программа также может установить старший TH и младший TL байты счетчика в произвольное состояние или прочитать текущий его код.
Главный недостаток модуля «классического» таймера – невозможность одновременного обслуживания (измерения или формирования импульсного сигнала) сразу в нескольких каналах. Совершенствование структуры подсистемы реального времени 8-разрядных МК ведется по двум направлениям:
1) простое увеличение числа модулей таймеров. Этот путь характерен для фирм, выпускающих МК со структурой MCS-51;
2) модификация структуры модуля таймера, при которой увеличение числа каналов достигается не увеличением количества счетчиков, а введением дополнительных аппаратных средств входного захвата и выходного сравнения. Такой подход используется в МК фирм Motorola, Microchip, более поздних моделей семейства MCS-51.
Рис. 10.3. Структура таймера/счетчика
11. Средства аналогового ввода/вывода микроконтроллеров: назначение, принцип построения компаратора напряжения и модуля аналого-цифрового преобразования, принцип получения аналогового выходного напряжения.
Необходимость приема и формирования аналоговых сигналов требует наличия в МК модулей аналогового ввода/вывода.
Простейшим устройством аналогового ввода в МК является встроенный компаратор напряжения. Компаратор представляет собой простую схему, которая сравнивает два напряжения: входное аналоговое напряжение UВХ с опорным UREF и устанавливает на выходе логическую 1, если входное напряжение больше опорного (рис. 11.1,а).
Разрешение на работу компараторов делается обычно с помощью весьма простой операции – требуется лишь предварительно перевести выводы МК, использующиеся для сравнения, в режим входов. Время срабатывания компараторов очень мало, что позволяет быстро формировать сигналы тревоги или какие-либо другие ответные реакции на изменение соотношения входных сигналов (рис. 11.1,б ). В МК с помощью компараторов напряжения можно инициировать прерывание при каждом очередном изменении состояния соответствующих входов.
Однако более широкие возможности для работы с аналоговыми сигналами дает аналого-цифровой преобразователь (АЦП). Отличительная особенность многих современных 8-разрядных МК - интегрированный на кристалл МК модуль многоканального АЦП. Он предназначен для ввода в МК аналоговых сигналов с датчиков физических величин и преобразования этих сигналов в двоичный код с целью последующей программной обработки. Структурная схема типового модуля АЦП представлена на рис. 11.2.
Рис. 11.1. Принцип работы компаратора напряжения:
а) - условное обозначение; б) - временные диаграммы
Многоканальный аналоговый коммутатор К служит для подключения одного из источников аналоговых сигналов (выводы порта Рx.0 ... Рx.7) ко входу АЦП. Выбор источника сигнала для преобразования осуществляется посредством записи номера канала коммутатора в соответствующие разряды регистра управления АЦП.
Диапазон измеряемых значений напряжения аналоговых входов определяется напряжением опоры Uоп. Разрешающая способность АЦП составляет Uоп/2n, где n – число двоичных разрядов в слове результата. Максимальное значение опорного напряжения, как правило, равно напряжению питания МК. Два вывода модуля АЦП используются для задания опорного напряжения: UREFH – верхний предел Uоп, UREFL – нижний предел. Разность потенциалов на входах UREFH и UREFL и составляет Uоп. Если измеряемое напряжение Uизм UREFH, то результат преобразования будет равен FFh. Код 00h соответствует напряжениям Uизм UREFL. Для достижения максимальной точности измерения следует выбрать максимально допустимое значение Uоп. В этом случае напряжение смещение нуля входного каскада и нелинейность передаточной характеристики АЦП будут вносить относительно малые погрешности.
Собственно аналого-цифровой преобразователь выполнен по способу последовательного приближения. Разрядность такого АЦП обычно составляет 8, реже 10 разрядов.
Длительность такта преобразования задает генератор синхронизации: один цикл получения очередного разряда выходного кода равен двум периодом частоты генератора TАЦП. Время преобразования АЦП можно рассчитать по формуле:
tпр= (2n + 1)ТАЦП.
Последний цикл необходим для переноса результата в регистр данных АЦП. Время преобразования для типовых модулей АЦП микроконтроллеров составляет от единиц до десятков микросекунд.
Рис. 11.2. Типовая структура модуля АЦП
Источником синхронизации модуля АЦП может служить встроенный RC-генератор (Г) или импульсная последовательность тактирования внутренних шин МК. В первом случае частота синхронизации АЦП обязательно окажется оптимальной, то есть той, которая рекомендуется в техническом описании. Во втором случае выбранная по другим соображениям BUS может оказаться неподходящей для модуля АЦП. На этот случай в составе некоторых модулей предусмотрен программируемый делитель частоты BUS.
Большинство модулей АЦП имеет только режим программного запуска: установка одного из битов регистра режима запускает очередное измерение. Момент завершения цикла преобразования АЦП отмечается установкой триггера готовности данных. Если прерывания от модуля АЦП разрешены, то генерируется запрос на прерывание. Как правило, чтение регистра результата сбрасывает триггер готовности.
Цифро-аналоговые преобразователи в составе МК являются большой редкостью. Обычно функция цифро-аналогового преобразователя реализуется средствами модуля программируемого таймера в режиме ШИМ. На одном из выводов МК формируется высокочастотная импульсная последовательность. Полученный сигнал сглаживается фильтром нижних частот с целью получения непрерывной осредненной величины.