基于S3C2440的LED背光源節(jié)電系統(tǒng)設(shè)計(jì)方案
引言
本文引用地址:http://2s4d.com/article/272363.htm節(jié)能環(huán)保技術(shù)是當(dāng)前世界所關(guān)注的焦點(diǎn),在液晶顯示模組中,背光源的功耗最高可占總功耗的50%以上。尤其在10in 以下顯示產(chǎn)品如手機(jī)、PDA、MP3 等便攜式設(shè)備中,基本采用電池供電,功耗問題尤為突出。為有效降低液晶顯示器背光源的亮度,以達(dá)到節(jié)電目的,本文在ARM開發(fā)平臺(tái)上實(shí)現(xiàn)了一種基于直方圖變換的背光源調(diào)光方法,實(shí)驗(yàn)證明,本文提出的方法在失真度為5%的情況下可實(shí)現(xiàn)背光節(jié)電約35%.
1 背光源調(diào)光方案
以TFT 液晶面板結(jié)構(gòu)為例,包括背光、偏光片、液晶陣列、彩色濾光片等部分,人眼所感知的顯示圖像為上述各部分的綜合效果。假設(shè)背光亮度歸一化后設(shè)為b(為[0,1]區(qū)間實(shí)數(shù)),0 對應(yīng)于背光關(guān)閉情況,1 對應(yīng)于背光發(fā)光亮度最大情況。若光源為LED,則b 的調(diào)節(jié)可包括電流脈寬調(diào)制、電流幅度調(diào)節(jié)等方法。
假設(shè)以圖像為8bit 灰度圖進(jìn)行討論,f(x,y)表示圖像中某點(diǎn)(x,y)的灰度值,x、y 為該點(diǎn)坐標(biāo)。則該點(diǎn)位置的液晶透過率可表示為:
t (x,y)=f(x,y)/255 (1)
該圖像點(diǎn)可被觀測到的亮度L(x,y)為背光源發(fā)光和液晶透過率的綜合效果,可表示為背光亮度b和液晶透過率t (x,y)的近似線性組合:
L(x,y) =b·t (x,y) =b·f(x,y)/255 (2)
根據(jù)視覺光效一致性的要求,必須尋找一種方法使像素灰度值在增大(以補(bǔ)償背光b 變小)的時(shí)候盡量不飽和。為達(dá)到這個(gè)目的,本文首先將圖像灰度值范圍先限制在一定區(qū)間,然后再對直方圖進(jìn)行拉伸,以實(shí)現(xiàn)像素灰度值的增大。圖像直方圖由門 限fgl 和fgh 進(jìn)行裁剪,使圖像中的某些點(diǎn)被鉗位于fgl 和fgh,該圖像的灰度區(qū)間限制于[fgl,fgh],背光源調(diào)光問題轉(zhuǎn)化為這幅直方圖經(jīng)過裁剪的圖像應(yīng)當(dāng)如何進(jìn)行調(diào)整,使得它的背光能盡量降低亮度。
顯然對固定的失真度,fgl 和fgh 可以有多種取值,這里取值方式應(yīng)滿足公式(3):
min (fgh- fgl ) (3)
這樣處理的目的是將圖像灰度區(qū)間限制在一個(gè)最小范圍內(nèi)。
公式(3)實(shí)現(xiàn)后,下一步對直方圖進(jìn)行線性搬移,使灰度整體向暗區(qū)域移動(dòng)fgl.這樣圖像灰度區(qū)域由[0,255]區(qū)間內(nèi)的原分布,被壓縮在[0,fgh- fgl]區(qū)間。
假設(shè)背光變暗,此時(shí)應(yīng)對圖像進(jìn)行灰度拉伸,以彌補(bǔ)背光導(dǎo)致的亮度損失。若采取線性拉伸方法,顯然拉伸的最大倍數(shù)為255/(fgh- fgl),此時(shí)像素灰度不會(huì)飽和,則背光亮度可由1 降低為(fgh- fgl)/255.根據(jù)公式(2),經(jīng)過處理后的圖像在背光調(diào)節(jié)前后視覺效果不變。
2 硬件和軟件實(shí)現(xiàn)方案
本實(shí)驗(yàn)采用mini2440 開發(fā)板進(jìn)行驗(yàn)證,mini2440是一款低價(jià)實(shí)用的ARM9 開發(fā)板,處理器為三星S3C2440(ARM920T,最高主頻可達(dá)532MHz)。液晶屏支持黑白、4 級灰度、16 級灰度、256 色、4,096 色STN 液晶顯示,尺寸從3.5~12.1in,屏幕分辨率可以達(dá)到1,024×768 像素,實(shí)驗(yàn)采用了3.5in LED 背光TFT液晶屏。
實(shí)驗(yàn)中根據(jù)圖像算法計(jì)算圖像的灰度值,通過對顯示圖像的直方圖進(jìn)行裁剪,使之限定在一定范圍內(nèi),其后進(jìn)行直方圖拉伸,再由計(jì)算公式(fgh- fgl)/255 計(jì)算出背光源的顯示亮度,并控制背光源脈寬調(diào)制輸出脈沖的占空比,實(shí)現(xiàn)背光源LED 的亮度調(diào)節(jié)。硬件框圖如圖1 所示。
2.1 LED 背光源驅(qū)動(dòng)設(shè)計(jì)
設(shè)計(jì)采用恒流型LED 驅(qū)動(dòng),輸出電流穩(wěn)定,保證了背光LED 的亮度恒定,方便通過更改相關(guān)的外圍電阻來確定輸出電流的大小,并具有高靈敏度的開關(guān)控制功能,能實(shí)現(xiàn)通過PWM 來控制LED 的亮度。
AMC7140 是大功率的LED 恒流驅(qū)動(dòng)芯片,寬電壓輸入DC 范圍為5~50V, 輸出電流最大達(dá)700mA, 適合驅(qū)動(dòng)1W、3W、5W 的LED 燈,TO- 252- 5L 封裝,帶PWM CONTROL 端(OE 引腳)。如圖2 所示是AMC7140 的引腳圖,其中引腳1 是電源輸入;引腳2 是輸出電流的控制端,通過一個(gè)高精度的電阻Rset 接地實(shí)現(xiàn)對電流的控制,電流Iset=1.2V/Rset,輸出電流Iout=500×Iset;引腳3 接地;引腳4 是PWM 控制端,高電平有效;引腳5 是輸出端。AMC7140 的應(yīng)用電路如圖3 所示。
2.2 基于S3C2440 的PWM 控制的實(shí)現(xiàn)
S3C2440 有5 個(gè)16bit 定時(shí)器。定時(shí)器0、1、2、3 有脈寬調(diào)制功能(PWM);定時(shí)器4 是內(nèi)部定時(shí)器,沒有輸出引腳;定時(shí)器0 有死區(qū)發(fā)生器,常用于大電流設(shè)備中;定時(shí)器0、1 共用一個(gè)8bit 預(yù)脈沖分頻器,定時(shí)器2、3、4 共用另外一個(gè)。每個(gè)定時(shí)器都有一個(gè)時(shí)鐘分頻器,它可以產(chǎn)生5 種分頻信號(1/2、1/4、1/8、1/16 和TCLK)。每個(gè)定時(shí)器模塊從自己的時(shí)鐘分頻器獲取時(shí)鐘信號,時(shí)鐘分頻器從相應(yīng)的8bit 預(yù)脈沖分頻器中獲取時(shí)鐘。這個(gè)8bit 預(yù)脈沖分頻器是可編程的,并依據(jù)TCFG0 和TCFG1 寄存器中的值對PCLK進(jìn)行分頻。定時(shí)器被使能之后,定時(shí)器計(jì)數(shù)緩沖寄存器(TCNTBn)中的初始值就被加載到遞減計(jì)數(shù)器中, 定時(shí)器比較緩沖寄存器(TCMPBn) 中的初始值就被加載到比較寄存器中,以便與遞減計(jì)數(shù)器的值進(jìn)行比較。這種TCNTBn 和TCMPBn 的雙緩沖特點(diǎn)使得定時(shí)器在頻率和占空比變化時(shí)輸出的信號更加穩(wěn)定。每個(gè)定時(shí)器都有一個(gè)自己的時(shí)鐘驅(qū)動(dòng)的16bit 遞減計(jì)數(shù)器,當(dāng)計(jì)數(shù)器減到0 時(shí),產(chǎn)生一個(gè)定時(shí)器中斷請求,以通知CPU 定時(shí)器操作完成,同時(shí)定時(shí)器計(jì)數(shù)緩沖寄存器的值被再次自動(dòng)加載到遞減計(jì)數(shù)器繼續(xù)下次操作。然而,如果在正常模式下清除定時(shí)器TCONn 的使能位,TCNTBn的值將不再加載進(jìn)計(jì)數(shù)器,TCNTBn 的值常用于PWM.當(dāng)遞減計(jì)數(shù)器的值等于比較寄存器的值,定時(shí)器控制邏輯改變輸出電平,因此,比較寄存器決定了PWM 輸出的開啟和關(guān)閉。
設(shè)置一個(gè)定時(shí)器,首先初始化TCNTBn 和TCMPBn,在初始化定時(shí)器時(shí),主要設(shè)定以下幾個(gè)寄存器(以定時(shí)器0 為例):
定時(shí)器輸出時(shí)鐘頻率= PCLK/(prescaler value+1)/(divider value)
TCFG0 寄存器設(shè)置:TCFG0=99;//prescaler value="99"
TCFG1 寄存器設(shè)置:TCFG1=0x03;//divider value="1/16"
這樣,當(dāng)PCLK=400M 時(shí),定時(shí)器輸出頻率為6.25M.
定時(shí)器初值的設(shè)置包括:
TCNTB0 寄存器設(shè)置:TCNTB0=62500;// 裝入初值1s 中斷一次
TCMPB0 寄存器設(shè)置:TCMPB0=rTCNTB0》1;//50%
接著就可以啟動(dòng)定時(shí)器,第一次必須手動(dòng)裝載:TCON=1《1;
裝載后, 改為自動(dòng)裝載, 并啟動(dòng)定時(shí)器:TCON=0x09.
2.3 基于S3C2440 的圖像算法設(shè)計(jì)
S3C2440 芯片內(nèi)部集成了LCD 控制器,用來向LCD 傳輸圖像數(shù)據(jù),并提供必要的控制信號,比如VFRAME、VLINE、VCLK、VM 等,可以支持STNLCD和TFTLCD.mini2440 采用3.5in(分辨率為240×320像素)的TFT 液晶顯示屏,配置為常用的16BPP(5:6:5)模式。要顯示圖像,只要向LCD_BUFFER 寫入像素?cái)?shù)據(jù)(R(5):G(6):B(5)),LCD 控制器就會(huì)自動(dòng)通過DMA讀取數(shù)據(jù)送往TFTLCD顯示。
圖像算法是基于圖像直方圖進(jìn)行數(shù)據(jù)變換的,所以,首先應(yīng)編寫子程序并先計(jì)算形成顯示圖像的灰度直方圖,算法如下所示(其中bmp 為原始的灰度圖像,bmp_2 為灰度值數(shù)組):
for( y = 0;y < 320;y++ )
{for(x = 0; x < 240; x++)
{bmp_2 [bmp[p]] ++;
p = p + 1;
}
}
假設(shè)取5%的失真度,那么需要變換的像素點(diǎn)數(shù)量為240×320×5%=3,840 點(diǎn),然后根據(jù)上述算法原理采用逐點(diǎn)計(jì)算的方法使fgl 從灰度0 開始分別計(jì)算出對應(yīng)的(fgh- fgl ),最后比較求出min(fgh - fgl)。
下一步對直方圖進(jìn)行線性搬移,使灰度整體向暗區(qū)域移動(dòng)fgl,這樣圖像灰度區(qū)域由[0,255]區(qū)間內(nèi)的原分布,被壓縮在[0,fgh- fgl]區(qū)間。接下來應(yīng)對圖像進(jìn)行灰度拉伸,以彌補(bǔ)背光導(dǎo)致的亮度損失。若采取線性拉伸方法, 顯然拉伸的最大倍數(shù)為255/ (fgh- fgl)。算法如下所示(其中bmp 為原始的灰度圖像,bmp_new 為更新圖像,min= min(fgh - fgl)):
for(y = 0;y < 320;y++)
{for(x = 0;x < 240;x++ )
{if (bmp[p]>= fgl )
bmp_new[p] = (bmp[p] - fgl )*255/min;
else
bmp_new[p] =0;
p++;
}
}
此時(shí)像素灰度不會(huì)飽和,則背光亮度可由1 降低為(fgh- fgl)/255,由LED 驅(qū)動(dòng)電路通過PWM 實(shí)現(xiàn)相應(yīng)亮度的控制。
3 實(shí)驗(yàn)結(jié)果
如圖4 所示為測試圖像,圖4(a)為原始圖像,圖4(b)、(c)、(d)為采用直方圖裁剪與拉伸算法的試驗(yàn)結(jié)果圖。
測試圖4 (b) 的失真度為5% ,節(jié)能比例為35% ;測試圖4(c)的失真度為10% ,節(jié)能比例為55% ;測試圖4(d)的失真度為20% ,節(jié)能比例為67%.由實(shí)驗(yàn)結(jié)果可知,在一定的失真度下,顯然直方圖裁剪的灰度范圍越小,背光亮度可降低的幅度越大。原始測試圖像與經(jīng)過直方圖裁剪和拉伸 的圖像相比,在失真度5%的約束下,由于圖像進(jìn)行了直方圖搬移,整體亮度有所變化,總的來說圖像質(zhì)量沒有明顯損失。
4 結(jié)論
本文提出了基于視覺特性的液晶顯示器背光源節(jié)電調(diào)光方法,建立了直方圖裁剪和拉伸的處理框架,并在此基礎(chǔ)上利用ARM 平臺(tái)加以驗(yàn)證,證明本文的方法在失真度為5%的情況下可實(shí)現(xiàn)約35%的背光節(jié)電效果,且圖像質(zhì)量沒有明顯損失。
評論