背光控制:調節顯示屏亮度
該控制方案的第二部分是調節顯示屏的背光亮度。這可通過(guò)多種方式實(shí)現,具體取決于設備中的顯示屏模塊。有兩種最簡(jiǎn)單的方式,一種是借助脈沖寬度調制(PWM)方案的直接調節方式,另一種是采用顯示屏控制器的間接調節方式。
許多顯示屏模塊如今都配有一個(gè)集成控制器,用戶(hù)可以通過(guò)向控制器發(fā)送串行命令,直接設置背光亮度。如果顯示屏模塊未配備集成控制器,還可安裝一個(gè)簡(jiǎn)單的背光控制執行器,控制顯示屏后面用于背光照明的白光LED燈的輸入電流。實(shí)現這種控制的一種簡(jiǎn)單辦法是:直接給LED串聯(lián)一個(gè)場(chǎng)效應晶體管(FET),使用PWM信號快速打開(kāi)、關(guān)閉FET (圖5)。然而,也可以利用單一芯片(用于LED控制的MAX1698升壓轉換器)準確、可靠地調節(圖6)。

圖5. 簡(jiǎn)單的PMW控制電路

圖6. 基于MAX1698的LED亮度調節器
背光控制:建立連接
最后一步就是在傳感器和執行器之間建立連接,通過(guò)微控制器實(shí)現。有人可能首先要問(wèn):“環(huán)境光強如何映射到背光亮度?”事實(shí)上,有些文獻專(zhuān)門(mén)介紹了相關(guān)方案。其中一種映射方式是,Microsoft針對運行Windows 7操作系統的計算機提出的。圖7所示曲線(xiàn)是由Microsoft提供的,它可以將環(huán)境光強度映射到顯示屏亮度(以全部亮度的百分比表示)。

圖7. 將環(huán)境光強映射為最佳顯示屏亮度的曲線(xiàn)示例
這種特殊曲線(xiàn)可以用以下函數表示:

如果設備采用的是已集成亮度控制功能的LCD控制芯片,就可通過(guò)向芯片發(fā)送指令,輕松設置背光亮度。如果設備采用的是PWM直接控制亮度,則要考慮如何將比例信號映射至顯示屏亮度。
在MAX1698示例中,根據其產(chǎn)品說(shuō)明書(shū)的介紹,可以將驅動(dòng)電流映射為電壓。通過(guò)這個(gè)示例,我們可以假設LED電流強度幾乎與其電流呈線(xiàn)性關(guān)系。這樣,我們就可以在上述等式中乘上一個(gè)系數,計算出PWM所映射的有效電壓,該電壓再被映射至LED電流,最后轉化成顯示屏亮度。
方案實(shí)施
最好不要從一個(gè)亮度級直接跳轉到另一個(gè)亮度級,而是平滑上調和下調背光亮度,確保不同亮度等級之間無(wú)縫過(guò)渡。為了達到這一目的,最好采用帶有固定或不同亮度步長(cháng)、可逐步調節亮度的定時(shí)中斷,也可采用帶有可控制LED輸入電流的PWM值的定時(shí)中斷,或者是能夠發(fā)送到顯示屏控制器的串行指令的定時(shí)中斷。圖8提供了這種算法的一個(gè)示例。

圖8. 步進(jìn)式亮度調節的算法示例
另一個(gè)問(wèn)題是,系統響應環(huán)境光強變化的速度。我們應盡量避免過(guò)快地改變亮度等級。這是因為光強的瞬間變化(譬如一扇窗戶(hù)打開(kāi)或瞬間有一束光掃過(guò))可能導致背光亮度發(fā)生不必要的變化,這往往會(huì )造成用戶(hù)感覺(jué)不適。并且,較長(cháng)的響應時(shí)間還有助于減少微控制器對光傳感器的檢測次數,從而可以釋放一定的微控制器資源。
最初級的方法就是每隔一兩秒鐘檢查一次光傳感器,然后相應地調整背光亮度。更好的方法是,只有光線(xiàn)強度偏離特定范圍一定時(shí)間后,才對背光亮度進(jìn)行調節。譬如,如果正常光強是200lux,我們可能只會(huì )在光強降到180lux以下或升至220lux以上,而且持續時(shí)間超過(guò)數秒的情況下才調節亮度。幸運的是,MAX9635和MAX44009都集成了中斷引腳和閾值寄存器,可輕松實(shí)現這個(gè)目的。