📄 高级键盘检测.asm
字号:
QZ: MOV P0,#0
LCALL SEL8
MOV P1,#0FFH
LCALL DELAY
MOV A,P1
LCALL SEL7
CPL A
MOV R0,A
JZ QZ
KEY1: CJNE A,#01H,KEY2
CALL PRE1
KEY2: CJNE A,#02H,KEY3
CALL PRE2
KEY3: CJNE A,#04H,KEY4
CALL PRE3
KEY4: CJNE A,#08,QZ1
CALL PRE4
QZ1: CLR P2.3
LCALL DELAY
CPL P2.3
LCALL DELAY
DJNZ R0,QZ1
AJMP QZ
SEL7: CLR P2.7
SETB P2.6
SETB P2.5
RET
SEL8: SETB P2.7
SETB P2.6
SETB P2.5
RET
DELAY: MOV R6,#200 ;延时100MS
DEL: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,DEL
RET
PRE1: SETB P2.5
CLR P2.6
CLR P2.7
MOV P0,#0CH
LCALL DELAY
LCALL DELAY
RET
PRE2: SETB P2.5
CLR P2.6
CLR P2.7
MOV P0,#0B6H
LCALL DELAY
LCALL DELAY
RET
PRE3: SETB P2.5
CLR P2.6
CLR P2.7
MOV P0,#09EH
LCALL DELAY
LCALL DELAY
RET
PRE4: SETB P2.5
CLR P2.6
CLR P2.7
MOV P0,#0CCH
LCALL DELAY
LCALL DELAY
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -