Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЦУ_конспект_12.docx
Скачиваний:
68
Добавлен:
14.11.2019
Размер:
5.57 Mб
Скачать

4.2.2 Организация памяти и программно доступные ресурсы

В архитектуре MCS-51 память программ и память данных разделены (гарвардская архитектура). Каждая из них может иметь размер до 64 Кбайта; выбор одной из двух матриц памяти осуществляется сигналами PSEN, RD#, WR#.

Организация памяти в микроконтроллерах семейства 8051

Память программ может быть целиком внешней (сигнал ЕА = 0), либо при обращении по младшим 4 К адресов код извлекается из ячеек внутренней памяти микроконтроллера, а содержимое старших 60 К берется из внешней памяти системы (сигнал ЕА = 1).

Память данных делится на внешнюю и внутреннюю, каждая из которых имеет свое пространство адресов. Пространство адресов внутренней памяти данных объединяет все внутренние программно доступные ресурсы. Это пространство (256 байт) делится на пространство адресов внутреннего ОЗУ (128 байт) и пространство адресов регистров специальных функций.

В области адресов внутреннего ОЗУ выделяются два особых фрагмента:

  • Младшие 32 адреса занимают четыре регистровых банка – каждый по 8 регистров общего назначения R0…R7. Т.е. младшие 32 ячейки кроме адреса имеют имена.

  • Ячейки с адресами 32…48 имеют прямо адресуемые биты.

Регистры специальных функций включают все программно доступные регистры (управления и данных). Все регистры имеют как адреса в качестве ячеек памяти, так и символические адреса. Часть регистров содержит прямо адресуемые биты.

4.2.3 Система команд и методы адресации

Система команд MCS-51 ориентирована на организацию гибкого ввода/ вывода через параллельные и последовательный порты, первичную обработку информации, развиты команды операций с битами и передаче управления по их значениям. Набор команд операций с битами совместно с реализующими их аппаратными средствами образует "булев процессор" (Boolean processor). В отличие от многих RISC- контроллеров, система команд MCS-51 удобна для программирования на ассемблере.

Система команд MCS-51 базовой архитектуры содержит 111 команд, состоящих из 5 групп:

  • команды пересылки

  • арифметические команды

  • логические команды

  • команды передачи управления

  • команды операций с битами

Большинство команд (94) имеют формат 1-2 байта. Часть команд имеют трехбайтный формат. Группа арифметических команд включают команды аппаратного умножения и деления, двоично- десятичной коррекции аккумулятора. При выполнении операций умножения и деления над 8- разрядными числами 16- разрядный результат помещается в регистры А и В.

Используются три типа адресации: прямая, непосредственная, косвенная.

Исходная система прерываний включает пять источников – два внешних и три внутренних. Старшие версии МК имеют более развитую систему прерываний, индивидуальную для каждого типа МК. Источники внешних прерываний подключаются через выводы INT0#, INT1#; источники внутренних – два счетчика/таймера и последовательный порт. При одновременном поступлении нескольких запросов на прерывание очередность их обслуживания определяет внутренняя процедура последовательного опроса – поллинг. Применяется следующий порядок приоритетов источников прерывания:

  • вход INT0 – высший приоритет

  • таймер 0

  • вход INT1

  • таймер 1

  • последовательный порт – низший приоритет