51单片机一位数码管汇编程序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/C1033177205/article/details/47128987

51单片机一位数码管汇编程序

程序:

;数码管从0-9显示

		ORG		0000H
		AJMP	MAIN
		ORG		0030H
			
MAIN:	
		MOV	R4,	#00H	;记录码表的值
		MOV	DPTR,	#TABLE	;把地址送DPTR
		
STRAT:	MOV		A,	R4	
		MOVC	A,	@A+DPTR		;取码
		MOV	P2,	A		;显示
		INC	R4			;自增,取下个值做准备
		CALL	DELAY			;调用
		CJNE	R4,	#16,	STRAT	;判断是否显示完16个数值
		AJMP	MAIN

DELAY:	
	MOV	R6,	#1
DELAY4:	MOV	R1,	#10
DELAY3:	MOV	R2,	#100
DEALY1: MOV	R3,	#250
DEALY2: NOP
		NOP
		DJNZ	R3,DEALY2
		DJNZ	R2, DEALY1
		DJNZ	R1, DELAY3
		DJNZ	R6, DELAY4
		RET
		
;码表
TABLE:	DB<span style="white-space:pre">	</span>0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e

END

仿真图:


程序截图:


猜你喜欢

转载自blog.csdn.net/C1033177205/article/details/47128987