Общая характеристика микроконтроллеров семейства МК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 байт |
Кроме указанных в таблице резидентной памяти программ и данных (РПП и РПД) микроконтроллер содержит на кристалле:
· 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 предлагается реализовать в ходе выполнения двух лабораторных работ.
Дата добавления: 2016-01-09; просмотров: 1688;