- •1.Организация микроконтроллера мк1816
- •1.1.Общие сведения о семействе микроконтролеров к1816.
- •2.Арифметическо-логическое устройство (алу) микроконтроллера мк1816
- •3.Память микроконтроллера мк1816
- •3.1.Память программ (или - память команд, пк)
- •3.2.Память данных (или - оперативная память, озу)
- •4.Организация ввода – вывода в микроконтроллере мк1816
- •4.1.Порты (или каналы) ввода - вывода р1 и р2.
- •4.2.Порт ввода - вывода bus (или db).
- •5.Управление работой микроконтроллера мк1816
- •5.1.Синхронизация микроконтроллера.
- •5.2.Системный сброс.
- •5.3.Пошаговый режим работы.
- •6.Варианты структур микроконтроллерных систем(мкс) на основе мк1816
- •6.1.Мк-система с расширенной памятью программ.
- •6.2.Мк-система с расширенной памятью данных.
- •6.3.Мк-система с расширенным вводом-выводом.
- •7.Система команд микроконтроллера мк1816
- •7.1.Команды пересылки и обмена
- •7.2.Команды арифметических и логических операций (в том числе и операций над признаками)
- •7.2.1.Общие сведения.
- •7.2.2.Команды группы арифметических операций
- •7.2.3.Команды группы логических операций:
- •Xrl a,Rr - Исключающее или аккумулятора с маской в регистре
- •Xrl a,#d - Исключающее или аккумулятора с непосредственным операндом
- •Xrl a,@Rr - Исключающее или аккумулятора и маской в ячейке памяти
- •7.3.Команды ввода – вывода
- •7.4.Команды передачи управления (в том числе и операций с подпрограммами)
- •7.5.Команды операций с таймером
- •7.6.Команды управления режимом работы мк
7.6.Команды управления режимом работы мк
Команды управления режимом работы МК разрешают или запрещают обслуживание прерываний, определяют рабочий банк регистров и блок памяти программ.
Наличие двух банков регистров позволяет при вызоде подпрограмм, обработке прерываний эффективно использовать второй банк регистров в качестве рабочего, сохраняя параметры вычислительного процесса не в стеке, а в исходном банке регистров. При программировании процедур обработки прерывания можно переключать или не переключать банки регистров. В том случае, если банки регистров переключаются, возврат к исходному банку регистров будет выполнен автоматически, если подпрограмма обработки прерывания оканчивается командой возврата с восстановлением ССП (RETR).
Специальной командой ENT0 на вывод Т0 разрешается передача синхронизирующего сигнала с частотой опорного синхросигнала, поделенной на 3. Выдача этого сигнала может быть отключена только сигналом общего сброса. Синхросигнал на выходе Т0 используется или для инициализации системы или для общей синхронизации внешних устройств, согласованных с МК по частоте работы.
ENI - Разрешение прерывания
Появление сигнала 0 на входе ЗПР* инициирует процедуру обработки запроса прерывания.
DISI - Запрет прерывания
"001'0101", "15"
Появление сигнала 0 на входе ЗПР* игнорируется.
SEL RB0 - Выбор банка регистров 0
"1100'0101", "C5"
(BS) <-- 0
Признак селектора банка регистров в ССП устанавливается в состояние 0. Доступны регистры с адресами 0 ÷ 7.
SEL RB1 - Выбор банка регистров 1
"1100'0101", "C5"
(BS) <-- 1
Признак селектора банка регистров в ССП устанавливается в состояние 1. При этом ссылки в программе направляются на регистры с адресами 24 ÷ 31.
SEL MB0 - Выбор блока памяти 0
"1110'0101", "E5"
(DBF) <-- 0
Триггер выбора блока памяти устанавливается в нуль. Разряд 11 счетчика команд будет установлен в нуль по первой команде передачи управления. Все адреса находятся в диапазоне 0 ÷ 2047.
SEL MB1 - Выбор блока памяти 1
"1111'0101", "F5"
(DBF) <-- 1
Триггер выбора блока памяти устанавливается в 1. Разряд 11 счетчика команд будет установлен в 1 по первой команде передачи управления. Все адреса находятся в диапазоне 2048 ÷ 4095.
ENT0 CLK - Разрешение выдачи сигнала синхронизации
"0111'0101", "75"
На вывод Т0 передается синхронизирующий сигнал, частота которого в 3 раза меньше частоты опорного синхросигнала.
NOP - Нет операции
"0000'0000", "00"
Команда используется для точной подстройки временных задержек. Выполняется за один машинный цикл.
Шестнадцатеричные коды команд МК 1816, оперирующих с регистрами, представлены в следующей таблице.
Команда |
R0 |
R1 |
R2 |
R3 |
R4 |
R5 |
R6 |
R7 |
MOV A,R |
F8 |
F9 |
FA |
FB |
FC |
FD |
FE |
FF |
MOV R,A |
A8 |
A9 |
AA |
AB |
AC |
AD |
AE |
AF |
XCH A,R |
28 |
29 |
2A |
2B |
2C |
2D |
2E |
2F |
MOV R,#d |
B8 |
B9 |
BA |
BB |
BC |
BD |
BE |
BF |
INC R |
18 |
19 |
1A |
1B |
1C |
1D |
1E |
1F |
DEC R |
C8 |
C9 |
CA |
CB |
CC |
CD |
CE |
CF |
DJNZ R |
E8 |
E9 |
EA |
EB |
EC |
ED |
EE |
EF |
ADD A,R |
68 |
69 |
6A |
6B |
6C |
6D |
6E |
6F |
ADDC A,R |
78 |
79 |
7A |
7B |
7C |
7D |
7E |
7F |
ANL A,R |
58 |
59 |
5A |
5B |
5C |
5D |
5E |
5F |
ORL A,R |
48 |
49 |
4A |
4B |
4C |
4D |
4E |
4F |
XRL A,R |
D8 |
D9 |
DA |
DB |
DC |
DD |
DE |
DF |
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ