Программная модель микроконтроллера
Программная модель включает ресурсы микроконтроллера, которые доступны программисту при создании программ. Прежде всего, к ней относятся ресурсы внутренней памяти программ и данных микроконтроллера и программный счетчик PC.
Чаще всего программист использует регистры специальных функций, регистры общего назначения и программно управляемые флаги, расположенные в адресном пространстве внутреннего ОЗУ памяти данных. Однокристальные ЭВМ семейства Intel 8051 содержат 32 регистра общего назначения, 128 программно управляемых битов (флагов), набор регистров специальных функций.
Каждому регистру специальных функций поставлен в соответствие восьмибитный адрес внутренней памяти программ.
Таблица 2 - Адресация блока регистров специальных функций
Имя регистра | Адрес регистра | Абсолютный битовый адрес | |||||||
D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 | ||
B | F0H | F0 | F1 | F2 | F3 | F4 | F5 | F6 | F7 |
A | E0H | E0 | E1 | E2 | E3 | E4 | E5 | E6 | E7 |
PSW | D0H | D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 |
IP | B8H | B8 | B9 | BA | BB | BC | X | X | X |
P3 | B0H | B0 | B1 | B2 | B3 | B4 | B5 | B6 | B7 |
IE | A8H | A8 | A9 | AA | AB | AC | X | X | AF |
P2 | A0H | A0 | A1 | A2 | A3 | A4 | A5 | A6 | A7 |
SBUF | 99H | X | X | X | X | X | X | X | X |
SCON | 98H | 9A | 9B | 9C | 9D | 9E | 9F | ||
P1 | 90H | ||||||||
TH1 | 8DH | X | X | X | X | X | X | X | X |
TH0 | 8CH | X | X | X | X | X | X | X | X |
TL1 | 8BH | X | X | X | X | X | X | X | X |
TL0 | 8AH | X | X | X | X | X | X | X | X |
TMOD | 89H | X | X | X | X | X | X | X | X |
TCON | 88H | 8A | 8B | 8C | 8D | 8E | 8F | ||
PCON | 87H | X | X | X | X | X | X | X | X |
DPH | 83H | X | X | X | X | X | X | X | X |
DPL | 82H | X | X | X | X | X | X | X | X |
SP | 81H | X | X | X | X | X | X | X | X |
P0 | 80H |
Аккумулятор А (0E0H) - Accumulator- является источником операнда и местом фиксации результата при выполнении арифметических, логических операций и операций передачи данных.
Регистр В (0F0H) - Multiplication Register -регистр расширитель аккумулятора, используется в сочетании с аккумулятором при выполнении операций умножения и деления. В других операциях регистр B является обычным регистром общего назначения.
Регистр слова состояния PSW(0D0H) - Program Status Word - предназначен для фиксации признаков операций - флагов, которые формируются при выполнении ряда команд в арифметико-логическом устройстве.
Регистры-защелки параллельных портов P0-P3 (080Н, 090H, 0A0H, 0B0H) - Port0-Port3 - предназначены для обеспечения обмена информацией микроконтроллера с внешними устройствами, образуя 32 линии ввода/вывода. Помимо обычного ввода/вывода указанные порты могут выполнять ряд альтернативных функций.
Регистр-указатель стека SP (081H) - Stack Pointer - может адресовать любую область внутренней памяти данных. В процессе МК после сигнала сброса или при включении питающего напряжения в SP заносится код 07Н. Это означает, что первый элемент стека будет располагаться в ячейке памяти с адресом 08Н.
Регистр-указатель данных DPTR - Data Pointer - предназначен для хранения 16-разрядного адреса внешней памяти и состоит из двух программно доступных регистров DPH (083H)иDPL (082H), которые могут использоваться в качестве независимых регистров общего назначения. Кроме того, DPTR служит базовым регистром при косвенной адресации в некоторых командах пересылки или перехода.
Таймеры/счетчики Т/С0-Т/С1 - Timer/Counter0-Timer/Counter1 - два программно-управляемых 16-разрядных таймера/счетчика. Они представлены регистровыми парами с именами TH0 (08CH), TL0 (08AH)иTH1 (08DH), TL1 (08BH)которые могут быть программно прочитаны или загружены как в рабочем, так и в выключенном состоянии.
Регистр режимов работы таймеров/счетчиков TMOD (089H) - Timer/Counter Mode Control Register – используется для определения режима работы Т/Сn.
Регистр управления работой таймеров/счетчиков TCON (088H) - Timer/Counter Control Register – осуществляет контроль и управление работой таймеров/счетчиков
Регистр IE (0A8H) - Interrupt Enable Register - используется для разрешения или запрещения прерываний от соответствующих источников.
Регистр IP (0B8H) - Interrupt Priority Control Register - используется для установки уровня приоритета прерывания для каждого из источников прерываний.
Регистр PCON (087H) - Power Control Register - используется для управления режимами энергопотребления микроконтроллера.
Рисунок 5– Программная модель микроконтроллера семейства Intel 8051
Регистр SCON(098H) - Serial Port Control Register - предназначен для контроля и управления последовательным интерфейсом микроконтроллера.
Регистр SBUF (099H) - Serial Data Buffer - обеспечивает программный доступ к регистрам передатчика и приемника последовательного порта микроконтроллера.
Дата добавления: 2015-05-21; просмотров: 1765;