单片机与数码管显示DS1302的时分秒,出现闪烁
不是数码管的数在闪烁,我扫描的是2ms,就是一个正常的数显示了,然后不该亮的数码管段总是在用很微弱的灯在闪烁源码太长字数限制了,放网盘里了,http://pan.baid...
不是数码管的数在闪烁,我扫描的是2ms,就是一个正常的数显示了,然后不该亮的数码管段总是在用很微弱的灯在闪烁
源码太长字数限制了,放网盘里了,http://pan.baidu.com/s/188k44 展开
源码太长字数限制了,放网盘里了,http://pan.baidu.com/s/188k44 展开
4个回答
展开全部
那要看你是如何刷新数码管的了,刷得太慢会闪烁的。
一般来说,无论你有多少个数码管,总的扫描时间不要超过30ms左右。
那么如果有8个管,则每个管扫描时间为30/8=3.75ms左右;若有5个管,则每个管扫描时间不要超过6ms左右,明白了嘛?
一般来说,无论你有多少个数码管,总的扫描时间不要超过30ms左右。
那么如果有8个管,则每个管扫描时间为30/8=3.75ms左右;若有5个管,则每个管扫描时间不要超过6ms左右,明白了嘛?
更多追问追答
追问
不是数码管的数在闪烁,我扫描的是2ms,就是一个正常的数显示了,然后不该亮的数码管段总是在用很微弱的灯在闪烁
追答
数码管显示时,一般正确的方法是,在动态显示一个数码管之前,先关闭所有的显示,就是把位选关闭了,这样什么都不会显示。关闭的时间只需要保持一个指令周期即可,然后把要显示的数据送出去,然后再选择在哪个数码管显示。这样就可以解决你的问题了。
参考下面的程序:
SCAN = 0xff; // 送数据时,先关闭显示,以避免重影现象
SEG = seg[cnt]; // 送数据
SCAN = sel[cnt]; // 送出数据后,选择对应的数码管
delay_1ms(1); // 延时1ms(延时时间不能太长,最好不要超过5ms)
2013-10-03
展开全部
你刷新数码管显示的频率不大合适,太慢了会有闪烁效果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
和1302木有关系.
把刷新数码管显示的频率家快就好了
把刷新数码管显示的频率家快就好了
更多追问追答
追问
不是数码管的数在闪烁,我扫描的是2ms,就是一个正常的数显示了,然后不该亮的数码管段总是在用很微弱的灯在闪烁
源码太长字数限制了,放网盘里了,http://pan.baidu.com/s/188k44
追答
明白了.
你要在驱动每个字符显示的后面加个关显示.也就是送个"全灭码"!
就会好的.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把源码发上来 你这样的话我们也不知道你的问题究竟出在哪里
追问
不是数码管的数在闪烁,我扫描的是2ms,就是一个正常的数显示了,然后不该亮的数码管段总是在用很微弱的灯在闪烁
源码太长字数限制了,放网盘里了,http://pan.baidu.com/s/188k44
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |