4.8 4.9
нет нет
да 4.10 да 4.11
4.12 4.13
нет
да
4.14
4.15
4.16
H
H
4.17
4.18
ZADER4 4.19
ZADER5 4.20
4.21
да
нет
4.22
4.23
нет
да 4.24
4.25
4.26
да
4.28
нет 4.27
FG
2. Текст программы на языке ассемблера
PORTA EQU 80H ;адрес первого индикатора
PORTB EQU 81H ;адрес второго индикатора
PORTC EQU 82H ;адрес клавиатуры
PORCRL EQU 83H ;адрес порта управления внеш. устройствами
PVS EQU 43528 ;постоянная времени зад. на 1 сек.
PVSD EQU 254 ;постоянная времени защиты от дребезга
KODKL EQU 25 ;код пуска и установки режима 00011001
KODKL1 EQU 26 ;код остановки и установки режима 00011010
;---------------------------------
ORG 800H ;стартовый адрес программы в ОЗУ стенда
;инициализация
LXI SP,970H ;инициализация указателя стека
MVI A,89H ;загрузка управляющего байта внеш. устройств OUT PORCRL ;вывод управляющего байта в порт управления
MVI E,0
;ожидание пуска или смены режима
ASDF: MVI C,PVSD ;загрузка кол. повторов при защите от дребезга
EFJ: IN PORTC ;опрос клавиатуры
ANI KODKL ;проверка нажат ли “пуск” или “уст. режима”
JZ ASDF ;нужная клавиша не нажата
;защита от дребезга при нажатии
ZXC: DCR C ;уменьшаем счетчик повторов для защ. от дребезга
JNZ EFJ ;дребезг еще не окончен
;дребезг при нажатии окончен, сохраняем код нажатой клавиши
IN PORTC ;чтение кода нажатой клавиши
LXI H,KLAV ;занесение в пару h адреса ячейки памяти
MOV M,A ;пересылка кода нажатой клавиши в ячейку памяти
;ожидание отпускания клавиши
OTPSK: MVI C,PVSD ;загрузка кол. повторов при защите от дребезга
QWE: IN PORTC ;опрос клавиатуры
ANA A ;проверка нажата ли клавиша
JNZ OTPSK ;клавиша нажата
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.