背光自動(dòng)控制模塊
摘要:本文主要講述采用集成環(huán)境光傳感器控制顯示屏背光亮度的應(yīng)用。系統(tǒng)根據(jù)環(huán)境光強(qiáng)度實(shí)行動(dòng)態(tài)的背光控制,降低功耗。讓顯示屏亮度根據(jù)環(huán)境光條件自行調(diào)整到最佳狀態(tài),改善用戶體驗(yàn)。同時(shí)也能手動(dòng)調(diào)節(jié)背光亮度。
本文引用地址:http://m.butianyuan.cn/article/281898.htm前言
一個(gè)完整的液晶背光控制系統(tǒng)包括二部分:(1)背光自動(dòng)控制模塊;(2)LED驅(qū)動(dòng)器。其中背光自動(dòng)控制模塊有光傳感器和數(shù)據(jù)處理裝置(通常是微控制器)組成。系統(tǒng)框圖如圖1所示。
現(xiàn)在絕大部分CCFL背光的液晶屏都已經(jīng)停產(chǎn),各液晶屏生產(chǎn)商都已經(jīng)采用WLED背光,并且有的已經(jīng)將LED驅(qū)動(dòng)器集成到液晶屏。本文介紹背光自動(dòng)控制模塊。
1 模塊組成設(shè)計(jì)
背光自動(dòng)控制模塊(以下簡(jiǎn)稱為控制模塊)的基本組成結(jié)構(gòu)設(shè)計(jì)如圖2所示,主要包括控制模塊硬件和上位機(jī)控制軟件。硬件模塊由單片機(jī)、光強(qiáng)傳感器、電源轉(zhuǎn)換芯片組成;上位機(jī)軟件是由VB編寫的一個(gè)USB通信控制軟件。
為了更有效地實(shí)現(xiàn)系統(tǒng),在系統(tǒng)組成的基礎(chǔ)上,對(duì)系統(tǒng)的功能進(jìn)行規(guī)劃分析。
1.1 光強(qiáng)傳感器
光強(qiáng)傳感器是關(guān)鍵的組成部分,它負(fù)責(zé)向微處理器提供環(huán)境光強(qiáng)信息。
1.2 微處理器
微處理器是核心部分,負(fù)責(zé)數(shù)據(jù)處理,它有以下幾個(gè)功能:
負(fù)責(zé)讀取光傳感器的環(huán)境光強(qiáng)數(shù)據(jù),并將這些信息處理轉(zhuǎn)換成脈沖信號(hào)控制液晶屏的背光驅(qū)動(dòng)器,進(jìn)而完成背光亮度的控制;
解析USB上位機(jī)發(fā)送過(guò)來(lái)的指令完成相關(guān)操作。
1.3 電源芯片
通過(guò)USB取電,將+5V轉(zhuǎn)換成模塊的工作電壓。
1.4 上位機(jī)軟件
基于USB-HID對(duì)硬件模塊控制指令,并接收硬件模塊的反饋信息。
2 硬件設(shè)計(jì)
硬件電路原理圖如圖3所示,主要由光強(qiáng)傳感器、微處理器、電源電路等組成??紤]到顯示器的空間限制,在保證功能的前提下優(yōu)先考慮小封裝的元器件。
2.1 光強(qiáng)傳感器
選用Maxim公司的MAX4009集成環(huán)境光強(qiáng)傳感器,將所有信號(hào)調(diào)節(jié)和AD轉(zhuǎn)換器集成在一個(gè)封裝內(nèi),有效節(jié)省電路板面積;低功耗(ICC=0.65μA);傳感器的光譜靈敏度需要與人眼接近;采用I2C通信協(xié)議;可設(shè)置上、下限閥值中斷使其與微控制器的連接方式更簡(jiǎn)單,數(shù)據(jù)傳輸速度更快。
2.2 微控制器
選用ST公司的STM32F103T8U6單片機(jī),QFN36封裝;內(nèi)部集成IIC以及USB控制器;通過(guò)USB口與外部通信;IIC配合外部中斷與光強(qiáng)傳感器通信;TIM3輸出PWM控制信號(hào);TIM2為通用定時(shí)器。
2.3 電源芯片
電源芯片選用ASM1117-3.3,Uin=4.75V~12V;Uout=3.3V;Iout[max]=1A;滿足要求。
3 軟件設(shè)計(jì)
對(duì)系統(tǒng)設(shè)計(jì)的功能要求進(jìn)行深入分析,將軟件設(shè)計(jì)分為三部分:通信協(xié)議、單片機(jī)程序和上位機(jī)軟件。
3.1 通信協(xié)議
通信協(xié)議是指雙方實(shí)體完成通信或服務(wù)所必須遵循的規(guī)則和約定,是確保數(shù)據(jù)順利地、正確地傳送的基礎(chǔ)。本設(shè)計(jì)中只是小數(shù)據(jù)量的有線通信,所以只是建立了一個(gè)簡(jiǎn)單的通信協(xié)議。具體如下:
命令格式:FF WW XX YY CC(5個(gè)字節(jié)的16進(jìn)制數(shù))。
第1位為協(xié)議頭,固定為FF。
第2位WW為指令類型:50是自動(dòng)模式指令;05是手動(dòng)模式指令。
第3、4位XX和YY在自動(dòng)和手動(dòng)模式下代表不同的意義:
自動(dòng)模式下:XX、YY分別為光傳感器的高字節(jié)流明寄存器和低字節(jié)流明寄存器的數(shù)據(jù)。
手動(dòng)模式下:XX是背光亮度的百分比值,范圍1~100。
第5位為結(jié)束標(biāo)識(shí)符,固定為CC。
3.2 單片機(jī)程序
單片機(jī)程序流程如圖4左部分所示。系統(tǒng)上電之后,先會(huì)對(duì)單片機(jī)進(jìn)行初始化,然后判斷上位機(jī)是否通過(guò)USB發(fā)送控制指令過(guò)來(lái),接著判斷是自動(dòng)控制指令還是手動(dòng)控制指令,如果是自動(dòng)控制指令,則讀取當(dāng)前環(huán)境光強(qiáng)度,并設(shè)置上、下限門限,接著把光強(qiáng)度變換成背光亮度的百分比,最后調(diào)用PWM滑動(dòng)調(diào)節(jié)控制背光;如果是手動(dòng)控制命令,則讀取上位機(jī)發(fā)送過(guò)來(lái)的背光亮度的百分比,調(diào)用PWM滑動(dòng)調(diào)節(jié)控制背光。
3.2.1 MAX44009通信控制
STM32F103通過(guò)I2C與MAX44009進(jìn)行通信。通過(guò)設(shè)置上、下限閥值,在光線強(qiáng)度偏離設(shè)定范圍一定時(shí)間后,產(chǎn)生中斷通知微處理器讀取光強(qiáng)度,進(jìn)行背光亮度調(diào)節(jié),并設(shè)置新的上、下限門限。本設(shè)計(jì)中上、下限閥值范圍為當(dāng)前光強(qiáng)度的±10%。
(1)讀取流明
流明寄存器包含高、低字節(jié)流明寄存器。高字節(jié)流明寄存器0x03包括4位指數(shù)位E3:E0和尾數(shù)字節(jié)的4個(gè)最高有效位M7:M4,表示環(huán)境光強(qiáng)的流明數(shù)。尾數(shù)字節(jié)的其余4位M3:M0位于低字節(jié)流明寄存器0x04。如表1所示。用戶可以選擇只讀高字節(jié)流明寄存器或者連續(xù)讀高、低字節(jié)流明2個(gè)寄存器來(lái)得到流明數(shù)。
只讀高字節(jié)流明寄存器換算公式:
Lux=2(8×E3+4×E2+2×E1+E0)×(8×M7+4×M6+2×M5+M4)×0.72
讀高、低字節(jié)流明寄存器換算公式:
Lux=2(8×E3+4×E2+2×E1+E0)×(128×M7+64×M6+32×M5+16M4+8×M3+4×M2+2×M1+M0)×0.045
本設(shè)計(jì)中為了增強(qiáng)IC的流明讀數(shù)分辨率,所以選擇連續(xù)讀取高、低字節(jié)流明寄存器。值得注意的是,為了確保內(nèi)部ADC和I2C寄存器之間正確傳輸數(shù)據(jù),在I2C讀操作期間,芯片內(nèi)部禁止高字節(jié)流明寄存器和低字節(jié)流明寄存器的更新,只有主機(jī)發(fā)送STOP[1]命令時(shí),才恢復(fù)I2C寄存器更新。所以在連續(xù)讀取2個(gè)字節(jié)流明寄存器時(shí),讀完高字節(jié)寄存器后不能發(fā)送STOP信號(hào),必須在讀完的字節(jié)低字節(jié)寄存器后才能發(fā)送STOP。
(2)環(huán)境光強(qiáng)如何映射到背光亮度
本設(shè)計(jì)中采用的一種映射方式是Microsoft?針對(duì)運(yùn)行Windows? 7[2]操作系統(tǒng)計(jì)算機(jī)提出的。如圖5所示曲線,它可以將環(huán)境光強(qiáng)度映射到顯示屏亮度(以全部亮度的百分比表示)。
這個(gè)特性曲線可以用以下函數(shù)表示:
(1)
評(píng)論