51 botones independientes de programación en lenguaje ensamblador del microcontrolador
Cuatro botones, definidos de la siguiente manera:
TECLA 1 BIT P3.0
TECLA 2 BIT P3.1
TECLA 3 BIT P3.2
CLAVE4 BIT P3.3
Manejador de claves:
------------------- - ---------------
READ_KEY:
JB KEY1, K2
RETRASO DE LLAMADA
JB TECLA1, K2
JNB TECLA1, $
PUSH ACC
INC 75H
MOV A, 75H
CJNE A, #10, ZINT01
MOV 75H, #0
ZINT01:
POP ACC
JMP K_EXIT
p>;-------------
K2: JB TECLA2, K3
RETARDO DE LLAMADA
JB TECLA2 , K3
JNB KEY2, $
PUSH ACC
INC 76H
MOV A, 76H
CJNE A, #10, ZINT01
MOV 76H, #0
ZINT01:
POP ACC
JMP K_EXIT p>
;---------------
K3: JB TECLA3, K4
RETARDO DE LLAMADA
JB TECLA3, K4
JNB KEY3, $
PUSH ACC
DEC 75H
MOV A, 75H
CJNE A , #255, ZINT03
MOV 75H, #9
ZINT03:
POP ACC
JMP K_EXIT
;--------------
K4: JB TECLA4, K_EXIT
RETRASO DE LLAMADA
JB TECLA4, K_EXIT
JNB KEY4,$
PUSH ACC
DEC 76H
MOV A, 76H
CJNE A,# 255, ZINT04
MOV 76H, #9
ZINT04:
POP ACC
K_EXIT:
RET
;---------------
RETRASO
:
DJNZ R7, $
DJNZ R7, $
RET
-----------; --------------------------