Лекция 19 Архитектура однокристального микроконтроллера
Цели лекции:
1. Изучение архитектуры однокристальных микроконтроллеров.
2. Рассмотрение работы основных функциональных блоков микроконтроллера - системы прерывания, таймеров/счетчиков, параллельных и последовательного портов.
Структура микроконтроллера МК-51
Архитектура однокристальных микроконтроллеров MCS-51, разработанная фирмой Intel, стала де-факто стандартной для этого типа микропроцессоров. Микропроцессоры, имеющие такую архитектуру, с определенными модификациями выпускаются различными фирмами. В нашей стране микроконтроллеры данной архитектуры относятся к семейству МК-51 и в настоящее время содержат следующие схемы: К1816ВЕ31, К1816ВЕ51, К1816ВЕ751, К1830ВЕ31, К1830ВЕ51. Все они являются функционально завершенными и содержат на кристалле все необходимые узлы для построения законченной системы управления минимальной конфигурации. Основные электрические характеристики этих схем представлены в таблице 19.1.
Таблица 14.1. Характеристики БИС семейства МК-51
Микросхема | Аналог | Емкость внутренней памяти программ, байт | Тип памяти программ | Ток потребления,мА |
К1816ВЕ31 | 8031AH | - | внешняя | 150 |
К1816ВЕ51 | 8051AH | 4K | ПЗУ | 150 |
К1816ВЕ751 | 8751H | 4K | ППЗУ | 220 |
К1830ВЕ31 | 80C31BH | - | внешняя | 18 |
К1830ВЕ51 | 80C51BH | 4K | ПЗУ | 18 |
Все приведенные в таблице 19.1 микроконтроллеры имеют емкость внутренней памяти данных в 128 бит и максимальную внешнюю тактовую частоту - 12 МГц.
|
|
Дальнейшее описание будет относиться к микросхеме К1816ВЕ51.
Структурная схема МК-51 представлена на рисунке 19.1.
Рисунок 19.1 - Структурная схема однокристального микроконтроллера семейства МК-51
Микроконтроллер содержит:
- арифметико-логический блок (АЛБ), включающий в себя:
- восьми- разрядное АЛУ;
- регистр-аккумулятор A и дополнительный регистр-аккумулятор B, использующиеся при выполнении операций умножения и деления;
- битовое АЛУ;
- битовый аккумулятор, находящийся в разряде C слова состояния процессора PSW, который в байтовых арифметических операциях фиксирует сигнал переноса;
- внутреннюю память программ емкостью 4 Кбайт, в которой также могут храниться константы;
- внутреннюю память данных емкостью 128 байт, используемую для организации банков регистров общего назначения, стека и хранения пользовательских данных; часть этой памяти имеет побитовый доступ;
- 32 двунаправленных интерфейсных линии, индивидуально настраиваемых на ввод или вывод информации и организованных в виде четырех 8-разрядных портов P0-P3;
- два 16-разрядных многорежимных таймера/счетчика TC0 и TC1, используемых для организации временных задержек, внешних событий (количества сигналов, поступающих по внешним входам Т0 и Т1) и тактирования последовательного порта;
|
|
- двунаправленный дуплексный асинхронный последовательный порт;
- двухуровневую приоритетную маскируемую систему прерываний от трех внутренних источников (таймеров/счетчиков и последовательного порта) и двух внешних, поступающих по входам INT0 и INT1;
- устройство управления (УУ);
- встроенный тактовый генератор (ТГ), тактирование которого проводится внешним генератором с частотой fBQ; частота машинного цикла составляет fBQ / 12, время выполнения команд МК составляет 1-4 периода машинного цикла.
Формат регистра PSW представлен в таблице 19.2.
Таблица 19.2 - Назначение разрядов регистра слова состояния процессора
Позиция в регистре | Мнемоника бита | Функция |
7 | C | Перенос в арифметических операциях.Битовый аккумулятор в логических операциях |
6 | AC | Флаг вспомогательного переноса. Устанавливается и сбрасывается аппаратно при выполнении сложения и вычитания и сигнализирует о переносе или займе в бите 3 |
5 | FO | Флаг, специфицируемый пользователем |
4 | RSI | Номер рабочего банка регистров |
3 | RSO | Номер рабочего банка регистров |
2 | OV | Переполнение в арифметических операциях |
1 | - | Не используется |
0 | P | Признак четности числа единиц в аккумуляторе |
|
|
Организация памяти
Одной из основных особенностей однокристальных микроконтроллеров, отличающих их от других типов микропроцессорных БИС, является так называемая "гарвардская архитектура", при которой память программ и память данных физически и логически отделены друг от друга.
Память данных
Память данных, расположенная на кристалле (внутренняя память данных), имеет емкость 128 байт с адресами 00h-7Fh. Она может быть расширена до 64 Кбайт за счет подключения блоков внешней памяти данных.
Помимо возможности использования ОЗУ в качестве массива оперативной памяти, отдельные ее области имеют самостоятельное значение. Часть ОЗУ применяется в качестве регистров общего назначения, часть имеет прямоадресуемый доступ к отдельным битам, образуя так называемую битовую память. В ОЗУ располагается также и область стека.
Распределение адресного пространства ОЗУ показано на рисунке 19.2.
Рисунок 19.2 – Структура внутренней памяти данных
Младшие 32 байта внутреннего ОЗУ данных сгруппированы в 4 банка по 8 регистров общего назначения в каждом (БАНК 0-БАНК 3). Определение рабочего в данный момент банка, то есть банка регистров, к которому обращается программа при использовании имен R0-R7, осуще ствляется установкой битов RS0 и RS1 в регистре слова состояния PSW.
|
|
Наличие нескольких банков регистров сокращает длину команд за счет уменьшения длины поля номера регистра, а также уменьшает время, необходимое для сохранения и восстановления регистров при работе с подпрограммами и обработчиками прерываний, что характерно для структуры задач, решаемых микроконтроллерами.
ОЗУ данных с адресами 20h-2Fh образует область ячеек, к которым возможен побитный доступ. Система команд МК-51 содержит значительное количество инструкций, позволяющих работать с отдельными битами, используя при этом прямую адресацию. 128 бит, составляющие рассматриваемую область внутреннего ОЗУ данных, имеют адреса бит 00h-7Fh и предназначены для работы с такими инструкциями. Таким образом, к ячейке с адресом, например, 21h можно обратиться как к байту, используя ее прямой адрес 21h, а можно обратиться к ее отдельным битам с помощью команд, работающих с битовой информацией. При этом младший бит этого байта имеет адрес 08h, а старший - 0Fh.
Ячейки памяти с адресами 30h-7Fh используются как обычная оперативная память.
Во внутреннем ОЗУ данных размещается также область стека. Ее положение не фиксировано, а определяется значением указателя стека SP.
Адресное пространство внутренней памяти данных с адресами 80h-FFh отведено под указание регистров специальных функций микропроцессора. Область регистров специальных функций содержит регистры-защелки портов ввода-вывода, регистры таймеров/счетчиков, регистры управления и т. п. Эти регистры допускают только прямую адресацию.
Все ячейки внутреннего ОЗУ данных могут адресоваться с использованием прямой и косвенной адресации. Обращение к регистрам специальных функций допускается с применением только прямой адресации.
К внешней памяти данных можно обращаться только на запись или чтение с помощью специальных команд. Эти команды осуществляют обмен информацией между внешней памятью данных и аккумулятором микроконтроллера и не влияют на внутреннюю память данных МК. Таким образом, в системе могут одновременно присутствовать внутренняя память данных с адресами 00h-0Fh и внешняя память данных с адресами 0000h-FFFFh.
Дата добавления: 2019-09-13; просмотров: 346; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!