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

📄 key.asm

📁 51系列单片机开发:实验课程 显示程序(液晶显示)
💻 ASM
字号:
;	该程序不是标准程序,只是供大家参考实验方法,程序编写得比较冗长,同学们可以看了以后自己写个

	ORG	0000H
	AJMP	START
	ORG	0100H

KEY1	EQU	P3.2
KEY2	EQU	P3.3
DATA1	EQU	40H
DATA2	EQU	41H

START:
	MOV	40H, #8
	MOV	41H, #8
	MOV	R7, 41H
	MOV	R6, 40H
	MOV	R0, #40H
	MOV	R1, #2
        MOV	R2, #0

LOOP:
	CALL 	DISP
	JNB	KEY1, COUNTER1
	JNB	KEY2, DECCOUNTER1
	AJMP	LOOP

COUNTER1:
	JB	KEY1, COUNTER
	CALL	DISP
	AJMP	COUNTER1
COUNTER:
	MOV	R7, 41H
	INC	R7
	CJNE	R7, #10, OVR1
	MOV	R7, #0
	MOV	R6, 40H
	INC	R6
	CJNE	R6, #10, OVR1
	MOV	R6, #0
OVR1:
	MOV	41H, R7
	MOV	40H, R6
	AJMP	LOOP

DECCOUNTER1:
	JB	KEY2, DECCOUNTER
	CALL	DISP
	AJMP	DECCOUNTER1
DECCOUNTER:	
	MOV	R7, 41H
	DEC	R7
	CJNE	R7, #255, OTT1
	MOV	R7, #9
	MOV	R6, 40H
	DEC	R6
	CJNE	R6, #255, OTT1
	MOV	R6, #9
OTT1:
	MOV	41H, R7
	MOV	40H, R6
	AJMP	LOOP

DISP:
	MOV	DPTR, #TABSEG
	MOV	A, @R0
	MOVC	A, @A+DPTR
	CPL	A
	MOV	P0, A
	CALL	OUTS
	MOV	DPTR, #TABBIT
	MOV	A, R2
	MOVC	A, @A+DPTR
	MOV	P0, A
	CALL	OUTB
	CALL	DELAY
	MOV	P0, #0
	CALL	OUTB
	INC	R0
	INC	R2
	DJNZ	R1, QUIT1
	MOV	R0, #40H
	MOV	R1, #2
	MOV	R2, #0
QUIT1:
	RET

OUTS:
	SETB	P1.3
	NOP
	CLR	P1.3
	RET

OUTB:
	SETB	P1.2
	NOP
	CLR	P1.2
	RET

DELAY:
	DJNZ	R4, $
	RET

TABSEG:	
	DB	0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F
 
TABBIT:
	DB	0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01

	END

⌨️ 快捷键说明

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