LED数码管动态扫描

[复制链接]
23608|68
clcsl 发表于 2012-5-11 19:49 | 显示全部楼层
能不能说点有用的啊,把新手搞晕了。
clcsl 发表于 2012-5-11 19:49 | 显示全部楼层
能不能说点有用的啊,把新手搞晕了。
clcsl 发表于 2012-5-11 19:50 | 显示全部楼层
能不能说点有用的啊,把新手搞晕了。
mcustudypeace 发表于 2012-5-12 12:10 | 显示全部楼层
我一般是每个数字亮10ms,连续扫描30次,可以正常显示。
清风明月张 发表于 2012-5-21 07:02 | 显示全部楼层
delayms(5);
zhangyunsheng 发表于 2013-7-5 21:04 | 显示全部楼层
做LED显示的方案,已经有很多个了,经验表明,扫描一串LED,如果每个LED的限流电阻不变的话,那么每增加一个LED,平均亮度就会下降,扫描的LED数量越多,亮度越小,要想增加亮度,只有一个办法,就是减小限流电阻阻值,增大LED的电流,没有其他办法,改变扫描频率并不会改变LED的视觉亮度。那个“刘前辈”在那儿胡扯,误导了不少新手。LED充分点亮根本不需要5ms,几个微秒就充分点亮了。
zhangyunsheng 发表于 2013-7-5 21:12 | 显示全部楼层
而且做LED扫描,不要用延时等待的办法,那样的程序效率太低了。如果有8个LED,我们可以设置一个字节的寄存器,寄存器的初始值为1,在扫描程序中,首先熄灭所有的LED,然后检测到寄存器的值,为n时,就点亮第n个LED,点亮后,寄存器的值加1,然后判断寄存器的值是否为9,如果为9,则修改寄存器的值为1.程序返回做其他事情。以此类推,循环扫描所有LED,而在程序返回后与再次调用该程序时的时间间隔就是等待延时的时间,这段时间内LED充分点亮。多么完美,CPU的效率达到最大化。
llqkm 发表于 2018-5-4 10:50 | 显示全部楼层
zhangyunsheng 发表于 2013-7-5 21:12
而且做LED扫描,不要用延时等待的办法,那样的程序效率太低了。如果有8个LED,我们可以设置一个字节的寄存 ...

“刘前辈”是无知还是无耻不知道, LED充分点亮根本不需要5ms,几个微秒就充分点亮了。这是最简单的,竟然说要5MS,连这个常识都不知道,大家不要鸟他
fzyuan 发表于 2018-5-7 12:46 | 显示全部楼层
凡是在数码管扫描显示中用到“延时(delay)”的,都不可相信,哪怕用这个来实现“灰度”(不是好方案)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部