51单片机——数码管显示

本文详细介绍了51单片机数码管显示,包括静态和动态显示原理及其实现方法。静态显示直接利用IO口,动态显示通过动态扫描实现,利用人的视觉暂留效果。数码管分类为共阴和共阳数码管,静态显示和动态显示各有特点。在动态显示编程中,通过调整刷新频率来消除闪烁。最后,文章提醒注意电流驱动和软件延时在实际测试中的影响。
摘要由CSDN通过智能技术生成

1.数码管显示(4位7段数码管)

数码管显示分为静态显示和动态显示

静态显示

可直接利用IO口例:P0口P0=0x3f显示数字0;

动态显示

两种方法:一种是将刷新频率提高,人的肉眼分辨不开,即看到同时显示。
另一种是利用锁存器件,先显示一个数字,利用锁存器件锁到一个数码管上,在显示第二个数字,以此类推。

动态扫描原理

所有数码管段选都连接在一起的时候,怎么让数码管显示不一样的数字呢?动态显示是多个数码管,交替显示,利用人的视觉暂停作用使人看到多个数码管同时显示的效果。就像我们看的电影是有一帧一帧的画面显示的,当速度够快的时候我们看到它就是动态的。当我们显示数码管的速度够快的时候,也就可以看到它们是同时显示了。

数码管的动态显示原理

动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。这样一来,就没有必要每一位数码管配一个锁存器,从而大大地简化了硬件电路。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差些,所以在选择限流电阻时应略小于静态显示电路中的。

动态显示编程原理。

先编写一个程序,在4位一体数码管左数第4位显示4,过1秒,在左数第3位显示3,过1秒,在左数第2位显示2,过1秒,在左数第1位显示1,上述过程不断循环。将中间的延时时间不断改短,我们发现了什么?刷新频率>50HZ,我们就感觉不到闪烁了。所谓动态扫描显示是指轮流向各位数码管送出段选(字形码)和位选,由于人眼的视觉残留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要低,所以在选择限流电阻时应小于静态显示电路中的。
注意事项
普通LED数码管公共端,正常静态工作电流最大能达到70-80mA,一般单片机IO口不足以提供这么大的电流,加三极管可扩展IO口的驱动能力。
另外,加三极管可以起到缓冲和隔离作用,使单片机工作更加稳定可靠。常用电路图如下图所示:
在这里插入图片描述

2.数码管分类

数码管一般分为共阴数码管和共阳数码管
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。
共阴数码管字符显示表

字符 显示数字
0 0x3f
1 0x06
2 0x5b
3 0x4f
4 0x66
5 0x6d
6 0x7d
7 0x07
8 0x7f
9 0x6f
A 0x77
B 0x7c
C 0x39
D 0x5e
E 0x79
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值