找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4788|回复: 1
收起左侧

[原创]细说多位数码管的驱动方法(1)

[复制链接]
ID:27770 发表于 2011-1-24 16:11 | 显示全部楼层 |阅读模式

细说多位数码管的驱动方法(1)
我们在制作项目时,会遇到多位数码管的显示问题.如何尽量减少硬件的使用数量和加快全部显示一轮的时间,是需要精心规划与安排的.
例如:
做万年历,就有年月日,时分,星期等内容需要显示,数码管数量多达 13 位以上.如果再带上秒,温度,农历什么的,位数就更多了.
 

img1.gif

例如:
做多功能电力仪表,显示位数也往往多达十几位以上.
img2.gif

尽管有专门用于这种多位显示的专门芯片可供选择,但是,往往一只这种芯片成本可能比使用的单片机本身还要高!例如市场上的 CH451 等,高达 6~8 元呢!
于是,可以考虑串行到并行的一些芯片,例如 HC164,HC595 等等,驱动也仅仅就二线制,但是,这么一来,外挂芯片也不少.
还有,可以使用一些 4 线到 7 线的驱动芯片,例如:CD4511,74LS247,CD4543 等等,它们除了节省一些源驱动引脚之外,使用数量恐怕也让人头痛!
类似于 HC373,HC374,HC573,HC574 的芯片,可以减少很多源驱动引脚,但是,芯片使用数量仍然太多!
还有一个附带问题,许多仪器仪表,往往是主印刷版与前面的显示/按键板是分离的,有些商品仪表,主板到前面板的引线就多达几十根,无论如何,都会让人感觉又乱又多又不可靠,生产调试等都增加了困难.
说了那么多,我们就是希望:使用尽量少的硬件芯片,尽量少的过渡引线,尽量短的显示周期时间,尽量低的元器件费用!----当然,需要保证可靠性不能降低!
我们举例说明:
一个 2 * 4 位的仪器显示电路,有 8 位数码管,完全依靠单片机本身的端口来驱动,就有 2 种方案考虑:

图 1 的方法需要使用 22 个单片机端口.
img3.gif

图 2 方法需要使用 16 个单片机端口.
img4.gif

图 2 全部数码管显示一次的时间比图 1 长一半时间.
从仪器 2 个板子分离的情况来看,图 1 从主板到前面显示板的引线就相当多了!图 2 虽然少了一些,但是,加上供电,按键等,数量也不算少,很可能还会有发光管指示灯什么的,需要考虑的麻烦事就更多了!
从单片机端口的使用数量来看,它也大大影响到单片机的封装选择,引脚不是越多越好的,对焊接,成本,调试等都会有影响.
如果芯片带有 RS232 硬件功能,当然可以考虑使用串行驱动,虽然不过分影响单片机分时工作的速率,但是,上面提到过,串行芯片的数量也是相当可观的.
数码管这种显示还要保证每秒不能少于 50 次以上,否则会有显示闪烁的感觉!
针对上面提及的问题,这里推荐一种比较好的方法:就是增加一只廉价的单片机,专门负责显示,主功能单片机与显示用途单片机仅仅 2 根引线就可以正常传送信号,这么一来,带来的后果是利大于弊!
img5.gif
我们这么做,还会最大限度地节省 2 个分离印刷板的引线,节省印刷板的布线难度,减少主单片机的引脚数量,加快系统的运行速率.对显示用途的单片机的内部资源没有什么要求,完全可以使用最普通功能的单片机来担任显示任务!
这样就需要解决 2 个单片机之间的通信问题,这完全可以借鉴现成的一些 2 线制串行通信方式方法.也可以根据自己的情况自定义自己的通信方法.
通常,主单片机只要保证每秒时间给显示单片机送入 4 次以上的数据,那么,对数码管显示的实时性来说就已经足够了!----当然,你就是增加一倍二倍的传送次数,对主单片机来说,也是可以非常轻易做到了!因为,它犯不上去操心每秒显示 50 次以上的工作量了!
而对于显示单片机来说,则要求保证每秒时间内,完成全部数码管的 50 次以上的分时扫描显示.....
(未完待续)-------仅供参考!

回复

使用道具 举报

ID:31466 发表于 2011-9-25 16:22 | 显示全部楼层

有道理,学习。。。。。。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表