📄 矩阵式键盘的识别(二).asm
字号:
ORG 0000H
AJMP main
ORG 0100H
main: MOV P3,#0FH
KEY0: MOV P0,#0FEH ;[11111110]FE,置P0.0低电平扫描P0.4~P0.7键值
JNB P0.4,K0
JNB P0.5,K1
JNB P0.6,K2
JNB P0.7,K3
MOV P0,#0FDH ;[11111101]FD,置P0.1低电平扫描P0.4~P0.7键值
JNB P0.4,K4
JNB P0.5,K5
JNB P0.6,K6
JNB P0.7,K7
MOV P0,#0FBH ;[11111011]FB,置P0.2低电平扫描P0.4~P0.7键值
JNB P0.4,K8
JNB P0.5,K9
JNB P0.6,K10
JNB P0.7,K11
MOV P0,#0F7H ;[11110111]FE,置P0.3低电平扫描P0.4~P0.7键值
JNB P0.4,K12
JNB P0.5,K13
JNB P0.6,K14
JNB P0.7,K15
AJMP KEY0
;键码显示子程序
K0: MOV P3,#1EH ;0
ACALL YSH1S
AJMP KEY0
RET
K1: MOV P3,#2EH ;1
ACALL YSH1S
AJMP KEY0
RET
K2: MOV P3,#4EH ;2
ACALL YSH1S
AJMP KEY0
RET
K3: MOV P3,#8EH ;3
ACALL YSH1S
AJMP KEY0
RET
K4: MOV P3,#1DH ;4
ACALL YSH1S
AJMP KEY0
RET
K5: MOV P3,#2DH ;5
ACALL YSH1S
AJMP KEY0
RET
K6: MOV P3,#4DH ;6
ACALL YSH1S
AJMP KEY0
RET
K7: MOV P3,#8DH ;7
ACALL YSH1S
AJMP KEY0
RET
K8: MOV P3,#1BH ;8
ACALL YSH1S
AJMP KEY0
RET
K9: MOV P3,#2BH ;9
ACALL YSH1S
AJMP KEY0
RET
K10: MOV P3,#4BH ;A
ACALL YSH1S
AJMP KEY0
RET
K11: MOV P3,#8BH ;b
ACALL YSH1S
AJMP KEY0
RET
K12: MOV P3,#17H ;C
ACALL YSH1S
AJMP KEY0
RET
K13: MOV P3,#27H ;d
ACALL YSH1S
AJMP KEY0
RET
K14: MOV P3,#47H ;E
ACALL YSH1S
AJMP KEY0
RET
K15: MOV P3,#87H ;F
ACALL YSH1S
AJMP KEY0
RET
;延时子程序
YSH1S: MOV R3,#05H
LOOP: MOV R4,#0A8H
LOOP1: MOV R5,#08AH
XHD: DJNZ R5,XHD
DJNZ R4,LOOP1
DJNZ R3,LOOP
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -