⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keyscan.asm

📁 4*4键盘
💻 ASM
字号:
	ORG 0000H
        SJMP 0030H
	ORG 0030H
START:	ACALL KEYPRG
	NOP
	SJMP START
	ORG 0200H
KEYPRG:	MOV P1,#0FH		
	MOV A,P1
	ANL A,#0FH
	CJNE A,#0FH,K1
	AJMP NOKEY
K1:	ACALL DL20
	MOV P1,#0FH
	MOV A,P1
	ANL A,#0FH
	CJNE A,#0FH,K2
	AJMP NOKEY
K2:     MOV R7,#00H
	MOV P1,#0EFH		
	MOV A,P1
	ANL A,#0FH
	CJNE A,#0FH,KEYNO	
K3:	MOV R7,#04H
	MOV P1,#0DFH		
	MOV A,P1
	ANL A,#0FH
	CJNE A,#0FH,KEYNO
K4:     MOV R7,#08H
	MOV P1,#0BFH
	MOV A,P1
	ANL A,#0FH
	CJNE A,#0FH,KEYNO
K5:     MOV R7,#0CH
	MOV P1,#7FH
        MOV A,P1
	ANL A,#0FH
	CJNE A,#0FH,KEYNO
	SJMP NOKEY
KEYNO:	JB ACC.0,N1
	MOV A,#0
	ADD A,R7
	AJMP KEYAND
N1:	JB ACC.1,N2
	MOV A,#1
	ADD A,R7
	AJMP KEYAND
N2:	JB ACC.2,N3
	MOV A,#2
	ADD A,R7
	AJMP KEYAND
N3:	MOV A,#3
	ADD A,R7
	AJMP KEYAND
NOKEY:	MOV A,#0FFH
KEYAND:	CPL A
	JZ KEND
	CPL A
	RL A
	MOV DPTR,#KEYGO
	JMP @A+DPTR
KEYGO:	AJMP KEY0
	AJMP KEY1
	AJMP KEY2
	AJMP KEY3
	AJMP KEY4
	AJMP KEY5
	AJMP KEY6
	AJMP KEY7
	AJMP KEY8
	AJMP KEY9
	AJMP KEY10
	AJMP KEY11
	AJMP KEY12
	AJMP KEY13
	AJMP KEY14
	AJMP KEY15
KEND:	NOP
	RET
DL20:	MOV R4,#250
DL1:	MOV R5,#250
	DJNZ R5,$
	DJNZ R4,DL1
	RET

KEY0:	MOV P2,#40H
        MOV P3,#0F0H
	RET
KEY1:	MOV P2,#79H
        MOV P3,#0F0H
	RET
KEY2:	MOV P2,#24H
        MOV P3,#0F0H
	RET
KEY3:	MOV P2,#30H
        MOV P3,#0F0H
	RET
KEY4:	MOV P2,#19H
        MOV P3,#0F0H
	RET
KEY5:	MOV P2,#12H
        MOV P3,#0F0H
	RET
KEY6:	MOV P2,#02H
        MOV P3,#0F0H
	RET
KEY7:	MOV P2,#78H
        MOV P3,#0F0H
	RET
KEY8:	MOV P2,#00H
        MOV P3,#0F0H
	RET
KEY9:	MOV P2,#10H
        MOV P3,#0F0H
	RET
KEY10:	MOV P2,#08H
        MOV P3,#0F0H
	RET
KEY11:	MOV P2,#03H
        MOV P3,#0F0H
	RET
KEY12:	MOV P2,#46H
        MOV P3,#0F0H
	RET
KEY13:	MOV P2,#21H
        MOV P3,#0F0H
	RET
KEY14:	MOV P2,#06H
        MOV P3,#0F0H
	RET
KEY15:	MOV P2,#0EH
        MOV P3,#0F0H
	RET

	END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -