Входные сигналы Х1, Х2 поступают на вход порта РА ППА (см. рис. 3.11). Для временного хранения переменных в программе выделим в ОЗУ массив ячеек с начальным символическим адресом DATA_Х. Для хранения значений будем использовать массив с начальным адресом DATA_Y.
; ISR3 – подпрограмма обработки запроса прерывания INT3 |
|||
DATA_Х |
EQU 0800H |
||
DATA_Y |
EQU 0810H |
||
ISR3: |
XRA A |
||
OUT PC |
|||
OUT OPORT1 |
|||
OUT OPORT2 |
|||
OUT OPORT3 |
|||
OUT OPORT4 |
|||
OUT OPORT5 |
|||
; Ввод и обработка сигналов X1, X2 |
|||
LXI H, DATA_Х |
|||
IN PA |
|||
MOV C, A |
|||
MOV M, A |
; |
Запомнить X1 и X2 |
|
ANI 0000 0001B |
; |
Выделить разряд D0 |
|
INX H |
|||
MOV M, A |
; |
Запомнить X1 |
|
MOV A, C |
|||
RRC |
|||
ANI 0000 0001B |
|||
INX H |
|||
MOV M, A |
; |
Запомнить X2 |
|
DCX H |
|||
ORA M |
; |
(A)=X1X2 |
|
CMA |
(A)= |
||
MOV B, A |
|||
MOV A, M |
; |
(A)=X1 |
|
CMA |
; |
(A)= |
|
ANA B |
; |
(A)=f(X1, X2)=Y1 |
|
LXI H, DATA_Y |
|||
MOV M, A |
; |
Запомнить Y1 |
|
JZ EXIT |
; |
Идти на метку EXIT, если Y1=0 |
|
; Формирование импульса длительностью t1 |
|||
FORM_Y1: |
.......................... |
Схема формирования импульса Y1 приведена на рис. 3.13. В ней использован счетчик СТ2 1-го таймера ПТ_1, работающий в режиме 0 (программируемая задержка). Для формирования задержки, например, 30 мкс при F2ТТЛ=2 МГц (период Т=0,5 мкс) в СТ2 нужно загрузить число
.
Управляющее слово для СТ2: счет двоичный, режим 0, загрузить только младший байт – 10010000В=90Н.
FORM_Y1: |
MVI A, 90H |
||
OUT РУС53_1 |
; |
Загрузить управляющее слово |
|
MVI A, 3СH |
|||
OUT CT2_1 |
; |
Загрузить N2 |
|
MVI A, 01H |
|||
OUT РУС55 |
; |
Выдать U0=1 |
Примечания:
1. В программе для управления выходами порта РС ППА используется управляющее слово установки сброса битов, с помощью которого можно выводить 1 или 0 в любой разряд РС независимо от других разрядов. Этой возможностью обладает только порт РС.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.