单片机数码管重影和闪烁

2019-04-15 19:16发布

单片机数码管重影和闪烁   在进行数码管动态扫描时,经常出现相邻LED某些段位微亮的重影。 产生重影的原因: 由于数码管是由发光管组成的,发光管是有反应时间的,太快就会因为发光管没有来的急放电就要显示下一状态,两种状态叠加显示,就成了重影。其实LED的响应时间在纳秒级,相当快。但是人的眼睛有视觉滞留的特点,所以当你扫描时间太短的时候,某一个段码已经由亮转为暗,但是人的眼睛还没有反应过来,还以为它是亮的,接着下一个段码就被点亮了,所以就出现了重影现象。如果用高速的摄像机拍摄下来,仔细分析每一帧,是会发现LED段码的确按照你的要求在亮或者灭,只是停留时间较短而已。
解决重影的办法: 1.显示前先将所有数码管熄灭,然后再显示 2.除了显示数码外,其他时间都是熄灭的。 3.检查是否存在交替显示不同数字。 4.扫描速度要足够快。 如果数码段选端连接P0,则共阴极数码管消除重影为: #define SEGPORT P0 sbit bit_select = P2^0; sbit seg_select = P2^1; SEGPORT = 0; seg_select = 1; seg_select = 0; SEGPORT = 0xff; bit_select = 1; bit_select = 0;
闪烁: 如果停留时间太长的话,也就意味着暗的时间太长,人眼没能将亮暗的变化连续起来。就像拍摄电影,如果帧数较少的时候,在激烈动作的时候会出现跳帧。换个例子,就像本来每秒24帧的静态图片可以在人眼中形成连续的画面,你从中间抽取10帧画面,还在一秒内重放这些画面,就会感觉到闪烁。