如何在LED恒流驅(qū)動(dòng)器上加入PWM亮度調(diào)節(jié)
引言
本文引用地址:http://www.ex-cimer.com/article/180372.htmMaxim Integrated Products為很多應(yīng)用領(lǐng)域提供
其中,fCLOCK為數(shù)據(jù)接口的時(shí)鐘頻率,fPWM為PWM頻率,nPORT為控制端口數(shù),nLEVEL為亮度等級(jí)。
在該項(xiàng)技術(shù)中,PWM仿真數(shù)據(jù)由控制器連續(xù)發(fā)送到LED的每個(gè)端口,每個(gè)端口1位。所有端口更新一次即為PWM的一個(gè)臺(tái)階。從索引值1開始重復(fù)仿真PWM臺(tái)階,直至索引值等于設(shè)定的亮度等級(jí),形成一個(gè)PWM周期。例如,如果亮度等級(jí)為256,每個(gè)端口刷新數(shù)據(jù)256次構(gòu)成一個(gè)PWM周期。如果對(duì)應(yīng)端口的亮度等級(jí)高于PWM仿真臺(tái)階的索引值,數(shù)據(jù)為1;否則數(shù)據(jù)為零。只要LED保持點(diǎn)亮狀態(tài),則始終重復(fù)PWM仿真周期。歡迎轉(zhuǎn)載,本文來自電子發(fā)燒友網(wǎng)(www.elecfans.com)
該P(yáng)WM仿真控制可以由下列C程序?qū)崿F(xiàn):
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仿真技術(shù)適用于MAX6968和MAX6969。MAX6968為8端口LED恒流驅(qū)動(dòng)器,數(shù)據(jù)接口傳輸速率可達(dá)25Mbps;MAX6969是MAX6968的16端口版本。利用這一方法可以實(shí)現(xiàn)16位或65,536級(jí)亮度控制,MAX6968的PWM頻率可以設(shè)置在47Hz,MAX6969的PWM頻率可以設(shè)置在24Hz。如果只要求12位的亮度控制分辨率,對(duì)應(yīng)的PWM頻率可以分別設(shè)置在752Hz和376Hz。PWM仿真技術(shù)無需對(duì)電路進(jìn)行任何修改即可實(shí)現(xiàn)每個(gè)驅(qū)動(dòng)口的亮度控制。
LED電源的開關(guān)控制
通過對(duì)LED電源進(jìn)行開、關(guān)控制也可以實(shí)現(xiàn)LED的PWM亮度調(diào)節(jié)。圖1所示電路利用PWM控制電源為L(zhǎng)ED提供額外的亮度調(diào)節(jié)。微處理器向LED驅(qū)動(dòng)器發(fā)送I²C命令產(chǎn)生PWM信號(hào),PWM波形可以由軟件控制。這種方式適用于具有恒流LED端口,但沒有內(nèi)部亮度調(diào)節(jié)功能的MAX6969,以及帶有可調(diào)節(jié)恒流LED端口的MAX6956。該方案通過一個(gè)晶體管控制PWM信號(hào)的占空比,達(dá)到亮度調(diào)節(jié)的目的。LED亮度可由微處理器通過LED驅(qū)動(dòng)器間接地控制,也可以由晶體管直接控制。以MAX6956為例,恒流驅(qū)動(dòng)與PWM占空比調(diào)節(jié)相結(jié)合,無需任何其它電路介入。
圖1. 采用PWM控制LED電源實(shí)現(xiàn)亮度調(diào)節(jié)
pwm相關(guān)文章:pwm原理
電度表相關(guān)文章:電度表原理
評(píng)論