- •В.Н. Веприк, в.А. Афанасьев, а.И. Дружинин, а.А. Земсков, а.Р. Исаев, о.В. Малявко микроконтроллеры семейства mcs-51
- •Введение.
- •Система обозначений компонентов фирмы intel и функциональный состав семейства mcs-51
- •2. Основные характеристики базовой модели семейства микроконтроллеров mcs-51.
- •2.1. Синхронизация микроконтроллера.
- •2.2. Организация таймеров/счетчиков.
- •Организация прерываний.
- •Организация последовательного интерфейса.
- •2.5. Система команд семейства mcs-51.
- •2.5.1. Команды пересылки данных.
- •Команда обработки данных.
- •3. Учебный микропроцессорный контроллер умпк-51
- •3.1. ОписаниеУмпк-51
- •3.2. Порядок работы с умпк-51.
- •3.2.1. Режим просмотра и изменения содержимого внешней памяти программ.
- •3.2.2. Вывод на дисплей содержимого программного счетчика.
- •3.2.3. Просмотр и изменение содержимого внутренней памяти данных.
- •3.2.4. Просмотр и изменение содержимого битов битового процессора.
- •3.2.5. Просмотр и изменение содержимого внутренних регистров оэвм.
- •Запуск программы пользователя в автоматическом или пошаговом режиме.
- •3.2.7. Аналоговый вывод.
- •3.2.9. Организация обмена с инструментальной эвм.
- •3.3. Подсистема аналогового вывода умпк-51.
- •3.4. Подсистема аналогового ввода умпк-51.
- •Через последовательный порт.
- •3.5.1. Инициализация уапп и таймера/счетчика 1.
- •Прием/передача на основе обработки прерываний уапп.
- •4. Темы лабораторных работ и варианты заданий Лабораторная работа №1
- •Лабораторная работа №2
- •Лабораторная работа №3
- •Порядок выполнения работ
- •5. Подпрограммы, рекомендуемые к использованию в лабораторных работах
- •Машинные команды оэвм 1816ве51 (по группам операций) Арифметические операции.
- •Логические операции
- •Команды вызова подпрограмм Команды безусловных и возврата переходов
- •Команды условных переходов.
- •Команды обработки отдельных бит данных.
- •Команды пересылок данных.
- •Основные характеристики микроконтроллеров mcs 51 / mcs 251
- •Список литературы
Порядок выполнения работ
Подготовить контроллеры УМПК-51 к соответствующей лабораторной работе.
Ввести и отладить подготовленные тексты программ.
Оформить индивидуальный отчет, включающий необходимые иллюстрационные материалы (функциональные схемы исследуемых подсистем, блок-схемы алгоритмов разработанных программ, временные диаграммы и т.п.) и листинги отлаженных программ.
5. Подпрограммы, рекомендуемые к использованию в лабораторных работах
Подготовка индикаторного ОЗУ КР580ВВ79 к вводу информации с нулевого адреса:
ENER: |
MOV |
P2, #84H |
;установка адреса регистра управления |
|
MOV |
R0, #01H |
;контроллера 580ВВ79 |
|
MOV |
A, #90H |
;команда ЗАПИСЬ в индикаторное ОЗУ |
|
MOVX |
@R0, A |
;с нулевого адреса |
|
DEC |
R0 |
;установка адреса регистра данных |
|
RET |
|
|
Вывод на дисплей строки символов:
DB: КОНСТАНТЫ "STRING" |
| |||
OUT STRING: |
ACALL |
ENER |
| |
|
MOV |
R6, #06 |
;число знакомест | |
|
POP |
DPH |
;извлечение адреса | |
|
POP |
DPL |
;первой константы | |
M1: |
CLR |
A |
| |
|
MOVC |
A,@A+DPTR |
;вывод на дисплей | |
|
MOVX |
@R0, A |
;очередной константы | |
|
INC |
DPTR |
| |
|
DJNZ |
R6, M1 |
| |
|
CLR |
A |
| |
|
JMP |
@A+DPTR |
;адрес, след. за посл. константой из семейства "DB: STRING" |
Передача байта УАПП с последующей паузой для индикации адреса:
T´D: |
JNB |
TI, $ |
|
CLR |
TI |
|
MOV |
SBUF, A |
|
ACALL |
DELAY |
|
RET |
|
DELAY: |
PUSH |
R1 |
|
MOV |
R0, #00H |
M2: |
MOV |
R1, #00H |
|
DJNZ |
R1, $ |
|
DJNZ |
R0, M2 |
|
RET |
|
Вывод на дисплей текущего адреса ячеек массива данных:
OADR: |
ACALL |
ENER |
|
|
MOV |
A, DPH |
; загрузка старшей пары цифр адреса |
|
ACALL |
OUT TWO-HEX |
;вывод старшей пары на дисплей |
|
MOV |
A, DPL |
;загрузка младшей пары цифр адреса |
|
ACALL |
OUT TWO-HEX |
;вывод младшей пары на дисплей |
|
CLR |
A |
|
|
MOVX |
@R0, A |
;вывод пробела на пятое и шестое |
|
MOVX |
@R0, A |
;знакоместа дисплея |
|
RET |
|
|
Вывод двух шестнадцатеричных цифр на дисплей:
OUT TWO-HEX: |
MOV |
R7, A |
| ||||||||
|
SWAP |
A |
| ||||||||
|
ACALL |
OUT HEX |
;вывод шестнадцатеричной цифры | ||||||||
|
MOV |
A, R7 |
;на дисплей | ||||||||
OUT HEX: |
ANL |
A, #07H |
| ||||||||
|
ADD |
A, #07H |
| ||||||||
|
MOVC |
A, @A+PC |
| ||||||||
|
JNB |
F0(PSW.5), M3 |
;при F0=1 вывод цифры | ||||||||
|
ORL |
A, #80H |
;сопровождается изображением | ||||||||
M3: |
MOVX |
@R0, A |
;запятой (код 80Н) | ||||||||
|
RET |
|
| ||||||||
DB - коды символов |
| ||||||||||
DB: |
3FH(0); |
06H(1); |
5BH(2); |
4FH(3); |
66H(4); |
6DH(5); |
| ||||
|
7DH(6); |
07H(7); |
7FH(8); |
6FH(9); |
77H(A); |
7CH(B); |
| ||||
|
39H(C); |
5EH(D); |
79H(E); |
71H(F); |
|
|
|