单片机原理与应用技术(三)———动态数码管显示汇编语言

一、数码管基础知识

1.数码管结构

一般数码管通常由八段LED灯组成,又分成共阳数码管和共阴数码管(如下图所示)。共阴极数码管即为LED阴极连接在一起为公共阴极,共阳极数码光即为LED阳极连接在一起为公共阳极。以共阴极数码管为例,当某个LED阳极通入高电平时,LED灯点亮,相对应的段也就被显示出来,共阳极数码管恰好与之相反。

单片机原理与应用技术(三)———动态数码管显示汇编语言单片机原理与应用技术(三)———动态数码管显示汇编语言 

 2.数码管段码

显示字符 共阴极段码 共阳极段码 显示字符 共阴极段码 共阳极段码
0 3FH C0H b 7CH 83H
1 06H F9H c 39H C6H
2 5BH A4H d 5EH A1H
3 4FH B0H E 79H 86H
4 66H 99H F 71H 8EH
5 6DH 92H P 73H 8CH
6 7DH 82H U 3EH C1H
7 07H F8H T 31H CEH
8 7FH 80H y 6EH 91H
9 6FH 90H H 76H 89H
A 77H 88H L 38H C7H

3.数码管动态显示

       动态扫描显示方式的依据是利用人眼的滞留现象,只要在1秒内一个发光管亮24次以上,每次点亮时间维持2ms以上,则人眼感觉不到闪烁,宏观上仍可看到多位LED同时显示的效果。动态显示可以简化硬件、降低成本、减小功耗。具体实现时通常将所有位的段选线相应的并联在一起,由一个l/O口控制,形成段选线的多路复用。而各位的共阳极和共阴极分别由相应的I/o口控制,实现分时复用。

二、动态数码管显示实例———显示(0-999)

1.电路原理图

单片机原理与应用技术(三)———动态数码管显示汇编语言

 二、执行代码

ORG 	0000H
MAIN:	MOV		DPTR,#LEDTAB
		MOV		R4,#0
QIAN:	
		MOV		R3,#0
BAI:		
		MOV		R2,#0
SHI:
		MOV		R1,#0	
G:	
		MOV		R0,#50	
START:			
		MOV		R7,#0DFH
		LCALL	OPEN

		SETB	P2.6		
		MOV		A,R1
		MOVC	A,@A+DPTR		
		MOV		P0,A
		LCALL	DELAY
		CLR		P2.6

		MOV		R7,#0EFH
		LCALL	OPEN
		SETB	P2.6		
		MOV		A,R2
		MOVC	A,@A+DPTR		
		MOV		P0,A
		LCALL	DELAY
		CLR		P2.6

		MOV		R7,#0FBH
		LCALL	OPEN
		SETB	P2.6	
		MOV		A,R3
		MOVC	A,@A+DPTR		
		MOV		P0,A
		LCALL	DELAY
		CLR		P2.6

		MOV		R7,#0F7H
		LCALL	OPEN
		SETB	P2.6		
		MOV		A,R4
		MOVC	A,@A+DPTR		
		MOV		P0,A
		LCALL	DELAY
		CLR		P2.6
		DJNZ	R0,START

	 	INC		R1
		CJNE	R1,#10,G

		INC		R2
		CJNE	R2,#10,SHI

		INC		R3
		CJNE	R3,#1O,BAI

		INC		R4
		CJNE	R4,#10,QIAN
		LCALL	MAIN

DELAY:	MOV 	R6,#1	
DELAY1:	MOV 	R5,#250
DELAY2:	DJNZ 	R5,DELAY2
		DJNZ	R6,DELAY1
		RET
OPEN:
		SETB 	P2.7	
		MOV		A,R7
		MOV		P0,A	
		CLR		P2.7		
		RET
		ORG 1000H		
LEDTAB:
DB	03FH,006H,05BH,04FH,066H,06DH,07DH,007H,07FH,06FH
END

上一篇:基于51单片机的按键控制led,按键消抖与检测是否松键


下一篇:5ppm高精度自动同步标准化考场时钟系统