LCD的控制原理
一、LCD顯示的基本原理
先簡單介紹下LCD的操作原理。 如下圖的LCD示意圖,裡面的每個點就是一個畫素點。
想象有一個電子槍,一邊移動,一邊發出各種顏色的光。這裡有很多細節問題,我們一個一個的梳理。
- 1. 電子槍是如何移動的?
答:有一條CLK時鐘線與LCD相連,每發出一次CLK(高低電平),電子槍就移動一個畫素。
- 2. 顏色如何確定?
答:由連線LCD的三組線:R(Red)、G(Green)、B(Blue)確定。
- 3. 電子槍如何得知應跳到下一行?
答:有一條HSYNC訊號線與LCD相連,每發出一次脈衝(高低電平),電子槍就跳到下一行。
- 4. 電子槍如何得知應跳到原點?
答:有一條VSYNC訊號線與LCD相連,每發出一次脈衝(高低電平),電子槍就跳到原點。
- 5. RGB線上的資料從何而來?
答:記憶體裡面劃分一塊視訊記憶體(FrameBuffer),裡面存放了要顯示的資料,LCD控制器從裡面將資料讀出來,通過RGB三組線傳給電子槍,電子槍再依次打到顯示屏上。
- 6. 前面的訊號由誰發給LCD?
答:有S3C2440裡面的LCD控制器來控制發出訊號。
二、LCD的介面訊號解析
2440的lcd引腳介面有如下幾個:
我們通常使用的都是TFT面板的LCD,所以我們只是關心紅色方框圈出的引腳即可,其他的是STN面板的控制訊號和三星公司LCD特定的控制訊號。一張圖總結如下:
(1)VD[23:0]:24根資料線,用來傳輸影象資訊。可見LCD是並行介面,速率才夠快。
(2)HSYNC(水平同步訊號)
(3)VSYNC(垂直同步訊號):時序訊號線,為了讓LCD能夠正常顯示給的控制訊號
(4)VCLK(畫素時鐘):LCD工作時需要主機板控制器給LCD模組一個工作時鐘訊號,就是VCLK。
(5)VDEN(資料有效標誌):時序訊號,和HSYNC、VSYNC結合使用。
(6)LEND(行結束標誌,不是必須的):時序訊號,非必須
(7)LCD_PWREN:LCD使能訊號。如果外接的LCD有開/關等類似管腳的話,可以與這個訊號連線。這個訊號的輸出值受ENVID控制,即LCDCON1的第0位。
三、TFT LCD的控制時序邏輯
HSPW 水平同步訊號脈寬
HBPD 水平同步訊號前肩
HFPD 水平同步訊號後肩
VSPW 垂直同步訊號脈寬
VBPD 垂直同步訊號前肩
VFPD 垂直同步訊號後肩
(1)一行的通訊過程是這樣的:LCD控制器先發送一個HSYNC高電平脈衝(脈衝寬度是HSPW+1),脈衝告訴驅動器下面的資訊是一行資訊。然後開始這一行資訊,這一行資訊包括3部分:HBPD+有效行資訊+HFPD。其中前肩和後肩都屬於時序資訊(和LCD螢幕具體有關),有效行資訊就是橫向解析度。所以你可以認為一行總共包含4部分:HSPW+HBPD+有效行資訊+HFPD。
(2)一幀影象其實就是一列,一列影象由多個行組成,每行都是上面講的這個時序。
(3)一幀影象的通訊過程是這樣的:整個幀影象訊號分為4部分:VSPW+VBPD+幀有效訊號+VFPD。VSPW是幀同步訊號寬度,用來告訴驅動器一幀影象要開始了;VBPD和VFPD分別是垂直同步訊號前後肩。
(4)必須說明:這6個引數對於LCD顯示器其實本來是沒用的,這些訊號其實是老式的CRT顯示器才需要的,LCD本身不需要,但是出於歷史相容性要求,LCD選擇了相容CRT顯示器的這些時序要求,所以理解LCD顯示器時序和程式設計時,用CRT的方式來理解不會錯。
(5)要注意,2440控制器預設所有的訊號都是高電平有效,但是某些LCD廠商的控制訊號確實低電平有效(如我們所用的液晶屏,其控制訊號如下所示),為了相容LCD液晶屏,三星公司專門設計了一些暫存器可以控制這些控制訊號是高電平還是低電平。
參考連結:
http://wiki.100ask.org/%E7%AC%AC017%E8%AF%BE_LCD%E7%BC%96%E7%A8%8B
朱老師課件