上一篇博文,咱們介紹了LCD RGB控制模式的典型時鐘。那麼這一片咱們要詳細的去討論剩下的細節部分。.net
咱們先回顧一下以前的典型時序圖blog
在這個典型的時序圖裏面,除了上篇博文講述的HSYNC VSYNC VDEN VCLK這幾信號外,咱們還能看見諸如HSPW、 VSPW,HBPD、 HFPD,VBPD、 VFPD等等一些詞語。咱們剩下的時鐘細節部分就是後者了,再解釋這些詞語錢,咱們仍是先聊點別的吧。哈哈啊哈文檔
在咱們平常生活中,例如咱們要打印材料,通常咱們都是用的A4的紙張,可是你有沒有發現通常咱們打印的內容離A4紙張有必定的邊距?這就是咱們再word裏面能夠設置的頁邊距。get
咱們都知道節約用紙,頁邊距的存在雖然浪費了一點紙張,但從美觀或者打印的角度上頁邊距都帶來必定的好處。在講解LCD時鐘的細節部分,就有點像設置頁邊距的趕腳...原理
爲了可以體現出各個時鐘和LCD有效顯示部分的關係,請參考以下兩張圖:技術文檔
圖2 時鐘和LCD顯示的關係下載
在圖2中,我畫出了一幀數據的顯示過程。從上一篇博文咱們瞭解了,LCD是顯示過程是填充像素,也就是一行一行的填充直到整個LCD屏幕像素填充完畢。程序
爲了更好的理解上圖,總結成如下幾個過程:im
經過上面的步驟,整個過程就像設置A4紙張的上邊距、左邊距、右邊距和下邊距。可是LCD爲何要設置這個呢?技術
其實就像咱們打印A4的紙張,若是內容太靠邊了,一點點偏差可能就會致使一些內容不能正常顯示(讓我想起高中的盜版書,總有那麼幾頁是歪的,或者內容沒有打印完)
因此LCD控制器爲了能更好的顯示有效數據,通常都要進行一系列的調整,就像上面設置的「邊距」,可是這種「邊距」不是距離而是經過上述的時鐘調整的。
注:如今的LCD比較先進了,通常均可以自動調整,可是這幾個值仍是保留了下來
既然這是調整,那咱們如何確認上述的幾個值呢?這就要咱們參考LCD的相關文檔了,在LCD的數據手冊裏咱們能找到這些值的描述。
爲了能更好的說明,我從NXP的一個技術文檔中截圖以下:文檔下載連接
上圖中 Horizontal synchronizing Back Proch 就是 HBP,依次類推你們就知道HFP、VBP、VFP的意思了。手冊中給咱們寫出了官方推薦的值,通常咱們採用推薦的值便可。
除了上述的VFP、VBP、HBP、HFP。咱們還有兩個參數須要理解,他們分別是VSPW和HSPW
VSPW、HSPW這兩個值其實很簡單,其中的W表明width也就是寬度的意思。因此這兩個值分別描述的是垂直信號和水平信號的寬度,如上圖所示。
VSPW、HSPW也能夠經過手冊獲得官方推薦的值。
VSPW -- 垂直信號的寬度,用行爲單位,從上圖能夠看出推薦的值爲10行
HXPW -- 水平信號的寬度,用CLK爲單位,上圖推薦的值爲41CLK
最後,從手冊中也能發現,和行有關的計算是以clock爲單位,與垂直相關的計算都是以line爲單位。
固然,說這麼多,在咱們寫LCD驅動程序時可以更好的瞭解。因此在後面的博文中,但願能結合實際的程序去分析framebuffer和LCD驅動的原理。