当前位置:首页 > 单片机 > 单片机
[导读] 数码管是单片机系统中经常用到的显示器件, 从内部结构上可以分为共阴极和共阳极数码管。对不同的数码管,电路的接法也不一样。图1A为数码管的结构图。以共阳极数码管为例, 要想点亮某段, 只需要在相应的

数码管是单片机系统中经常用到的显示器件, 从内部结构上可以分为共阴极和共阳极数码管。对不同的数码管,电路的接法也不一样。图1A为数码管的结构图。以共阳极数码管为例, 要想点亮某段, 只需要在相应的段上给低电平即可。图1B为共阳极数码管段码分布, 以及一个显示的实例。

图1 数码管段码分布及显示示例

按照工作方式, 数码管驱动可以分为静态显示和动态扫描。所谓静态显示, 就是每一个数码管的段码都要独占具有锁存功能的输出口, CPU把要显示的字码送到输出口上,就可以使数码管显示对应的字符, 直到下一次送出另外一个字码之前, 显示的内容一直不会消失;动态扫描是把所有显示器的8个段码中的A-dp的各个相同段连接在一起, 接到一个公共的输出口上,而数码管的位端分别接在另外的输出口上,通过这两个输出口的两组信号相互作用来产生显示效果。即让各位数码管按照一定顺序轮流显示, 只要扫描频率足够高, 由于人眼的“ 视觉暂留”现象,就能连续稳定的显示。静态显示法的优点是显示稳定、亮度大, 节约CPU时间, 但占有I/O口线较多, 硬件成本高。动态扫描其特点在于能显著降低显示部分成本,大大减少显示接口的连线结构。举例, 静态驱动4位数码管, 需要4×8=32个I/O口, 而动态的驱动位数码管只需要4+8=12个I/O口。

电路图详解

单片机的I/O资源是有限的, 因此如何节省I/O口线而又不影响系统的功能是单片机工程师面临的实际问题。图2采用是串行转并行芯片74HC595和三线一八线译码器实现8位数码管的驱动, 好处是可以节省更多的I/O口线作其他用途。正常驱动8个数码管需要8+8=16根口线, 采用595+138的方式只需要3+3=6根。

图2 数码管显示电路连接图

为了更好地理解电路, 这里简单介绍一下74HC595和74LS138两个芯片的作用。74HC595是一款串行移位输入、8位并行输出的芯片, 内带数据移位寄存器和三态输出锁存器;SER为串行数据输入;SRCLK为移位时钟输入;RCLK为锁存控制输入;QA-QH为数据输出, QH’为向下一片(位)的串行数据输出。74LS138是一个3线一8线的译码器, 低电平有效输出, 因此每个时刻输出端口只有一个是低电平, 其余都是高电平输出, 因此可以驱动共阴极数码管。如果驱动共阳极的数码管还需要做一个非门的转换。最后, 为了增加单片机I/O的输出能力, 在74HC595与数码管之间串接了一个74HC245并行驱动芯片。

从电路图中可以看到, 每个芯片的电源和地附近都接了一个104电容, 这个高频滤波电容, 可以减小电源对IC的影响。注意高频电容的布线, 连线应靠近电源端并尽量粗短, 否则, 等于增大了电容的等效串联电阻, 会影响滤波效果。其实, 不加这个电容也可以, 但万一因为干扰出了问题, 就会很难查找根源, 实际调试电路板的时候就会发现电容的作用非常大的, 而这些恰恰是初学者容易忽略的地方。

关健程序分析

动态扫描需要注意的一个问题, 由于所有数码管的段码接到一个公用的I/O上, 在每个瞬间, 各个位数码管上的段码都是一样的, 要想在不同的位显示不同的信息, 必须用扫描显示的方式, 在一段时间内, 只点亮一个数码管, 其余的都处于关闭状态;下一个时间段内点亮下一个数码管, 其余的都处于关闭状态。如此循环, 造成一个视觉暂留的效果, 当闪烁的频率大于50Hz的时候, 人眼就分辨不出来了, 即各个位上显示的信息就“ 区分”开了。扫描频率过高, 每个位显示的时间太短, 数码管的亮度不够;扫描频率过低, 会有明显的闪烁感。这个时间需要根据不同的硬件电路, 做不同的调整, 而且跟数码管的个数有关, 一般的经验值延时10ms左右。

图3 数码管动态显示流程图

总结

动态扫描过程中,LED显示的亮度同驱动电流、点亮时间和关断时间有关, 调整驱动电流大小和扫描频率, 可以控制LED显示的亮度, 同时稳定显示。这需要在实际的调试过程中不断的尝试, 找到一个最佳临界点!对于尺寸比较大的数码管, 可以在74HC245与数码管之间再串接一个ULN2003(7段)或者ULN2803(8段)达林顿管增加驱动能力。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

进程是程序的执行过程。程序是静态的,是存在于外存之中的,电脑关机后依然存在。进程是动态的,是存在于内存之中的,是程序的执行过程,电脑关机后就不存在进程了。进程的内容来源于程序,进程的启动过程就是把程序从外存加载到内存的过...

关键字: 程序 静态 操作系统

ARP缓存中包含一个或多个表,它们用于存储IP地址及其经过解析的MAC地址。ARP命令用于查询本机ARP缓存中IP地址-->MAC地址的对应关系、添加或删除静态对应关系等。如果在没有参数的情况下使用,ARP命令将显示帮助...

关键字: ARP MAC 静态

摘 要 :为适应无线通信设备通用化设计的需求,提出一种大动态射频直接采样方案。方案包括射频前端与数字信号处理两部分,首先将接收信号分别通过高低增益双信道进行预选滤波放大等处理,然后使用 ADC 采样电路进行带通采样及模...

关键字: 无线通信 动态 直接采样 高低增益 带通采样 模数变换

数码管里面相当于有8个段码管(或叫发光二极管)。 数码管分阳极管(CA),阴极管(CC)。阳极管是接高电平然后通过每个段选为来控制数码管亮灭(高电平灭,低电平亮)。阴极管则是接低电平,通过段选来控制亮灭(高电平亮,低电...

关键字: 数码管 使用

数码管引脚图

关键字: 数码管 编程

共阳极、共阴极数码管编码表(0~9、A~P……全亮)

关键字: 数码管 段码

【单片机自学】3.数码管静态及动态显示

关键字: 数码管 数字

LED数码管驱动芯片选型指南

关键字: 数码管 芯片

数码管是嵌入式开发中比较常用的一个模块,本篇文章根据查阅的资料以及学习笔记整理成文,尽可能详尽的讲解常用数码管原理和使用方法。若有不足和疏忽的地方,请不吝指正。一、工作原理数码管是一种半导体发光器件,其基本单元是发光二极...

关键字: 数码管

led数码管(LEDSegmentDisplays)由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。

关键字: 发光二极管 数码管
关闭
关闭