如何在LED恒流驱动器上加入PWM亮度调节

2011-05-08 09:22:57来源: 互联网
引言

  Maxim Integrated Products为很多应用领域提供PWM (脉宽调制)亮度调节LED (发光二极管)驱动器。典型应用中,通过串口向LED驱动器发送指令改变相应LED的寄存器值进行亮度调节。用于亮度控制的数据通常为4位至8位,对应于16至256个亮度等级;有些Maxim的LED驱动器的亮度控制则通过调整漏极开路LED端口的恒定吸入电流大小来实现。

  该应用笔记讨论如何在LED恒流驱动器加入PWM亮度调节,通过控制LED电源的通、断调节亮度。也可以通过刷新数据位仿真外部PWM亮度控制。内置PWM的LED驱动器也可以通过外部PWM实现亮度调节,只要PWM信号的外部时钟可以同步。

  PWM仿真

  按照一定周期向LED驱动器发送开/关控制信号,可以仿真PWM亮度调节的效果。因为LED数据接口的传输速率远远高于PWM信号的频率,可以使用微控制器FPGA (现场可编程门阵列)很容易地仿真PWM调光方式。PWM开关频率、数据传输的时钟频率和PWM亮度等级之间的关系如式1所示:

  

式1.

  其中,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, i<256, i++} {

  for {int j=0, j<8, 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电源实现亮度调节

  图2所示电路采用MOSFET晶体管作为开关器件,有助于提高效率。

  

  图2. 功率MOSFET作为开关器件

  利用下式计算外部晶体管的功耗

  

式2.

  其中,tRISE为晶体管的上升时间,tFALL为晶体管的下降时间,T为PWM周期,tON/T为PWM亮度等级,I为LED总电流,RON为晶体管的导通电阻。欢迎转载,本文来自电子发烧友网(www.elecfans.com)

  式2给出了晶体管开关损耗与导通损耗之和,开关损耗由开/关时间决定。当晶体管闭合或断开时,在晶体管两端电压从零上升到VLED的过程中,或者是在反方向变化时,几乎所有电流流过晶体管。

  使用高速开关晶体管时,上升时间和下降时间通常为50ns。对于周期(T)为1/1000秒的PWM、LED电压(VLED)为5.5V、LED总驱动电流为200mA时,晶体管总功耗为:

  

式3.

  若晶体管导通电阻为0.1Ω,则晶体管在最高亮度时的导通功耗为:

  

式4.

  从式4可以看到,合理选择高速开关晶体管,能够将损耗降至最小。

  主控与各端口的分层控制

  有些LED驱动器的PWM亮度控制可以通过主控与各端口之间的分层控制实现。例如,MAX6964、MAX7313、MAX7314、MAX6965、MAX7315和MAX7316。如图3所示,各端口的PWM亮度控制波形重复多次。每重复一次相当于一次主机控制。由此,如果主机控制15级亮度调节,则控制波形重复15次。LED驱动器各端口的控制信号决定了波形的占空比。主控信号决定控制波形的重复次数。比如:某个端口的占空比为3/16,主控设置为4/15。波形的导通时间占整个周期的3/16,波形在全部15个时隙的前4个时隙重复。

  

  图3. 主控和各端口的PWM亮度分层控制

  遗憾的是,一个MAX6964的主控信号不能与另一MAX6964的端口信号相组合,以构成多芯片链路机制。因为,多个MAX6964之间无法实现时钟同步;每个端口的PWM控制导通时间不能与主控制器亮度调节信号的通/断时间窗口保持一致。如果时钟信号的边沿无法对齐则无法同步控制亮度,LED会变暗。由于时钟之间的相位偏差,也会导致LED周期性地闪烁(通、断)。

  分层PWM亮度调节方案可以通过LED驱动器避免闪烁问题,适用于MAX7302等具有时钟同步机制和较宽的时钟频率范围的器件。图4给出了利用两片MAX7302和开关晶体管实现PWM亮度分层控制的典型电路。

  

  图4. 利用两片MAX7302实现PWM亮度分层控制

  其中一片MAX7302的输出端口连接在LED的阴极,每路输出端口作为一个独立的亮度控制端口。另一片MAX7302的输出通过外部晶体管连接在LED的阳极,这一MAX7302作为亮度主控制器。每个端口的亮度控制由外部1MHz高频时钟驱动,这是MAX7302工作时钟的上限。例如,将一个端口的亮度等级设置为15/33时,P2亮度控制端口输出作为主控制器的时钟输入。得到的主控制器等效时钟频率约为1000000/33 = 30kHz。该应用实例中,每个亮度控制端口可以用于调节RGB LED的颜色,而主控制器用来调节亮度。

关键字:加入  亮度  调节

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2011/0508/article_8231.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
加入
亮度
调节

小广播

独家专题更多

TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved