51单片机数码管-自我总结

 一、单个数码管

在单个数码管中,共8个灯管,按照顺时针顺序,分为A-G段,再加一个小数点DP段。总计8个段。刚好对应寄存器的8位。

在单个数码管中,一共有10个引脚,其中两个引脚是作为位选端且互相连通,并连通着其他8个引脚。这8个引脚作为段选端。

数码管共两种连接方式,一种是共阴极连接,也就是3和8号端口接在GND上。另一种是共阳极连接,也就是3和8号端口接在ACC上。

 使用方法:首先看是哪种连接方式,然后确定位选端,其次确定段选端。

二、 多个数码管

常见的多个数码管,一般为四位一体的数码管,也就是四个数码管组合在一起。

由图可知,每个数码管的位选端(公共端)都被单独引出来,而段选端则四个数码管共用。 

使用方法:确定位选端,再确定段选端。

疑问:由于段选端是共用的,那么如何让不同数码管显示不同数字呢?

在后期,我们可以通过不断扫描数码管,利用人眼的的视觉差和数码管的残影,让数码管显示不同数字。 

三、电路图 

138译码器

 

 首先我们认识一下138译码器,G1 G2A G3B为使能端,是控制138译码器是否工作的,当为三个端口分别对应为1 0 0时为工作,在单片机上电时默认就是工作的。

138译码器通过3个端口(A B C)来控制数码管的位选端。

如何控制:首先按照字母大小排序(C B A),然后给C B A赋值0或1。比如当赋值0 0 0时,转换为十进制则为0,那么对应Y0号端口就输出0,其他端口则输出1,而Y0端口控制的是LED1数码管的位选端。这样就控制了多位一体数码管中具体某一数码管的公共端。

双向数据缓冲器 

如图所示这里的74HC245芯片就是双向数据缓冲器,作用是对数据进行缓冲。

DIR口是控制数据是读取还是发送,为1时为发送,在这里LE接入VCC默认就是发送数据功能。反之则为读取。 

OE口是使能端,决定芯片工作,当为低电平时为工作状态。

在芯片内部A0是与B0相通,A1与B1相通,A2与B2相通,以此类推。通过对P0寄存器(P00-P07)操作来控制数码管的段选端。

那么双向数据缓存器的作用还有哪些?

首先高电平的驱动能力弱,所以直接给数码管的段选端以高电平,亮度较低。

那么在双向数据缓冲器下,P00-P07不在作为驱动信号。而是作为控制信号,只需极小的电流。然后信号送入到双向数据缓冲器中后,双向数据缓冲器直接从电源汲取能量,获得的电流就较大,那么就增大了高电平的驱动能力。

PR4与PR5为排阻,作用为限流作用。

 

四、消影 

数码管驱动方式有两种:

        1.单片机直接扫描: 也就是不断送数据,这种方式硬件结构简单,但会消耗大量cpu的时间。

        2.专用的驱动芯片:如TM1640,这种芯片自带显存和扫描电路,单片机只要告诉它显示什么即可。

在使用单片机直接扫描的驱动方式时,可能会产生显示数据错位现象。

原因:数码管显示经过 位选 段选 位选 段选 位选 段选

由于单片机的执行速度很快,在段选与位选过程中,上一次的数据还没清零,下一次的数据还没输入,从而导致数据错位现象.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值