现有一个项目,需要控制64个LED,每个LED的平均驱动电流30mA,每个LED要能独立设置32级亮度。
目前采用的方案是:单片机IO+三极管构成16seg*4com的动态扫描,通过设置软件占空比的方法调节LED亮度(如要实现SEG1,COM1处的LED 1/2亮度时,第一次扫描到COM1时,seg1=ON,第二次扫描到COM1时,seg1=off,如此循环)。但是,为了避免出现LED闪烁的现象,LED的对比度越大,需要产生的扫描中断越频繁,目前设置是500uS,还是达不到32级亮度调节。由于软件其它任务较重,不能再缩短中断时间了。
目前较常见的LED驱动芯片都不能单独设置各SEG的亮度(一般通过一个外接电阻设置所有通道的电流,如PTC,TLC5941等),使用16路PWM芯片又不能驱30mA,外加三极管layout太复杂。
现寻找一种LED驱动芯片:>=16seg,最好能集成>4个com自动扫描(没有com也没关系,可以外加4个三极管自己控制动态扫描),能够通过通信的方式设置各个SEG的电流,并且每个seg可驱动至少30mA。
用过类似芯片的请帮忙推荐,或者有其它更好方案的也可,谢谢! |