关于动态数码管驱动,有时闪烁的问题。

2019-03-24 20:04发布

不管怎么说,先上图,结合图,麻烦各位同仁帮忙分析下,到底什么原因,   其实遇到这个问题有点意外,我是用的AT89C51,AT89C51——74HC573——ULN2803,段驱动是采用这种方式,位选用三极管。用ADC0809作为采集IC,比如要显示个18.9,有时候会出现闪烁现象,有时候又正常。在程序里面,在每位的前面,我已经加了消隐措施(就是先关闭数码管),当我用滑动变阻器模拟不同电压输入时,有时正常(亮度也够,也不闪烁,其它段也不存在拖尾现象),但有时又会出现某些段闪烁现象,稍调整一下滑动电阻值,又会不闪烁。当出现闪烁时,我测P0口闪烁的那一段电压,高电居然是3.67V(不闪烁时为4.12V),两都竟相差0.5V左右。这种电平加到2803,导致输出电压也不确定,出现某些段闪烁现象,按理说,在循环扫描时,只要采集的数据一旦计算正确,输送到P0口,高电平就是高电平,低电平就是低电平,怎么有时,会不一样呢。还请高手指点。   最后我又把P0口的上位电阻由原来的10K改为4.7K,好像感觉稍微好一点。但偶尔还是有点这种问题,稍调一下滑动阻值,会正常。真是搞不懂。软件上应该不会有问题。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
fa0103185
2019-03-26 06:01
根据你的电路,我判定你用的是共阳极的数码管,你的段选没有必要搞成那样,573,2803都是浪费,增加成本的东西。共阳极数码管只要你在对应的管脚上提供低电平,数码管就可以显示,51单片机的I/O有能力吸收30ma左右的电流。关于你说的显示问题,如果你用单片机的定时器给0809提供时钟信号,对数码管有影响,建议你对单片机的ALE进行分频,给0809提供时钟信号。还有就是你的数码管延时函数,尽量延时少点。因为主程序执行语句会消耗一些时间。

一周热门 更多>