Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МИКРОЭВМ СЕМЕЙСТВА МК51-3.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
4.97 Mб
Скачать

2. Архитектура и конструктивные особенности микроконтроллера i8051

Понятие архитектура микроконтроллера включает в себя совокупность аппаратных и программных средств, необходимых для его функционирования. Под аппаратными средствами подразумевается определенный набор структурных элементов и способ их физического сопряжения. Программные средства включают в себя набор программируемых элементов структуры (регистров), позволяющих конфигурировать аппаратные средства под выполнение определенной задачи и системы команд, с помощью которой микроконтроллер выполняет действия, согласно запрограммированному алгоритму [1,2].

Базовая архитектура микроконтроллера i8051 приведена на рис.3. Она содержит общие для всего семейства МК51 (в дальнейшем обозначение "МК51" будет общим для всех моделей семейства) структурные элементы:

  • ЦП – 8 разрядный центральный процессор, включающий в себя АЛУ (арифметико-логическое устройство), УУС (устройство управления и синхронизации), ПК (программный счетчик);

  • тактовый (задающий) генератор;

  • ПЗУ – постоянное запоминающее устройство (ROM) с минимальным объемом 4 Кбайта;

  • ОЗУ – оперативное запоминающее устройство (RAM) с объемом 128 байт;

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

  • последовательный ввод-вывод - устройство для передачи и приема информации в последовательном коде (последовательный порт);

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

  • УУП – устройств управления прерываниями.

Все элементы структуры связаны между собой системными шинами - линиями связи, организованными между собой по признаку передаваемой информации:

  • ША – шина адреса (16 линий-разрядов А0÷А15);

  • ШД – шина данных (8 линий-разрядов D0÷D7);

  • ШУ - шина управления, предназначенная для передачи от ЦП сигналов управления и синхронизации (на рис.3 не показана).

Шины адреса и данных являются нормированными по формату передаваемой информации. Шина данных является двунаправленной и мультиплексированной. Двунаправленность означает передачу данных по шине в обоих направлениях, мультиплексирование - возможность передачи данных только между двумя элементами структуры в отдельный момент времени, то есть к шине может быть присоединен только один источник информации. Например, данные передаются от ЦП в ОЗУ, затем из порта в ЦП и т.д. Для организации режима мультиплексирования выходы всех источников данных должны иметь так называемое третье Z- состояние. Подключение необходимого в данный момент источника данных осуществляется по сигналам устройства управления.

Система команд МК51 содержит 111 базовых команд с форматом 1, 2 или 3 байта. МК51 имеет [4]:

  • 32 РОН (регистра общего назначения);

  • 128 определяемых пользователем программно-управляемых флагов;

  • набор регистров специальных функций (SFR – Special Function Register).

РОН и определяемые пользователем программно-управляемые флаги расположены в адресном пространстве внутреннего ОЗУ данных объемом 128 байт. Регистры специальных функций располагаются в отдельном пространстве объемом 128 байт.

Необходимо отметить важную особенность обозначения регистров (далее по тексту выделено курсивом). Эти обозначения одновременно используются как символические имена (мнемокоды), которые используются в командах.

Основные функции регистров:

  • А, АСС - регистр аккумулятора. Команды, предназначенные для работы с аккумулятором, используют мнемонику "А", например, MOV A, P2. Мнемоника "АСС" используется, к примеру, при побитовой адресации аккумулятора. Так, символическое имя пятого бита аккумулятора при использовании ассемблера ASM51 будет следующим: АСС. 5;

  • Регистр В. Используется во время операций умножения и деления. Для других инструкций регистр В может рассматриваться как дополнительный сверхоперативный регистр;

  • PSW - регистр состояния программы;

  • SP - указатель стека, 8-битовый регистр, содержимое которого показывает степень заполнения области ОЗУ, организуемой по принципу стека;

  • DPTR - регистр указатель данных, состоит из старшего байта (DPH) и младшего байта (DPL). Содержит 16-битовый адрес при обращении к внешней памяти. Может использоваться как 16 битовый регистр или как два независимых восьмибитовых регистра;

  • Р0, Р1, P2, Р3 – регистры -"защелки" соответственно портов Р0, Р1, P2, Р3;

  • SBUF - буфер последовательного порта, представляет собой два отдельных регистра: буфер передатчика и буфер приемника. Когда данные записываются в SBUF, они поступают в буфер передатчика, причем запись байта в SBUF автоматически инициирует его передачу через последовательный порт. Когда данные читаются из SBUF, они выбираются из буфера приемника;

  • TH0,TL0 и TH1,TL1 - регистры таймера (регистровые пары) образуют 16-битовые счетные регистры соответственно таймера/ счетчика 0 и таймера/счетчика 1;

  • IP, IE, TMOD, TCON, SCON и PCON – регистры управления, содержат биты управления и биты состояния системы прерываний, таймеров/счетчиков, последовательного порта и энергопотребления.

Микроконтроллер при функционировании обеспечивае

  • минимальное время выполнения команд сложения - 1 мкс;

  • аппаратное умножение и деление с минимальным временем выполнения команд умножения/деления - 4 мкс.

Важнейшей и отличительной чертой архитектуры семейства МК51 является то, что АЛУ может наряду с выполнением операций над 8-разрядными типами данных манипулировать одноразрядными данными. Отдельные программно-доступные биты могут быть установлены, сброшены или заменены их дополнением, могут пересылаться, проверяться и использоваться в логических вычислениях. Все эти действия выполняются булевым процессором семейства МК51. Благодаря такому мощному АЛУ набор инструкций микроЭВМ семейства МК51 одинаково хорошо подходит как для применений управления в реальном масштабе времени, так и для алгоритмов с большим объемом данных.

Конструктивно микроконтроллеры 8051 выполнены в виде СБИС и могут размещаться в пластмассовых или металлокерамических корпусах двух типов: DIP-40 или PLCC-44, представленных на рис. 4 (цифры в обозначении корпуса означают количество выводов микросхемы).

а) б)

Рис.4. Типы корпусов для микроконтроллеров 8051:

а - DIP-40; б - PLCC-44

Корпуса DIP-40 предназначены для монтажа на печатную плату в отверстия. В некоторых случаях, например для отладочных работ, их размещают в переходную панель. Корпуса PLCC-44 предназначены для монтажа только в панель. Конструктивные и присоедини-

тельные размеры микросхем приведены в прил.1, назначение выводов микросхемы – в табл.2.1 прил. 2, электрические характеристики - в табл.2.2 прил. 2.

На рис.5 показано условное графическое обозначения микроконтроллера на принципиальных схемах с нумерацией выводов применительно к корпусу DIP-40.

Рис.5. Условное графическое обозначение микроконтроллеров

семейства МК51(MCS51) и назначение выводов

Микросхема имеет несколько групп выводов, связанных с их назначением:

  1. Выводы передачи данных – 4 двунаправленных восьмиразрядных порта Р0,Р1,Р2,Р3, предназначенных для присоединения к внешним устройствам приема и передачи данных.

  2. Выводы обеспечения функционирования микроконтроллера – VCC и VSS (питание микросхемы +5 В), RST (установка контроллера в исходное состояние при включении питания), Х1, Х2 (для присоединения внешнего кварцевого резонатора).

  3. Выводы управления внешней памятью: (External Access) - переключение между внутренней и внешней памятью программ; ALE (Address Lath Enable) - сигнал фиксации адреса внешней памяти); (Programm Store Enable) - стробирующий сигнал чтения данных из внешней памяти данных.

Рис.6. Использование портов Р0 и Р2 в качестве альтернативной

функции интерфейса внешней памяти

Для уменьшения числа физических выводов микросхемы некоторые из них имеют вторую (альтернативную) функцию.

Все выводы порта Р3 имеют альтернативные функции:

  • Р3.0 – вход приемника последовательного порта;

  • Р3.1 – выход передатчика последовательного порта;

  • Р3.2 – вход внешнего сигнала прерывания ;

  • Р3.3 – вход внешнего сигнала прерывания ;

  • Р3.4 – вход счетчика внешних событий Т0;

  • Р3.5 – вход счетчика внешних событий Т1;

  • Р3.6 – стробирующий сигнал записи данных во внешнюю память данных (ВПД);

  • Р3.7 – стробирующий сигнал чтения данных из внешней памяти данных (ВПД).

Как было показано выше, шинная организация структуры микроконтроллера позволяет расширять систему путем подключения дополнительных элементов. В МК51 это возможно за счет передачи сигналов шин адреса и данных через порты Р0 и Р2, что позволяет нарастить объем внешней памяти до 64 Кбайт. Использование портов Р0 и Р2 в качестве альтернативной функции интерфейса внешней памяти показано на рис.6.