Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОМПТ Шарапов. А.В.doc
Скачиваний:
222
Добавлен:
10.05.2015
Размер:
3.94 Mб
Скачать

2 Общая характеристика микроконтроллеров семейства мк51

Семейство МК51 включает ряд микросхем, основное различие между которыми состоит в реализации памяти программ и мощности потребления (табл. 2.1). Микросхемы серии К1816 выполнены по n-MОП технологии, микросхемы серии К1830 — по технологии КМОП.

Таблица 2.1

Микро- схемы

Аналог

Intel

Объем РПП

Тип РПП

Объем РПД

fmax,

МГц

Iп,

мА

К1816ВЕ51

К1816ВЕ31

К1830ВЕ51

К1830ВЕ31

8051АН

8031АН

80С51ВН

80С31ВН

4Кб

нет

4Кб

нет

ПЗУ

ПЗУ

128 байт

128 байт

128 байт

128 байт

12

12

12

12

150

150

18

18

Кроме указанных в таблице резидентной памяти программ и данных (РПП и РПД) микроконтроллер содержит на кристалле:

  • 8-разрядный центральный процессор (в АЛУ реализуются сложение, вычитание, умножение и деление);

  • четыре программируемых 8-разрядных порта ввода/вы-вода (Р0-Р3);

  • два 16-битовых многорежимных таймера/счетчика;

  • систему прерываний с пятью векторами и двумя уровнями;

  • последовательный интерфейс;

  • тактовый генератор;

  • битовый процессор.

За счет подключения внешних БИС память программ может быть расширена до 64 Кб, память данных — на 64 Кб.

Многие выводы микросхем допускают многофункциональ­ное использование (на рис. 2.1 показаны альтернативные функ­ции порта Р3).

Выводы BQ1 и BQ2 служат для подключения кварцевого резонатора, вывод RST — для организации сброса МК. Вывод VPP (выбор памяти программ) для блокировки резидентной памяти программ заземляется. При подключении внешней памяти через порт Р0 передаются данные и младший байт адреса (А0-А7), через порт Р2 — старший байт адреса (А8-А15). Для реализации альтернативных функций порта Р3 в соответствующие линии порта необходимо вывести единицы.

Микроконтроллер выпускается в корпусе (PDIP, SOIC, QFP), имеющем 40 внешних выводов. Для работы МК51 требуется один источник электропитания напряжением +5В. Выводы для подключения источника питания на функциональной схеме рис. 2.1 не показаны. Через четыре программируемых порта ввода/вывода МК51 взаимодействует с внешней средой в стандарте ТТЛ-схем с тремя состояниями выхода. Ниже приводится описание основных функциональных узлов микроконтроллера.

Блок управления и синхронизации предназначен для выработки синхронизирующих и управляющих сигналов, обеспечивающих координацию совместной работы блоков МК51 во всех допустимых режимах работы. В состав блока управления входят: устройство формирования временных интервалов, логика ввода-вывода, регистр команд, регистр управления потреблением электроэнергии, дешифратор команд, логика управления МК.

Устройство формирования временных интервалов предназначено для формирования и выдачи внутренних синхросигналов фаз, тактов и циклов. Количество машинных циклов определяет продолжительность выполнения команд. Практически все команды ОЭВМ выполняются за один или два машинных цикла, кроме команд умножения и деления, продолжительность выполнения которых составляет четыре машинных цикла. Обозначим частоту задающего генератора через Fг. Тогда длительность машинного цикла равна 12/Fг или составляет 12 периодов сигнала задающего генератора. Логика ввода-вывода предназначена для приема и выдачи сигналов, обеспечивающих обмен информации с внешними устройствами через порты ввода-вывода Р0-Р3.

Регистр команд предназначен для записи и хранения 8-ми разрядного кода операции выполняемой команды. Код операции с помощью дешифратора команд и логики управления МК преобразуется в микропрограмму выполнения команды.

Регистр управления потреблением (PCON) позволяет останавливать работу микроконтроллера для уменьшения потребления электроэнергии и уменьшения уровня помех от микроконтроллера. Еще большего уменьшения потребления электроэнергии и уменьшения помех можно добиться, остановив задающий генератор микроконтроллера. Этого можно достичь при помощи переключения бит регистра управления потреблением PCON. Для варианта изготовления по технологии n-МОП (серия 1816) регистр управления потреблением PCON содержит только один бит, управляющий скоростью передачи последовательного порта SMOD, а биты управления потреблением электроэнергией отсутствуют.

Арифметико-логическое устройство (ALU) представляет собой параллельное восьмиразрядное устройство, обеспечивающее выполнение арифметических и логических операций. АЛУ состоит из: регистров временного хранения TMP1 и TMP2, ПЗУ констант, сумматора, дополнительного регистра (регистра В), аккумулятора (ACC), регистра состояния программ (PSW).

Регистры временного хранения — восьмиразрядные регистры, предназначенные для приема и хранения операндов на время выполнения операций над ними. Эти регистры программно не доступны.

ПЗУ констант обеспечивает выработку корректирующего кода при двоично-десятичном представлении данных, кода маски при битовых операциях и кода констант.

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

Регистр B — восьмиразрядный регистр, используемый во время операций умножения и деления. Для других инструкций он может рассматриваться как дополнительный сверхоперативный регистр.

Аккумулятор — восьмиразрядный регистр, предназначенный для приема и хранения результата, полученного при выполнении арифметико-логических операций или операций сдвига.

Блок последовательного интерфейса и прерываний (ПИП) предназначен для организации ввода-вывода последовательных потоков информации и организации системы прерывания программ. В состав блока входят: буфер ПИП, логика управления, регистр управления, буфер передатчика, буфер приемника, приемопередатчик последовательного порта, регистр приоритетов прерываний, регистр разрешения прерываний, логика обработки флагов прерываний и схема выработки вектора.

Счетчик команд (Program Counter) предназначен для формирования текущего 16-разрядного адреса внутренней памяти программ и 8/16-разрядного адреса внешней памяти программ. В состав счетчика команд входят 16-разрядные буфер РС, регистр РС и схема инкремента (увеличения содержимого на 1).

Память данных предназначена для временного хранения информации, используемой в процессе выполнения программы.

Порты P0, P1, P2, P3 являются квазидвунаправленными портами ввода-вывода и предназначены для обеспечения обмена информацией МК с внешними устройствами, образуя 32 линии ввода-вывода.

Регистр состояния программы (PSW) предназначен для хранения информации о состоянии АЛУ при выполнении программы.

Память программ предназначена для хранения программ и представляет собой постоянное запоминающее устройство (ПЗУ). В разных микросхемах применяются масочные, стираемые ультрафиолетовым излучением или FLASH ПЗУ.

Регистр указателя данных (DPTR) предназначен для хранения 16-разрядного адреса внешней памяти данных.

Указатель стека (SP) представляет собой восьмиразрядный регистр, предназначенный для организации особой области памяти данных (стека), в которой можно временно сохранить содержимое любой ячейки памяти. Прежде всего стек предназначен для сохранения адреса возврата при вызове подпрограмм.

В АЛУ реализуется механизм каскадного выполнения микроопераций при выполнении сложных команд. Так, например, при выполнении одной из команд условного перехода по результату сравнения в АЛУ трижды инкрементируется счетчик команд, дважды производится чтение из памяти данных, выполняется арифметическое сравнение двух переменных, формируется 16-битный адрес перехода и принимается решение о том, делать или не делать переход по программе.

Расширенная система команд обеспечивает побайтовую и побитовую адресацию. Отдельные программно доступные биты могут быть установлены, сброшены, могут пересылаться, проверяться и использоваться в логических вычислениях.

Выходные линии портов 1, 2 и 3 могут работать на одну ТТЛ-схему. Линии порта 0 могут быть нагружены на два входа ТТЛ каждая.

Знакомство с программной моделью, системой команд, системой прерываний, таймерами/счетчиками событий и простейшими средствами отладки МК51 предлагается реализовать в ходе выполнения двух лабораторных работ.