- •10. Архитектура мк48
- •Арифметико-логическое устройство
- •Устройство управления микроконтроллера
- •Организация ввода/вывода информации
- •Память микроконтроллера
- •11. Однокристальные микроконтроллеры iMcs48 система команд
- •2. Команды логических операций
- •3. Команды передачи управления
- •12. Архитектура мк51
- •Арифметическо-логическое устройство
- •Устройство управления и синхронизации
- •13. Организация памяти в мк51
- •Сегменты памяти
- •Наращивание памяти
- •14. Организация подсистемы ввода/вывода в мк51
- •15. Организация таймеров и системы прерываний в мк51
- •Организация системы прерываний
- •16. Система команд мк51
- •Группа команд логических операций
- •Группа команд операций с битами
- •Группа команд передачи управления
- •17. Архитектура iMcs96
- •Почему iMcs96 быстрее, чем 8051?
- •20. Организация процессорного порта в iMcs96
- •21. Организация последовательного порта в iMcs96
- •Преобразование параллельного кода в последовательный
- •Протокол обмена
- •22. Система прерываний в iMcs96
- •24. Система команд iMcs96
- •25. Архитектура mc68hc05
- •Регистровая модель
- •Карта памяти для mc68hc705c8
- •Способы адресации
- •26. Архитектура mc68hc08
- •Регистровая модель
- •Способы адресации
- •Структура mc68hc11e9
- •Регистры
- •Способы адресации:
- •1. Подразумеваемая (inh):
- •2. Непосредственная (imm):
- •3. Прямая (dir):
- •5. Индексная с 8-битным смещением (IX, iy):
- •6. Относительная - в командах условного перехода (rel):
- •Система команд
14. Организация подсистемы ввода/вывода в мк51
Параллельные порты P0-P3 предназначены для побайтного ввода или вывода информации. Каждый порт содержит управляемые регистр-защелку, входной буфер и выходной драйвер. Порт 0 является двунаправленным, а порты 1, 2 и 3 – квазидвунаправленными.
Каждая линия портов может быть использована независимо для ввода или вывода информации. Чтобы некоторая линия порта использовалась для ввода, в D-триггер регистра-защелки порта должна быть записана 1, которая закрывает МОП-транзистор выходной цепи. По сигналу сброса в регистры-защелки всех портов записываются единицы, настраивающие их тем самым на режим ввода.
Порты P0 и P2 используются при обращении к внешней памяти. При этом через P0 в режиме временного мультиплексирования сначала выводится младший байт адреса, а затем выдается или принимается байт данных. Через порт P2 выводится старший байт адреса в тех случаях, когда разрядность адреса равна 16 бит.
Линия порта P0 может быть нагружена на два ТТЛ-входа, а выходные линии портов P1-P3 могут работать на одну ТТЛ-схему.
Схемотехника портов ввода/вывода МК51 для одного бита показана на рис. 3.4 (порты 1 и 2 имеют примерно такую же структуру, как и порт 3). Каждый порт содержит управляемые регистр-защелку, входной буфер и выходной драйвер.
Рис. 3.4. Схемотехника портов ввода/вывода МК51: а - порт 0; б - порт 3
Последовательный порт, который также называют универсальным асинхронным приемопередатчиком (УАПП), предназначен для приема и передачи информации в последовательной форме (младшими битами вперед). Порт обеспечивает полный дуплексный режим обмена, то есть позволяет работать одновременно на выдачу и на прием информации.
В состав УАПП входят принимающий и передающий сдвигающие регистры, а также буферный регистр SBUF приемопередатчика, через который программно доступны как принимающий, так и передающий регистры. Запись байта в регистр SBUF приводит к автоматической переписи байта в сдвигающий регистр передатчика и инициирует начало передачи байта. Порт позволяет начинать прием нового байта до того, как из приемного регистра считан предыдущий байт, однако, если первый байт еще не считан к тому моменту, когда закончится прием второго байта, то он будет потерян.
УАПП может работать в четырех различных режимах:
Режим 0. Последовательная информация передается и принимается 8-битными посылками через вывод RXD входа приемника. Через вывод TXD выхода передатчика выдаются тактовые импульсы, сопровождающие каждый бит. Таким образом в данном режиме информация записывается/считывается синхронно с тактовыми импульсами. Скорость обмена фиксирована и составляет 1/12 частоты тактового генератора.
Режим 1. В этом режиме посылка содержит 10 бит, которые передаются (через TXD) либо принимаются (через RXD) в следующей последовательности:
старт-бит (логический "0");
8 бит данных (младший бит первым);
стоп-бит (логическая "1").
При приеме стоп-бит заносится в разряд RB8 регистра SCON. Скорость обмена задается пользователем, для чего используется таймер/счетчик 1.
Режим 2. В этом режиме каждая посылка содержит 11 бит, которые передаются (через TXD) и/или принимаются (через RXD) в следующей последовательности:
старт-бит (логический "0");
8 бит данных (младший бит первым);
программируемый 9-й бит данных;
стоп-бит (логическая "1").
При передаче 9-й бит данных (размещается в разряде ТВ8 регистра SCON) может принимать фиксированное значение 0 или 1, либо формироваться программно, например, для контроля передаваемого байта по четности (в этом случае в него может быть помещено значение флага паритета из регистра PSW).
При приеме 9-й бит данных поступает в разряд RB8 регистра SCON. Скорость обмена в режиме 2 составляет 1/64 или 1/32 частоты внешнего тактового генератора и зависит от состояния бита SMOD (старший бит в регистре специального назначения PCON). Если SMOD=0 (устанавливается по сбросу МК), то скорость обмена составляет 1/64 частоты внешнего тактового генератора. Если SMOD=1, То скорость обмена составляет 1/32 частоты тактового генератора.
Режим 3. Данный режим совпадает с режимом 2, за исключением частоты приема/передачи, которая управляется программно с помощью таймера/счетчика 1.
Для задания режима работы последовательного порта используются регистры SCON и PCON.