最近在做一个数码管,其他人的程序数码管亮度很高,但是我的程序亮度不高,后来在网上搜寻结果,查寻原因,现记录如下:
长期点亮就是 数码管最亮 的时候。
但动态显示中,要换种说法:最大可能让它长期亮,就是 数码管最亮的时候。也就是说,数码管亮的时间越长,它就越亮。
又但是,动态显示中,数码管亮的时间越长,几个数码管就会变得一闪一闪的,甚至是,一个亮完另一个亮,跟流水灯似的。这就是所谓的:刷屏!
因此,又得换一种说法:在保证不闪的情况下,最大可能让它长期亮。
这就是主题了——刷新率。这个名词不陌生,以前的显示器,特别是台式显示器上就要调这个参数。调高了(75Hz),显示器支持不了,调低了(50Hz),屏幕忽闪忽闪的。但用在数码管上,估计比较难入座。
从以前的显示器上,可以得到经验,50Hz对人而言,会闪烁。75Hz已经完全看不出来了。降低一点要求,60Hz绝大多数人已经感觉不到闪烁了。这个刷新率怎么用在数码管上?
为了方便计算,以50Hz为例,则周期T=1/F=20ms,也就是20ms重复一周。假设你有4个数码管,则每个数码管有 5ms 的时间。也就是说,这就是“最大可能的时间”了。每隔这“最大时间”切换一位数码管,就能让数码管到达 最大辉度(亮度)了。
当然,最大亮度也不可能超出硬件设计范围,如果硬件设计驱动电流不够,那么软件怎么弄都是白扯!