Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[2]

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

Адреса, по которым расположены эти регистры, приведены в таблице.

Отметим, что регистры занимают только часть 128-байтового адресного пространства. Те ячейки памяти с адресами 80H-0FFH, которые не заняты регистрами, физически отсутствуют, на кристаллах микроконтроллеров семейства 8051 при обращении к ним можно прочитать лишь код команды возврата.

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

•Регистры-защелки SFR параллельных портов P0...P3 - служат для ввода-вывода информации.

•Две регистровые пары с именами TH0, TL0 и TH1, TL1 представляют собой регистры, двух программно-управляемых 16-битных таймеров-счетчиков.

•Режимы таймеров-счетчиков задаются с использованием регистра TMOD, а управление ими осуществляется с помощью регистра TCON.

•Для управления режимами энергопотребления микро-ЭВМ используется регистр PCON.

•Регистры IP и IE управляют работой системы прерываний микро-ЭВМ,

•регистры SBUF и SCON - работой приемопередатчика последовательного порта.

•Регистр-указатель стека SP в микро-ЭВМ рассматриваемого семейства - восьми битный. Он может адресовать любую область внутренней памяти данных. В отличие от микропроцессора КР580ВМ80, у микро-ЭВМ семейства 8051 стек «растет вверх», т.е. перед выполнением команды PUSH или CALL содержимое SP инкрементируется, после чего производится запись информации в стек. Соответственно при извлечении информации из стека регистр SP декрементируется после извлечения информации. В процессе инициализации микро-ЭВМ после сигнала сброса или при включении питающего напряжения в SP заносится код 07Н. Это означает, что первый элемент стека будет располагаться в ячейке памяти с адресом 08Н.

•Регистр-указатель данных DPTR чаще всего используют для фиксации 16-битного адреса в операциях обращения к внешней памяти программ и данных. С точки зрения программиста он может выступать как в виде одного 16-битного регистра, так и в виде двух независимых регистров DPL и

DPH

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

•Регистр В используется как источник и как приемник при операциях умножения и деления, обращение к нему, как к регистру SFR, производится аналогично аккумулятору.

•При выполнении ряда команд в арифметико-логическом устройстве (АЛУ) формируются признаки операций - флаги, которые фиксируются в регистре PSW.

3.1.5.Регистр флагов (PSW).

Символ

P

OV

RS0 -RS1

F0

АС

C

Позиция

PSW.0

PSW.1

PSW.2

PSW.3 -PSW.4

PSW.5

PSW.6

PSW.7

Имя и назначение

Флаг приоритета. Устанавливается и сбрасывается аппаратурно в каждом цикле команды и фиксирует нечетное/четное число единичных бит в аккумуляторе

Не используется

Флаг переполнения. Устанавливается и сбрасывается аппаратурно при выполнении арифметических операций

Биты выбора используемого банка регистров. Могут быть изменены программным путем

RS0

RS1

Банк

Границы адресов ОЗУ

0

0

0

00H - 07H

1

0

1

08H - 0FH

0

1

2

10H - 17H

1

1

3

18H-1FH

Флаг пользователя. Может быть установлен, сброшен или проверен программой

пользователя

Флаг вспомогательного переноса. Устанавливается и сбрасывается только аппаратными средствами при выполнении команд сложения и вычитания и сигнализирует о переносе или заеме в бите 3 аккумулятора

Флаг переноса. Устанавливается и сбрасывается как аппаратурно, так и программным путем

Таблица.4. Перечень флагов, их символические имена и условия формирования


Наиболее "активным" флагом PSW является флаг переноса, который принимает участие и модифицируется в процессе выполнения множества операций, включая сложение, вычитание и сдвиги. Кроме того, флаг переноса (C) выполняет функции "булева аккумулятора" в командах, манипулирующих с битами. Флаг переполнения (OV) фиксирует арифметическое переполнение при операциях над целыми числами со знаком и делает возможным использование арифметики в дополнительных кодах. ALU не управляет флагами селекции банка регистров (RS0, RS1), их значение полностью определяется прикладной программой и используется для выбора одного из четырёх регистровых банков.

В микропроцессорах, архитектура которых опирается на аккумулятор, большинство команд работают с ним, используя неявную адресацию. В Intel 8051 дело обстоит иначе. Хотя процессор имеет в своей основе аккумулятор, он может выполнять множество команд и без его участия. Например, данные могут быть переданы из любой ячейки RDM в любой регистр, любой регистр может быть загружен непосредственным операндом и т.д. Многие логические операции могут быть выполнены без участия аккумулятора. Кроме того, переменные могут быть инкрементированы, декрементированы и проверены без использования аккумулятора. Флаги и управляющие биты могут быть проверены и изменены аналогично.

3.1.6.Устройство управления и синхронизации.

Кварцевый резонатор, подключаемый к внешним выводам микроконтроллера, управляет работой внутреннего генератора, который в свою очередь формирует сигналы синхронизации. Устройство управления (CU) на основе сигналов синхронизации формирует машинный цикл фиксированной длительности, равной 12 периодам резонатора. Большинство команд микроконтроллера выполняется за один машинный цикл. Некоторые команды, оперирующие с 2-байтными словами или связанные с обращением к внешней памяти, выполняются за два машинных цикла. Только команды деления и умножения требуют четырех машинных циклов. На основе этих особенностей работы устройства управления производится расчёт времени исполнения прикладных программ.

На схеме микроконтроллера к устройству управления примыкает регистр команд (IR). В его функцию входит хранение кода выполняемой команды.

Входные и выходные сигналы устройства управления и синхронизации:

•PSEN - разрешение программной памяти,

•ALE - выходной сигнал разрешения фиксации адреса,

•PROG - сигнал программирования,

•EA - блокировка работы с внутренней памятью,

•VPP - напряжение программирования,

•RST - сигнал общего сброса,

•VPD - вывод резервного питания памяти от внешнего источника,

•XTAL - входы подключения кварцевого резонатора.

3.2.Организация портов ввода вывода микроконтроллера 8051. 3.2.1.Общие сведения.

•Количество портов - 4. Название - P0...P3, они адресуются как регистры специальных функций.

•Разрядность - 8 с возможностью побитной адресации разрядов.

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

3.2.2.Альтернативные функции.

Из-за ограниченного количества выводов корпуса ИМС микроконтроллера, большинство выводов используется для выполнения двух функций - в качестве линий портов и для альтернативных функций

•Порты P0 и Р2используются при обращении к внешней памяти. При этом на выходах P0 младший байт адреса внешней памяти мультиплексируется с вводимым/выводимым байтом. Выходы Р2 содержат старший байт адреса внешней памяти, если адрес 16-разрядный. При использовании восьмиразрядного адреса портом Р2 можно пользоваться для ввода-выввода информации обычным образом. При обращении к внешней памяти в P0 автоматически заносятся 1 во все биты. Информация в Р2 при этом остается неизменной.

•Порт P3 помимо обычного ввода и вывода информации используется для формирования и приема специальных управляющих и информационных сигналов. Разряды порта (все или частично) при этом могут выполнять следующие альтернативные функции:

Альтернативные функции могут быть активированы только в том случае, если в соответствующие биты порта P3 предварительно занесены 1. Неиспользуемые альтернативным образом разряды могут работать как обычно.


Вывод порта

РЗ.0

Р3.1 РЗ.2 Р3.3

РЗ.4

РЗ.5

РЗ.6

РЗ.7

Альтернативная функция

RXD - вход последовательного порта TXD - выход последовательного порта INT0 - внешнее прерывание 0 INT1 - внешнее прерывание 1 Т0 - вход таймера-счетчика 0 Т1 - вход таймера-счетчика 1 WR - строб записи во внешнюю память данных RD - строб чтения из внешней памяти данных

3.2.3.Устройство портов.

Каждый из портов содержит регистр-защелку (SFR РО - SFR РЗ), выходную цепь и входной буфер.

I ш

If

ГУ

kzb

1

Рис.3.Порт P0

Рис.5.Порт P2



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23]