一款基于XMC1200的LED智能調(diào)光設(shè)計
【導(dǎo)讀】英飛凌新一代XMC1200系列MCU將Cortex-M0內(nèi)核與尖端的65nm制程技術(shù)結(jié)合在一起,內(nèi)建了亮度與色彩控制單元,可以對LED的進行智慧調(diào)光,實現(xiàn)亮度的指數(shù)調(diào)節(jié),色彩的線性調(diào)節(jié),同時可以避免低頻時候產(chǎn)生的閃爍現(xiàn)象,有效的保護人眼。
本文引用地址:http://www.ex-cimer.com/article/234717.htm目前廣泛使用的LED調(diào)光方式主要為模擬的恒流控制方法和PWM控制,存在控制復(fù)雜、功能單一、且容易產(chǎn)生閃爍的缺點。針對上述挑戰(zhàn),英飛凌公司推出了新一代XMC1200系列MCU。它將ARM Cortex-M0內(nèi)核與尖端的65nm制程技術(shù)結(jié)合在一起,克服了8位設(shè)計的限制,使當前的8位用戶有機會享受32位性能,而無需在價格或易用性方 面付出代價。XMC1200的FLASH容量從16KB- 200KB不等,16K SRAM,內(nèi)核主頻32M Hz,12bit ADC。特別的,XMC1200內(nèi)建了亮度與色彩控制單元(BCCU),專門針對LED智能調(diào)光應(yīng)用。
圖 1 XMC1200系列MCU資源
基于XMC1200 BCCU的智能調(diào)光方案
XMC1200內(nèi)建的亮度與色彩控制單元(BCCU)可以實現(xiàn)對LED亮度和色彩的全數(shù)字控制,可實現(xiàn)以下關(guān)鍵特性:
1) 自動消除低頻閃爍
2) 自動色彩變化控制
3) 智慧的柔和調(diào)光控制
方案優(yōu)勢:
XMC1200作為單芯片解決方案,可以節(jié)省大量的CPU開銷,大幅降低軟件開發(fā)的時間,有效的減少人為導(dǎo)致的軟件錯誤風(fēng)險。同時XMC1200系列MCU具有高性能、大容量,高可靠性的特點,可以把智慧調(diào)光廣泛的應(yīng)用于生活、工業(yè)的各個方面。
第一頁:XMC1200 BCCU的智能調(diào)光方案
第二頁:RGB LED調(diào)光的電路圖
第三頁:線性調(diào)光器和Sigma Delta調(diào)制器
第四頁:閃爍看門狗/打包器
圖2為利用XMC1200實現(xiàn)1組RGB LED調(diào)光的電路圖。
從上圖可以看出,在XMC1200的BCCU中,主要引入了以下模塊:
1) 指數(shù)型調(diào)光引擎
人眼對于光強的感知實際是對光振動的振幅的感知,而光的強度和振幅的平方成正比,這就導(dǎo)致人眼對光強的線性變化無法做出線性的感知,而是會產(chǎn)生近似對數(shù)的關(guān)系。為此,如果需要讓人眼感知到線性的變化,則需要讓光強按照指數(shù)型改變。
為了解決這種難題,BCCU創(chuàng)新的增加了指數(shù)型調(diào)光模塊,使得光強可以自動的按照指數(shù)規(guī)律變化,從而達到對人眼的感知的線性變化,從而達到柔和調(diào)光的效果。指數(shù)型調(diào)光的模塊和原理如圖3。
代碼實現(xiàn)
{
// 指數(shù)型調(diào)光引擎0,終值0xABC寫入影子寄存器
WR_REG((BCCU0->DL0,BCCU_DL0_DLEV_Msk,BCCU_DL0_DLEV_Pos,0xABC);
// 調(diào)整指數(shù)型調(diào)光變化速率為0xCBA
WR_REG((BCCU0->DTT0,BCCU_DTT0_DIMDIV_Msk,BCCU_DTT0_DIMDIV_Pos,0xCBA);
// 指數(shù)型調(diào)光引擎0,終值寫入
SET_BIT(BCCU0->DESTRCON,BCCU_DESTRCON_DE0S_Pos);
// 打開BCCU指數(shù)型調(diào)光引擎0
SET_BIT(BCCU0->DEEN,BCCU_DEEN_EDE0_Pos);
}
第一頁:XMC1200 BCCU的智能調(diào)光方案
第二頁:RGB LED調(diào)光的電路圖
第三頁:線性調(diào)光器和Sigma Delta調(diào)制器
第四頁:閃爍看門狗/打包器
2) 線性調(diào)光器
BCCU 中引入了線性調(diào)光器,特性可以根據(jù)亮度目標值和變化時長,生成線性變化的亮度輸出,從而達到線性調(diào)整色彩的目的。改特性在RGB三色調(diào)光方面有特別的優(yōu) 勢,若設(shè)定RGB三通道變化時長一致,則可以達到同步進行三色調(diào)節(jié)的目的,輕松的實現(xiàn)三色混合。在圖4中,RGB三色同一時刻開始變化,并在同一時刻達到 變化終點,它們的合成顏色在三色空間中表現(xiàn)為一條直線。
代碼實現(xiàn)
{
// 設(shè)置BCCU信道0的線性調(diào)光速率為0xCBA
WR_REG(BCCU0->INTS0,BCCU_CHCONFIG0_LINPRES_Msk,BCCU_CHCONFIG0_LINPRES_Pos,0xCBA);
// 設(shè)置調(diào)光終點為0xABC,寫入影子寄存器
WR_REG(BCCU0->INTS0,BCCU_INTS0_TCHINT_Msk,BCCU_INTS0_TCHINT_Pos,0xABC);
// 線性調(diào)光終值寫入
SET_BIT(BCCU0->CHSTRCON,BCCU_CHSTRCON_CH0S);
}
3) Sigma Delta調(diào)制器
通過開關(guān)LED,能夠使得LED發(fā)出一定的光亮,若切換速度足夠快,則人眼將感知不到LED的開關(guān),達到連續(xù)發(fā)光的目的,而LED的亮度則取決于開通的平均時間。
BCCU中內(nèi)置了Sigma Delta調(diào)制器,用于將亮度數(shù)值變換為比特流,產(chǎn)生快速開關(guān)的脈沖密度調(diào)制信號(PDM),通過這個信號來控制LED的開關(guān)。
大家比較熟知的開關(guān)信號有PWM,PDM和PWM的區(qū)別可以參考圖5,在相同的較長時長內(nèi),PDM和PWM信號有相同的開通時間,但PWM表現(xiàn)為周期恒定,脈寬變化,但PDM則表現(xiàn)為周期不恒定,但脈寬相同。
相比來說BCCU中提供的PDM具有較高的頻率,可以達到較高的分辨率,EMI特性更好,同時因頻率較高,更不易產(chǎn)生低頻閃爍。
第一頁:XMC1200 BCCU的智能調(diào)光方案
第二頁:RGB LED調(diào)光的電路圖
第三頁:線性調(diào)光器和Sigma Delta調(diào)制器
第四頁:閃爍看門狗/打包器
4) 閃爍看門狗/打包器
研究報告指出,人眼感官能夠感知的變化為45.8HZ以內(nèi),低于這個頻率閃爍,會引起人眼的不適,高于這個頻率的閃爍,雖然不會被人眼感知到,但是仍舊會對人體產(chǎn)生神經(jīng)性的影響,比如流行的護眼燈,頻率都在100Hz以上,這樣才能保證對人體影響較小。
在BCCU中,提供了一個自動的低頻看門狗特性,通過提前設(shè)定好信號間的間隔時間,若間隔時間過大,則看門狗會自動加入開通信號,保證開關(guān)頻率不低于設(shè)定的最小值,從而從原理上消除了低頻閃爍的產(chǎn)生。閃爍看門狗原理如圖6
在LED的驅(qū)動中,需要保證最小開通時間,即在最短的一段時間內(nèi),需要保持開通信號恒定。BCCU中提供了一個打包器用于完成這一功能。
看門狗配合打包器使用,就可以既保證了最小開通時間,同時又能保證不產(chǎn)生低頻閃爍。
代碼實現(xiàn)
{
// 設(shè)定閃速看門狗的門限為0xABC
WR_REG(BCCU0->GLOBCON,BCCU_GLOBCON_WDMBN_Msk,BCCU_GLOBCON_WDMBN_Pos,0xABC);
// 打開BCCU通道0的閃爍看門狗
SET_BIT(BCCU0->CHCONFIG0,BCCU_CHCONFIG0_WEN_Pos);
// 設(shè)定BCCU通道0的打包器門坎為0xA
WR_REG(BCCU0->CHCONFIG0,BCCU_CHCONFIG0_PKTH_Msk,BCCU_CHCONFIG0_PKTH_Pos,0xA);
// 打開BCCU通道0的打包器
SET_BIT(BCCU0->CHCONFIG0,BCCU_CHCONFIG0_PEN_Pos);
}
總結(jié)
綜上所述,通過使用內(nèi)建BCCU單元的XMC1200系列MCU,可以對LED的進行智慧調(diào)光,實現(xiàn)亮度的指數(shù)調(diào)節(jié),色彩的線性調(diào)節(jié),同時可以避免低頻時候產(chǎn)生的閃爍現(xiàn)象,有效的保護人眼。
XMC1200作為上述特性的單芯片解決方案,可以節(jié)省大量的CPU開銷,大幅降低軟件開發(fā)的時間,有效的減少人為導(dǎo)致的軟件錯誤風(fēng)險。同時XMC1200系列MCU具有高性能、大容量,高可靠性的特點,可以把智慧調(diào)光廣泛的應(yīng)用于生活、工業(yè)的各個方面。
評論