- •Микропроцессоры в системах автоматического управления.
- •Структура микропроцессора i8080. Принцип работы.
- •Основные понятия системы прерываний. Обработка запросов прерываний i8080.
- •Архитектура микроконтроллера мк-51. Алу, организация памяти и устройства управления. Совмещение адресного пространства памяти данных и программ.
- •5. Архитектура микроконтроллера мк-51. Порты ввода/вывода.
- •6. Архитектура микроконтроллера мк-51. Таймер/счётчик.
- •7. Архитектура микроконтроллера мк-51.Последовательный интерфейс.
- •Система команд
- •4.4.1 Общая характеристика
- •4.4.2 Типы команд
- •4.4.3 Типы операндов
- •4.4.4 Группы команд
- •4.4.5 Oбозначения, используемые при описании команд
- •Система прерываний мк-51.??
- •8. Архитектура микроконтроллера мк-51. Система прерываний.??
- •9. Режимы работы мк-51.
- •Система команд мк-51. Способы адресации в мк-51.
- •Система команд мк-51. Команды передачи данных.
- •Система команд мк-51. Команды арифметических операций.
- •13. Команды логических операций микроконтроллера 8051
- •Система команд мк-51. Команды операций с битами.
- •Система команд мк-51. Команды передачи управления.
- •Программирование на языке Ассемблера. Директивы резервирования памяти.
- •Программирование на языке Ассемблера. Использование подпрограмм – процедур и подпрограмм – функций.
- •5.7.1 Реализация подпрограмм-процедур на языке asm51.
- •5.7.2 Передача переменных-параметров в подпрограмму.
- •5.7.3 Реализация подпрограмм-функций на языке asm51.
- •Организация циклов и ветвлений. Ветвление
- •Программирование на языке Ассемблера. Использование сегментов в языке программирования ассемблер. Разбиение памяти мк на сегменты, абсолютные сегменты памяти, перемещаемые сегменты памяти.
- •5.10.1 Абсолютные сегменты памяти.
- •5.10.2 Перемещаемые сегменты памяти.
- •Архитектура микроконтроллеров семейства mcs-51 gb. Адресация регистров и памяти микроконтроллеров.
- •2.4 Организация памяти.
- •2.4.2 Память данных (озу).
- •2.4.3 Регистры специальных функций.
- •Периферийные устройства микроконтроллеров семейства mcs-51 gb. Последовательный порт с шиной i2c.
- •2.7.3 Режимы работы таймеров-счетчиков.
- •Периферийные устройства микроконтроллеров семейства mcs-51. Программируемая счётная матрица (pca).
- •Периферийные устройства микроконтроллеров семейства mcs-51 gb. Контроллер прерываний (ic).
- •2.10.1 Регистр масок прерывания (ie).
- •2.10.2 Регистр приоритетов прерываний (ip).
- •2.10.3 Выполнение подпрограммы прерывания.
- •Периферийные устройства микроконтроллеров семейства mcs-51 gb. Аналого-цифровой преобразователь (adc). Функциональная схема ацп
- •Числа в двоичном, восьмеричном, шестнадцатеричном и двоично-десятичном коде.
- •Перевод двоичных чисел в восьмеричный и шестнадцатеричный формат и наоборот.
- •Системы счисления. Перевод десятичных чисел в систему с основанием r.
- •Перевод чисел с основанием r в десятичные числа
- •Двоичная арифметика (сложение, умножение, деление двоичных чисел).
- •Вычитание двоичных чисел
- •Логические операции над двоичными числами.
2.4.3 Регистры специальных функций.
К адресному пространству памяти данных примыкает адресное пространство регистров специальных функций SFR (Special Function Register).
Регистры с символическими именами IP, IE, TMOD, TCON, SCON и PCON используются для фиксации и программного изменения управляющих бит и бит состояния схемы прерывания, таймера/счетчика, приемопередатчика последовательного порта и для управления энергопотреблением.
Адрес прямо адресуемых битов может быть записан либо в виде выражения (Название Регистра ).(Разряд).
Адрес байта |
Адреса битов по разрядам |
Имя регистра |
|||||||
Adr |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Name |
F0H |
F7 |
F6 |
F5 |
F4 |
F3 |
F2 |
F1 |
F0 |
B |
... |
. . . |
... |
|||||||
E0H |
E7 |
E6 |
E5 |
E4 |
E3 |
E2 |
E1 |
E0 |
ACC |
... |
. . . |
... |
|||||||
D0H |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
PSW |
... |
. . . |
... |
|||||||
B8H |
- |
- |
- |
BC |
BB |
BA |
B9 |
B8 |
IP |
... |
. . . |
... |
|||||||
B0 |
B7 |
B6 |
B5 |
B4 |
B3 |
B2 |
B1 |
B0 |
P3 |
... |
. . . |
... |
|||||||
A8H |
AF |
- |
- |
AC |
AB |
AA |
A9 |
A8 |
IE |
... |
. . . |
... |
|||||||
A0H |
A7 |
A6 |
A5 |
A4 |
A3 |
A2 |
A1 |
A0 |
P2 |
... |
. . . |
... |
|||||||
98H |
9F |
9E |
9D |
9C |
9B |
9A |
99 |
98 |
SCON |
... |
. . . |
... |
|||||||
90H |
97 |
96 |
95 |
94 |
93 |
92 |
91 |
90 |
P1 |
... |
. . . |
... |
|||||||
88H |
8F |
8E |
8D |
8C |
8B |
8A |
89 |
88 |
TCON |
... |
. . . |
... |
|||||||
80H |
87 |
86 |
85 |
84 |
83 |
82 |
81 |
80 |
P0 |
Таблица.2. Карта адресуемых битов в блоке регистров SFR
Адрес |
Символ |
Наименование |
0E0H |
*АСС |
Аккумулятор (Accumulator) |
0F0H |
*В |
Регистр расширитель аккумулятора (Multiplication Register) |
0D0H |
*PSW |
Слово состояния программы (Program Status Word) |
080Н |
*P0 |
Порт 0 (SFR P0) |
090H |
*Р1 |
Порт 1 (SFR P1) |
0A0H |
*P2 |
Порт 2 (SFR P2) |
0B0H |
*P3 |
Порт 3 (SFR РЗ) |
081H |
SP |
Регистр указатель стека (Stack Pointer) |
083H |
DPH |
Старший байт регистра указателя данных DPTR (Data Pointer High) |
082H |
DPL |
Младший байт регистра указателя данных DPTR (Data Pointer Low) |
08CH |
TH0 |
Старший байт таймера 0 () |
08AH |
TL0 |
Младший байт таймера 0 () |
08DH |
TH1 |
Старший байт таймера 1 () |
08BH |
TL1 |
Младший байт таймера 1 () |
089H |
TMOD |
Регистр режимов таймеров счетчиков (Timer/Counter Mode Control Register) |
088H |
*TCON |
Регистр управления статуса таймеров (Timer/Counter Control Register) |
0B8H |
*IP |
Регистр приоритетов (Interrupt Priority Control Register) |
0A8H |
*IE |
Регистр маски прерывания (Interrupt Enable Register) |
087H |
PCON |
Регистр управления мощностью (Power Control Register) |
098H |
*SCON |
Регистр управления приемопередатчиком (Serial Port Control Register) |
099H |
SBUF |
Буфер приемопередатчика (Serial Data Buffer) |
Таблица.3. Размещение регистров специальных функций
Примечание. Регистры, символ которых отмечен знаком (*), допускают адресацию своих отдельных бит при использовании команд из группы команд операций над битами.
Отметим, что регистры занимают только часть 128-байтового адресного пространства. Те ячейки памяти с адресами 80H-0FFH, которые не заняты регистрами, физически отсутствуют, на кристаллах микроконтроллеров семейства 8051 при обращении к ним можно прочитать лишь код команды возврата.
Регистры специальных функций управляют работой блоков, входящих в микроконтроллер.
Регистры-защелки SFR параллельных портов P0...P3 - служат для ввода-вывода информации.
Две регистровые пары с именами TH0, TL0 и TH1, TL1 представляют собой регистры, двух программно-управляемых 16-битных таймеров-счетчиков.
Режимы таймеров-счетчиков задаются с использованием регистра TMOD, а управление ими осуществляется с помощью регистра TCON.
Для управления режимами энергопотребления микро-ЭВМ используется регистр PCON.
Регистры IP и IE управляют работой системы прерываний микро-ЭВМ,
регистры SBUF и SCON — работой приемопередатчика последовательного порта.
Регистр-указатель стека SP в микро-ЭВМ рассматриваемого семейства — восьми битный. Он может адресовать любую область внутренней памяти данных. У микро-ЭВМ семейства 8051 стек «растет вверх», т.е. перед выполнением команды PUSH или CALL содержимое SP инкрементируется, после чего производится запись информации в стек. Соответственно при извлечении информации из стека регистр SP декрементируется после извлечения информации.
Регистр-указатель данных DPTR чаще всего используют для фиксации 16-битного адреса в операциях обращения к внешней памяти программ и данных. С точки зрения программиста он может выступать как в виде одного 16-битного регистра, так и в виде двух независимых регистров DPL и DPH
Аккумулятор (АСС) является источником операнда и местом фиксации результата при выполнении арифметических, логических операций и ряда операций передачи данных. Кроме того, только с использованием аккумулятора могут быть выполнены операции сдвигов, проверка на нуль, формирование флага паритета и т.п. В распоряжении пользователя имеются 8 регистров общего назначения R0–R7 одного из четырёх возможных банков. При выполнении многих команд в АЛУ формируется ряд признаков операции (флагов), которые фиксируются в регистре PSW.
Регистр В используется как источник и как приемник при операциях умножения и деления, обращение к нему, как к регистру SFR, производится аналогично аккумулятору.
При выполнении ряда команд в арифметико-логическом устройстве (АЛУ) формируются признаки операций — флаги, которые фиксируются в регистре PSW.
