在LED恒流驱动器上加入PWM亮度调节的方法
引言
本文引用地址:http://www.amcfsurvey.com/article/176162.htmMaxim Integrated Products为很多应用领域提供
其中,fCLOCK为数据接口的时钟频率,fPWM为PWM频率,nPORT为控制端口数,nLEVEL为亮度等级。
在该项技术中,PWM仿真数据由控制器连续发送到LED的每个端口,每个端口1位。所有端口更新一次即为PWM的一个台阶。从索引值1开始重复仿真PWM台阶,直至索引值等于设定的亮度等级,形成一个PWM周期。例如,如果亮度等级为256,每个端口刷新数据256次构成一个PWM周期。如果对应端口的亮度等级高于PWM仿真台阶的索引值,数据为1;否则数据为零。只要LED保持点亮状态,则始终重复PWM仿真周期。欢迎转载,本文来自电子发烧友网(www.elecfans.com)
该PWM仿真控制可以由下列C程序实现:
int INTENS[8] = {200, 100, 50, 25, 12, 6, 3, 1};
bool LEDON = true, DATA[8];
while (LEDON) {
for {int i=0, i256, i++} {
for {int j=0, j8, j++} {
if INTENS[j]>i
DATA[j]=1;
else
DATA[j]=0;
}
Send(DATA);
}
}
PWM仿真技术适用于MAX6968和MAX6969。MAX6968为8端口LED恒流驱动器,数据接口传输速率可达25Mbps;MAX6969是MAX6968的16端口版本。利用这一方法可以实现16位或65,536级亮度控制,MAX6968的PWM频率可以设置在47Hz,MAX6969的PWM频率可以设置在24Hz。如果只要求12位的亮度控制分辨率,对应的PWM频率可以分别设置在752Hz和376Hz。PWM仿真技术无需对电路进行任何修改即可实现每个驱动口的亮度控制。
LED电源的开关控制
通过对LED电源进行开、关控制也可以实现LED的PWM亮度调节。图1所示电路利用PWM控制电源为LED提供额外的亮度调节。微处理器向LED驱动器发送I²C命令产生PWM信号,PWM波形可以由软件控制。这种方式适用于具有恒流LED端口,但没有内部亮度调节功能的MAX6969,以及带有可调节恒流LED端口的MAX6956。该方案通过一个晶体管控制PWM信号的占空比,达到亮度调节的目的。LED亮度可由微处理器通过LED驱动器间接地控制,也可以由晶体管直接控制。以MAX6956为例,恒流驱动与PWM占空比调节相结合,无需任何其它电路介入。
图1. 采用PWM控制LED电源实现亮度调节
pwm相关文章:pwm原理
评论