Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Кормилин_2003_Устрой.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
575.98 Кб
Скачать
      1. Регистры специального назначения

К области РПД примыкает область регистров специального назначения, адреса которых расположены в интервале от 128 (80H) до 255 (0FFH). К регистрам специального назначения относятся регистры-защелки портов, регистры таймеров, регистры управления периферийными устройствами, аккумулятор и т.д.

Из распределения адресов области регистров специального назначения (таблица 4.1) видно, что не все адреса заняты. Не используемые адреса физически отсутствуют на кристалле. Чтение по этим адресам возвращает случайные значения, а запись не результативна. Пользователю не рекомендуется производить запись по незанятым адресам, так как эти адреса могут быть задействованы в новых версиях MCS-51.

Таблица 4.1 - Блок регистров специального назначения

Битовая адресация

Обозначение

Наименование

Адрес

+

ACC

Аккумулятор

0E0H

+

B

Регистр-расширитель аккумулятора

0F0H

+

PSW

Слово состояния процессора

0D0H

-

SP

Регистр-указатель стека

81H

-

DPTR

Регистр-указатель данных (старший -DPH)

83H

-

DPTR

Регистр-указатель данных (младший -DPL)

82H

+

P0

Порт 0

80H

+

P1

Порт 1

90H

+

P2

Порт 2

0A0H

+

P3

Порт 3

0B0H

+

IP

Регистр приоритетов

0B8H

+

IE

Регистр маски прерываний

0A8H

-

TMOD

Регистр режима таймера/счетчика

89H

+

TCON

Регистр управления/статуса таймера

88H

-

TH0

Таймер 0 (старший байт)

8CH

-

TL0

Таймер 0 (младший байт)

8AH

-

TH1

Таймер 1 (старший байт)

8DH

-

TL1

Таймер 1 (младший байт)

8BH

+

SCON

Регистр управления приемопередатчиком

98H

-

SBUF

Буфер приемопередатчика

99H

-

PCON

Регистр управления энергопотреблением

87H

Среди SFR есть несколько регистров, допускающих как байтовую, так и битовую адресацию. Двоичные адреса этих регистров оканчиваются на три нуля, т. е. имеют в конце цифру 0 или 8Н. К отдельным битам этих регистров можно обращаться при использовании прямого 8-битового адреса (bit) в диапазоне 128 (80H) - 255(0FFH) (рисунок 4.3).

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

Рассмотрим функции регистров, входящих в блок SFR.

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

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

Указатель стека (SP). 8-разрядный регистр SP увеличивается на 1 (инкрементируется) перед записью информации в память при выполнении операций, связанных со стеком, типа PUSH и CALL. Стек может занимать любое место в РПД. После сброса указателю SP присваивается значение 07Н, означая, что по умолчанию стек начинается с адреса 08Н.

Рисунок 4.3 - Карта адресуемых бит в SFR

Указатель данных (DPTR). Указатель данных состоит из старшего байта (DPH) и младшего (DPL). Предназначен для задания 16-битного адреса в операциях с обращением к внешней памяти ВПД, но может использоваться как рабочий 16-разрядный регистр или как два независимых 8-битных регистра.

Регистры портов (Р0 - Р3). Р0, Р1, Р2 и Р3 являются регистрами-защелками портов 0 - 3.

Регистры таймеров. Регистровые пары (TH0, TL0), (TH1, TL1) - это 16-битные счетные регистры для таймеров/счетчиков 0 и 1. Для управления таймерами используется регистр состояния (TCON) и регистр управления (TMOD).

Регистры последовательного порта. Регистр последовательных данных (SBUF) - в действительности это два раздельных регистра: передающий и принимающий буферные регистры. Для управления и контроля состояниями последовательного порта используется регистр (SCON).

Регистры прерываний. В регистре (IE) находятся биты индивидуального разрешения прерываний. Для управления приоритетами используется регистр (IP).

Регистр управления энергопотреблением (PCON). Управляет скоростью последовательного порта, режимом пониженной мощности и режимом холостого хода.

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

Таблица 4.2 - Регистр PSW

Наиболее «активный» флаг - это флаг переноса C, участвующий в арифметических, логических операциях и сдвигах, некоторых битовых операциях. Флаг переполнения (OV) используется при выполнении арифметических операций со знаковыми числами. Флаг вспомогательного переноса (АС) нужен при десятичной коррекции результата сложения или вычитания.