Global Informatics
;подпрограмма обработки прерывания порта Р1
;определяет какая кнопка нажата и в зависимости от этого, согласно
алгоритму,
;производит дальнейший скан клавиатуры для считывания уставок или
фиксирует ;номер датчика для которого надо вывести Tx или вызывает
П/П ошибки ввода ;данных,
;если дважды нажата запятая
;=====================================================_PRER:
USING 2FLAG1,#0dFLAG2,#0,d
;начало сканирования клавиатуры через порт Р1
MOV P1,#01110000bR2,P1
;проверка нажата ли кнопка TEMPR2,#01110001b,NOTEMP
;кнопка TEMP нажата, проверка какая кнопка(номер датчика) нажата
;в соответствии с этим запись в регистры r0-r3 данных об Nh и Nl
чтобы
;потом вызвать П/П вычисления Tx
D1:MOV R2,P1R2,#01111000,NO1R0,@0X47h ;adress high TH byte D1R1,@0X48h ;adress high TL byte D1R2,@0X49h ;adress low TH byte D1R3,@0X50h ;adress low TL byte D1FLAG1,#1dWENT1:CJNE R2,#01110100,NO2R0,@0X51h ;adress high TH byte D2R1,@0X52h ;adress high TL byte D2R2,@0X53h ;adress low TH byte D2R3,@0X54h ;adress low TL byte D2FLAG1,#2dWENT1:CJNE R2,#01110010,NO3R0,@0X55h ;adress high TH byte D3R1,@0X56h ;adress high TL byte D3R2,@0X57h ;adress low TH byte D3R3,@0X58h ;adress low TL byte D3FLAG1,#3dWENT1CJNE R2,#10111000,NO4R0,@0X59h ;adress high TH byte D4R1,@0X60h ;adress high TL byte D4R2,@0X61h ;adress low TH byte D4R3,@0X62h ;adress low TL byte D4FLAG1,#4d:CJNE R2,#10110100,NO5R0,@0X63h ;adress high TH byte D5R1,@0X64h ;adress high TL byte D5R2,@0X65h ;adress low TH byte D5R3,@0X66h ;adress low TL byte D5FLAG1,#5dWENT1: JMP D1
;ожидание пока будет нажата кнопка ENTER
WENT1: MOV P1,#00010000bR2,P1R2,#00010001b,WENT1FLAG1,#0d
CLR KBFENDSKAN
;кнопка TEMP не нажата, следовательно скан нажата-ли кнопка UST
NOTEMP: CLR R0R3,#3d:CLR KBFP1,#10110000bR2,P1R2,@10110001b,NOUST
;кнопка UST нажата, скан клавиатуры на прием первой цифры уставки
;уставка в формате ABC.D(3 цифры целого и 1 цифра остаток)
P1:MOV P1,#01110000bP1,#01111000b,NE1R7,#1dP2,#00110001bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#01110100b,NE2R7,#2dP2,#00110010bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#01110010b,NE3R7,#3dP2,#00110011bP0.7P0.7P2,#11111111bPOPAL:MOV P1,#10110000bP1,#10111000b,NE4R7,#4dP2,#00110100bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#10110100b,NE5R7,#5dP2,#00110101bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#10110010b,NE6R7,6dP2,#00110110bP0.7P0.7P2,#11111111bPOPAL:MOV P1,#11010000bP1,#11011000b,NE7R7,#7dP2,#00110111bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#11010100b,NE8R7,#8dP2,#00111000bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#11010010,NE9R7,#9dP2,#00111001bP0.7P0.7P2,#11111111bPOPAL:MOV P1,#11100000bP1,#11101000b,NE0R7,#0dP2,#00110000bP0.7P0.7P2,#11111111bPOPAL:CJNE P1,#11100100b,NEPR4,#FFh ;ФЛАГ ЗАПЯТОЙP2,#00101110bP0.7P0.7P2,#11111111bPOPAL:JMP P1:DEC R3
;первая цифра уставки введена, ожидание ввода 2-й цифры целого
уставки
;или нажатия кнопки ENT.
;если еще одна цифра уставки введена то ожидание ввода 3-й цифры
целого
;или кнопки ENT.
;нажатие запятой фиксируется флагом-регистром R4, если запятая
нажата то
;ввод цифры определяется как десятичный остаток уставки и далее
окончание ;приема значения уставки.
WAIT:MOV P1,#11100000b
MOV R2,P1R2,#11100001b, WENT2A,FLAG2F2E1FLAG2,#1bE1:MOV FLAG2,#0bENDUST:MOV P1,#01110000bP1,#01111000b,NEE1R5,#1dP2,#00110001bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#01110100b,NEE2R5,#2dP2,#00110010bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#01110010b,NEE3R5,#3dP2,#00110011bP0.7P0.7P2,#11111111bPOPAL2:MOV P1,#10110000bP1,#10111000b,NEE4R5,#4dP2,#00110100bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#10110100b,NEE5R5,#5dP2,#00110101bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#10110010b,NEE6R5,6d
MOV P2,#00110110bP0.7P0.7P2,#11111111bPOPAL2:MOV P1,#11010000bP1,#11011000b,NEE7R5,#7dP2,#00110111bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#11010100b,NEE8R5,#8dP2,#00111000bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#11010010,NEE9R5,#9dP2,#00111001bP0.7P0.7P2,#11111111bPOPAL2:MOV P1,#11100000bP1,#11101000b,NEE0R5,#0dP2,#00110000bP0.7P0.7P2,#11111111bPOPAL2:CJNE P1,#11100100b,NEEPERROR_DPOINR ;вызов П/П вывода ошибки на
Статья в тему
Спектральный анализ аналоговых сигналов и расчет откликов на выходе линейной цепи
Методы математического описания сигналов является базовым курсом в
системе подготовки современного инженера в области радиотехники и
радиоэлектроники. Его целью является изучение фундаментальных закономерностей
связанных с получением сигналов, их передачей по каналам связи, об ...