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

📄 switch.asm

📁 能显示时间
💻 ASM
字号:
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP TIMER2
ORG 0030H
MAIN:
	MOV SP,#70H
	MOV R0,#40H
	MOV @R0,#3FH
	INC R0
	MOV @R0,#06H
	INC R0
	MOV @R0,#5BH
	INC R0
	MOV @R0,#4FH
	INC R0
	MOV @R0,#66H
	INC R0
	MOV @R0,#6DH
	INC R0
	MOV @R0,#7DH
	INC R0
	MOV @R0,#07H
	INC R0
	MOV @R0,#7FH
	INC R0
	MOV @R0,#6FH
	MOV 38H,#01H
	MOV 39H,#03H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	MOV TMOD,#01H
	SETB ET0
	SETB EA
	MOV TH0,#0E6H
	MOV TL0,#00H
	SETB TR0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
JMAIN:	
	MOV R2,#07FH
WTEMP:	MOV R1,#0FFH
TEMP:	DJNZ R1,TEMP
	DJNZ R2,WTEMP
	ACALL KS1	;调用查键子程序
	JNZ DSHAKE
	AJMP JMAIN

	;消抖子程序
DSHAKE:	ACALL DELAY	;调用延时子程序	
	ACALL KS1
	JNZ SCAN
	AJMP JMAIN

;扫描查键
SCAN:	MOV R2,#01H	;将第0行置一
	MOV R4,#00H	;从第0号开始检查
SCAN1:	MOV DPTR,#8000H
	MOV A,R2
	MOVX @DPTR,A
	MOVX A,@DPTR
	JNB ACC.0,LONE
	MOV A,#00H
	AJMP LKP
LONE:	JNB ACC.1,LTWO
	MOV A,#01H
	AJMP LKP
LTWO:	JNB ACC.2,LTHR
	MOV A,#02H
	AJMP LKP
LTHR:	JNB ACC.3,NEXT
	MOV A,#03H
LKP:	ADD A,R4
	PUSH ACC
SCAN2:	ACALL KS1
	JNZ SCAN2
	POP ACC
	AJMP SCANED
NEXT:	INC R4
	INC R4
	INC R4
	INC R4
	MOV A,R2
	JB ACC.3,JMAIN
	RL A
	MOV R2,A
	AJMP SCAN1
SCANED:	MOV 4AH,A
	MOV A,4AH
	CLR CY
	SUBB A,#0EH
	JNZ JMAIN
	MOV A,39H
	INC A
	MOV 39H,A
	AJMP JMAIN




TIMER2:	MOV TH0,#0E6H
	MOV TL0,#00H
	ACALL DPLAY
	RETI
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DPLAY:	MOV A,38H
	MOV DPTR,#8000H
	MOVX @DPTR,A
	MOV A,39H
	ADD A,#40H
	MOV R0,A
	MOV A,@R0
	MOV DPTR,#9000H
	MOVX @DPTR,A
	RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


KS1:	MOV DPTR,#8000H
	MOV A,#0FFH
	MOVX @DPTR,A
	MOVX A,@DPTR
	ANL A,#0FH
	RET

DELAY:	MOV R2,#18H
DELAY2:	MOV R1,#0FFH
DELAY3:	DJNZ R1,DELAY3
	DJNZ R2,DELAY2
	RET




END

⌨️ 快捷键说明

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