Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КС-ZAO / Лекции ЦЭВМруский вариант11.doc
Скачиваний:
188
Добавлен:
07.02.2016
Размер:
15.82 Mб
Скачать

Однокристальные эвм §7.Описание микроконтроллеров 8051, 8052 и 80c51 §7.1 Вступление

В данном документе представлено полное описание микроконтроллеров семейства MSC-51. Далее будут рассмотрены:

  • порты и их функционирование в режимах портов и в качестве шин адреса/данных (для портов 0 и 2)

  • таймер/счетчик

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

  • система прерываний

  • сброс

  • режимы энергосбережения в устройствах CHMOS

  • СППЗУ (стираемая перепрограммируемая ПЗУ) версии 8051AH, 8052AH и80C51BH

Список рассматриваемых устройств приведен в таблице 7.1. В дальнейшем, для удобства, будем ссылаться на все устройства как на 8051 и 8052, кроме случаев, когда конкретное устройство будет указано специально. Под 8051 будем подразумевать 8051AH, 80C51BH и их версии без ПЗУ и с СППЗУ. Под 8052 будем подразумевать 8052AH, 8032AH и 8752BH.

На рисунке 7.1 приведена функциональная схема микроконтроллеров 8051 и 8052.

Таблица 7.1

Название

Устройства

Версия без ПЗУ

Версия с СППЗУ

ПЗУ

(байт)

ОЗУ

(байт)

16-разрядные

таймеры

Тип структуры

8051AH

8052AH

80C51BH

8031AH

8032AH

80C31BH

8751H, 8751BH

8752BH

87C51

4K

8K

4K

128

256

128

2

3

2

HMOS

HMOS

CHMOS

§7.2Специальные функциональные регистры

СФР (специальный функциональный регистр) – это область внутренней память микросхемы. Ее карта показана на рис.7.2. СФР заключенные в скобки отсутствуют в микросхемах 8051.

Порт 0

P0.0-P0.7 P2.0-P2.7

Порт 2

ОЗУ

ПЗУ

Регистр

Р0

Регистр

Р2

В

ACC

Указатель

стека

(stack pointer)

АЛУ

Регистр адреса программы

TMP1

TMP2

Буфер

PCON SCON TMOD TCON

T2CON TH0 TL0 TH1

TL1 TH2 TL2 RCAP2H

RCAP2L SBUF IE IP

Счетчик команд

РС

PSW

Программный счетчик

DPTR

Timing

and

Control

PSEN

ALE

EA

Регистр

Р1

Порт 1

RST

Регистр

Р3

OSC

Порт 3

Р1.0-Р1.7 Р3.0-Р3.7

Рисунок 7.1. Архитектура MSC-51

8 байт

F8

FF

F0

B

F7

E8

EF

E0

ACC

E7

D8

DF

D0

PSW

D7

C8

(T2CON)

(RCAP2L)

(RCAP2H)

(TL2)

(TH2)

CF

C0

C7

B8

IP

BF

B0

P3

B7

A8

IE

AF

A0

P2

A7

98

SCON

SBUF

9F

90

P1

97

88

TCON

TMOD

TL0

TL1

TH0

TH1

8F

80

P0

SP

DPL

DPH

PCON

87

Рисунок 7.2. Карта СФР

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

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

Основные СФР перечислены ниже.

АККУМУЛЯТОР

ACC – регистр аккумулятора. В мнемонических инструкциях обозначается как А.

РЕГИСТР В

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

СЛОВО СОСТОЯНИЯ ПРОГРАММЫ

PSW (Program Status Word) – слово состояния программы – содержит информацию о ходе выполнения программы (см. рис. 3).

УКАЗАТЕЛЬ СТЕКА

Регистр SP (Stack Pointer – указатель стека) – 8-ми разрядный регистр, содержащий указатель на вершину стека. Его значение увеличивается перед добавлением данных в стек (во время выполнения командPUSH иCALL). Тогда как сам стек может находится в произвольной области внутренней памяти, указатель стека при сбросе инициализируется значением 07Н, т.е. стек начинается с адреса 08Н.

УКАЗАТЕЛЬ ДАННЫХ

Указатель данных (DPTR) состоит из старшего (DPH) и младшего байта (DPL). Его функция – содержать 16-ти разрядный адрес. Им можно пользоваться как одним 16-ти разрядным регистром, или как 2-мя 8-ми разрядными.

ПОРТЫ (С 0 по 3)

P0, P1, P2 иP3 – СФР-защелки портов 0, 1, 2 и 3 соответственно.

ПОСЛЕДОВАТЕЛЬНЫЙ БУФЕР ДАННЫХ

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

РЕГИСТРЫ ТАЙМЕРА

Регистровые пары (TH0, TL0), (TH1, TL1) и(TH2, TL2) являются 16-ти разрядными регистрами-счетчиками для таймера/счетчика 0, 1 и 2 соответственно.

Р

CY

AC

F0

RS1

RS0

OV

-

P

Символ

Позиция

Значение

CY

AC

F0

RS1

RS0

OV

-

P

PSW.7

PSW.6

PSW.5

PSW.4

PSW.3

PSW.2

PSW.1

PSW.0

Флаг переноса.

Вспомагательный флаг переноса. (для двоично-десятичных операций).

Флаг 0. (доступен пользователю для общих целей).

Банк регистра, выбирается управляющими битами 1&0.Устанавливается/снимается программно для определения банка регистра (см. замечание).

Флаг переполнения.

Определяемый пользователем флаг.

Флаг четности. Устанавливается/снимается аппаратно.

Замечание:

Содержимое RS1, RS0позволяет определять следующие банки регистра:

0.0 – банк 0 (00Н-07Н)

0.1 – банк 1 (08Н-0FH)

1.0– банк 2 (10Н-17Н)

1.1 – банк 3 (18H-1FH)

ЕГИСТРЫ ЗАХВАТА

Регистровая пара (RCAP2H, RCAP2L) используется для “режима захвата” таймера 2. В этом режиме, при подаче сигнала на вход T2EX микросхемы 8052, содержимое регистров таймераTH2 иTL2 копируется в регистрыRCAP2H иRCAP2L соответственно. Таймер 2 также имеет 16-ти разрядный режим авто-загрузки. В этом случае в регистрахRCAP2H иRCAP2L хранится атозагружаемое значение таймера. Более подробно об особенностях таймера 2 будет рассказано ниже.

РЕГИСТРЫ УПРАВЛЕНИЯ

СФР IP, IE, TMOD, TCON, T2CON, SCON иPCON содержат управляющую информацию для системы прерываний, таймера/счетчика и последовательного порта. Они будут описаны в следующих разделах.

Рисунок 7.3. Регистр PSW.

Рисунок 7.4. Регистры портов и буферы ввода-вывода 8051

Соседние файлы в папке КС-ZAO