打印
[51单片机]

用74HC573锁存器驱动数码管时消除阴影(消影)的解决办法

[复制链接]
8954|33
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
    现在有很多开发板上都用7HHC573锁存器来驱动数码管,在动态扫描数码管时,大部分开发板的例程在消影上处理的很不好。下面我来给出一种消影的方法。


    我们先看下两个图片
    第一张是天祥电子采用的驱动方式(也是大部分开发板采用的方式)

第二张是修改过函数的

可以从图中看出,第二张的显示效果非常好
      常规的驱动方式是   送段--消影--送位--延时-----然后下一位显示,这样显示没有解决段拖影的问题
      现在改为 送段--消影--送位--延时--打开位选将位的值设为0XFF----下一个数码管。这样既解决了位拖影和段拖影的问题
     
      常规方式代码
                DUAN=1;                                        //打开段锁存
                DPY_DATA=DPY_CODE[1];        //送段数据
                DUAN=0;                                        //关闭段锁存
                DPY_DATA=0XFF;                        //关闭数据,防止位拖影
                WEI=1;                                        //打开位锁存
                DPY_DATA=0XFE;                        //送位数据
                WEI=0;                                        //关闭位锁存
                Delay1ms();                                //延时1毫秒

     修改后的代码
                DUAN=1;                                        //打开段锁存
                DPY_DATA=DPY_CODE[1];        //送段数据
                DUAN=0;                                        //关闭段锁存
                DPY_DATA=0XFF;                        //关闭数据,防止位拖影
                WEI=1;                                        //打开位锁存
                DPY_DATA=0XFE;                        //送位数据
                WEI=0;                                        //关闭位锁存
                Delay1ms();                                //延时1毫秒
                WEI=1;                                        //打开位锁存
                DPY_DATA=0XFF;                        //清除段数据,消除段拖影
                WEI=0;                                        //关闭位锁存
下面是源码;
未修改.zip (959 Bytes)
已修改.zip (947 Bytes)
感兴趣的可以试一下,或者你有更好的方法,欢迎共享


相关帖子

沙发
创隆电子| | 2013-9-13 09:35 | 只看该作者
不错,鼓励经验分享

使用特权

评论回复
板凳
电子云图|  楼主 | 2013-9-13 10:29 | 只看该作者
谢谢鼓励,以后还有更精彩的分享。

使用特权

评论回复
地板
coody| | 2013-9-13 11:28 | 只看该作者
这个很容易,在刷新时,先禁止COM驱动,刷新SEG,再送COM线

使用特权

评论回复
5
电子云图|  楼主 | 2013-9-13 11:44 | 只看该作者
小弟不才,在大佬面前献丑了,向大佬们学习,争取发一些含金量高的帖子

使用特权

评论回复
6
cjseng| | 2013-9-13 12:49 | 只看该作者
电子云图 发表于 2013-9-13 11:44
小弟不才,在大佬面前献丑了,向大佬们学习,争取发一些含金量高的帖子

你要是能解决数码管亮度不均的问题就更好了。从照片上看,笔画越多的亮度越低,这其实是硬件设计的问题,驱动电流不够造成的。

使用特权

评论回复
7
电子云图|  楼主 | 2013-9-13 13:40 | 只看该作者
cjseng 发表于 2013-9-13 12:49
你要是能解决数码管亮度不均的问题就更好了。从照片上看,笔画越多的亮度越低,这其实是硬件设计的问题, ...

我的板子上是有问题,段位上没有加限流电阻,若加上限流电阻会好很多。这种驱动方式一般用在开发板上,若是做产品,是不会用这种驱动方式的..................

使用特权

评论回复
8
opal11| | 2013-9-14 14:45 | 只看该作者
好!

使用特权

评论回复
9
kingxw| | 2013-9-14 14:55 | 只看该作者
好经验啊

使用特权

评论回复
10
cnlxin| | 2013-9-14 17:31 | 只看该作者
好贴,标记收藏!

使用特权

评论回复
11
223178825| | 2013-9-14 18:00 | 只看该作者
谢谢

使用特权

评论回复
12
today_lucky| | 2013-9-14 23:28 | 只看该作者
MARK!

使用特权

评论回复
13
李冬发| | 2013-9-14 23:39 | 只看该作者
送段--消影--送位--延时
----------------------------------
晕,为什么不是:消影--送段--送位--延时?
你没消影之前就改段值,不拖影才怪呢。

使用特权

评论回复
14
cjseng| | 2013-9-15 09:45 | 只看该作者
李冬发 发表于 2013-9-14 23:39
送段--消影--送位--延时
----------------------------------
晕,为什么不是:消影--送段--送位--延时?

你没仔细看,楼主其实是这样的:
送段-段消隐-送位-延时-位消隐

使用特权

评论回复
15
a字头01| | 2013-9-18 08:49 | 只看该作者
同志们,感谢送积分啊

使用特权

评论回复
16
william_D_87| | 2013-9-18 16:40 | 只看该作者
不错 不错。 鼓励经验分享 狂顶!!

使用特权

评论回复
17
youluo235| | 2013-10-14 15:47 | 只看该作者
不错

使用特权

评论回复
18
黄小俊| | 2013-10-14 19:59 | 只看该作者
感觉573好像没有这个问题啊。。。这让我想起了用164做的一个数码管驱动,,那个真的是无法消除阴影。

使用特权

评论回复
19
why812182493| | 2013-12-22 13:11 | 只看该作者
赞一个。问题终于在楼主这里解决了。

使用特权

评论回复
20
czq624589971| | 2013-12-22 15:42 | 只看该作者
赞一个,谢谢楼主分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

162

帖子

7

粉丝