LVDS接口液晶屏點屏流程


使用MStar的TSUM系列的芯片,主要是用來驅動LVDS的屏。
在硬件設置無誤的情況下(屏開關口、屏電壓、PWM等),按照屏規格書上的參數配置屏參,就可以完成點屏了.大概分為幾個步驟,確定屏供電電壓,Panel時序設置,H/VTotal設置,Clock設置,H/VSync設置,Bit設置,刷新率設置。

1.確定屏的供電電壓

在點屏之前最重要的一步,就是確定屏電壓是多少伏,即我們要點的屏是多少伏的,是否和硬件主板上匹配,如果硬件12V,屏5V,就會燒屏。一般屏規格書上可以查到。
注意:屏供電電壓,和屏背光電壓是兩個不同模塊。

2.Panel時序設置

PANEL開機步驟:先開啟PANEL供電,后傳送PANEL DATA,最后點亮燈管;關機時序則相反。其DELAY時間由MCU軟體設定,若時間設定不好則出現瞬間白畫面或畫面。
以顯示LOGO為例,先開屏,delay,送LOGO,此時用戶看到的是黑的,因為沒開背光,然后等LOGO穩定后,開背光,就可看到LOGO了。

T2是T-con上電到LVDS data輸出的時間,T3是LVDS data輸出到背光開啟的時間,而T4和T5是T2和T3對應的掉電時序,T7是T-con重復上電的間隔時間。 屏的LVDS時序較為關鍵設置不當會出現花屏及閃綠屏等問題,

具體各參數的設定值需參考屏規格書。

 背光電源通常就是TV的主電源,主電源開啟后,機芯需要進行一系列的初始化的操作,所以T2一般都可以滿足要求。背光時序通常需要結合LVDS時序使用,而且它們有一個共同的參數---背光開關信號、這時T3需要做合理的安排,以確保背光開關信號能同時滿足LVDS時序及背光時序要求。
屏上電掉電時序圖如下(來自屏規格書):

 

 

 軟件設置如下:

#define PanelOnTiming1      50// time between panel & data while turn on power
#define PanelOnTiming2      550 // time between data & back light while turn on power
#define PanelOffTiming1     150// time between back light & data while turn off power
#define PanelOffTiming2    30// time between data & panel while turn off power

如果開機時,出現閃白線,可以考慮在屏規格時序內,增大PanelOnTiming2時間;另外,如果是用恆流板供電的話,也出現開機閃白線,也可以考慮增大PanelOnTiming2 時間就可以解決.
補充一下開屏流程:

          

 

 

 3.H/V Total的設置

注意,根據屏是單通道還是雙通道,HTotal和Clock要相應的乘以2,雙通道:HTotal和Clock乘以2,單通道,不乘以2.
(1).如何區分單通道和雙通道,一般屏規格書上有寫

 

 

 

 

 軟件設置:根據是雙通道還是單通道,屏參里有一個define要設置成0或者0xFF、

#define PanelDualPort       0xFF // 雙通道為0xFF,單通道為0

(2).H/VTotal參數設置

以雙通道的FHD(1920*1080)分辨率的屏為例,屏規格書如下:  

 

 

 軟件設置:

 #define PanelWidth    		1920
 #define PanelHeight   		1080
 
 #define PanelHTotal   		2100  
 #define PanelVTotal   		1130 
 
 #define PanelMaxHTotal     	2200
 #define PanelMinHTotal     	2088 // miniHTotal要先乘以2,再+20,為什么加20,后面講
 
 #define PanelMaxVTotal     	1818
 #define PanelMinVTotal     	1092

**關於miniHTotal為什么加20的解釋:
PanelMinHTotal的設定要求Panel最小的Htotal加上20。屏有很多分辨率,盡量滿足Panel的不同的特性,把MinHTotal按照PanelMinHTotal來設定。會把Panel能承受的最小的范圍當作中間點來設定,在設置的值恰好到最小承受范圍的情況下,如果有一點偏差,Panel就會出現異常,所以要加20。

注意:PanelHSyncWidth+PanelHSyncBackPorch+PanelWidth<PanelMinHTotal
改miniHtotal會增大Clock

(3).Clock設置

單通道Clock不乘以2,雙通道要乘以2,這里以雙通道為例,屏規格書如下

 

 

 

 

 

 軟件設置:

 #define PanelDCLK       		142
 #define PanelMaxDCLK     	    188
 #define PanelMinDCLK     		113

 

DClock=HTotal×VTotal×VFreq×Q,Q為放大系數

4.H/VSync的設置
其中,H/VSync的意思做下解釋
(1).前肩(Front Porch)/后肩 (Back Porch) :行同步或場同步信號發出后,視頻數據不能立即使能,要留出電子槍回掃的時間。以行掃描為例,從HSYNC結束到DE開始的區間成為行掃描的后肩(綠色區域),從DE結束到HSYNC開始稱為前肩(紫色區域)。同樣對於場掃面也可以由類似的定義。
(2).行同步(HSYNC):行同步就是讓電子槍控制器知道下面要開始新的一行像素
(3).場同步(VSYNC: 場同步就是告訴電子槍控制器下面要開始新的畫面
其中,H/VSync 這些參數一般不改,但是只要滿足PanelHSyncWidth+PanelHSyncBackPorch+PanelWidth<PanelMinHTotal就可以。其中,Blanking=FrontPorch + Sync + BackPorch
VESA表中,H/VSync如下,H/V上一幀畫面:

(4)水平消隱(HBlank):電子槍從左到右畫出象素,它每次只能畫一條掃描線,畫下一條之前要先回到左邊並做好畫下一條掃描線的准備,這之間有一段時間叫做水平消隱(HBlank)。

   (5)垂直消隱(VBlank):在畫完全部256條掃描線之后它又回到屏幕左上角准備下一次畫屏幕(幀),這之間的一段時間就是垂直消隱(VBlank)。電子槍就是在不斷的走‘之’字形。

 (6)數據使能(DE): 在數據使能區是有效的色彩數據,不在使能范圍內的都顯示黑色。

 

 軟件設置:

#define PanelHSyncWidth     35
#define PanelHSyncBackPorch 40

#define PanelVSyncWidth     6
#define PanelVSyncBackPorch 20

#define PanelHStart   (PanelHSyncWidth+PanelHSyncBackPorch)
#define PanelVStart   (PanelVSyncWidth+PanelVSyncBackPorch)

5.Bit設置,屏是8Bit還是6Bit

般屏都是6BIT(屏規格書最上面的介紹會有)。如果是8bit可以顯示0~255灰階,如果是6bit只有0~63),但是我們的PanelDither 寫成8,因為有FRC抖色可以實現假8bit,硬件上省成本。  

 

 

 軟件設置:

#define PanelDither     8

  

關於8Bit的解釋:bit代表的還是計算機二進制中的基本單位,而二進制信息是由0和1組成的,而我們假設小謹做的顯示器是2bit面板時,表示顯示器的像素點只能識別1位信息。那么這個像素點可以展現的信是“00”“01”“10”和“11”四種,那么這個像素點可以顯示4(2^2)種顏色。同理,顯示器如果是8Bit,那么總共可以顯示2的8次方=256種顏色。但是每個像素點都是RGB色組成的,於是8bit最終將能展現256×256×256=16777216種顏色。
FRC抖色簡單理解:有時候為了提高性價比,屏只有6bit+FRC,然后利用scaler實現8bit的效果。這樣與8bit屏的效果有一定的差距,但是性價比高。比如我們要顯示255灰階(白場)時,但是我們6Bit,達不到,所以做法是,在最白和最黑之間抖動,類似PWM波形,但是白的波形寬度長一些,所以在視覺看來是全白的。

6.屏的刷新率設置

屏的刷新率是指,一秒鍾刷新多少次,比如60Hz刷新率就是一秒鍾刷新60次
從屏規格書上可以看到屏和最大,最小及合適的刷新率

 

 軟件設置:

#define PanelMaxVfreq   (750+15) // 75Hz
#define PanelMinVfreq   (500-15) // 50Hz

  至於刷新率為什么是看VFreq可以看上一篇轉載的博客:LCD顯示的一些基本概念以及DSI的一些clock解釋
這篇博客介紹比較詳細。附上鏈接:https://blog.csdn.net/cswuhsdaz/article/details/95231752

因為我們的屏是“之”字形掃描,從上到下,並且是逐行掃描方式,也就是常說的p信號,所以刷新率就是1秒鍾掃描次數,即VFreq。

7、LVDS驅動電流

     因LVDS接口實際是差分信號接口,調整差分信號的電流會影響LVDS信號輸出的幅度。不同的屏因為匹配阻抗略有差異,同樣的驅動電流,LVDS輸出的幅度也不一樣。當LVDS的輸出幅度過小或過大時,畫面會出現閃黑屏、閃彩點的現象。有時LVDS輸出幅度設置不當時,在畫面上並沒有太明顯的表現。這個需要做進一步的眼圖測試,測試不合格時,需要軟件調整驅動電流來滿足要求。

8.屏參參數解釋(也是自己琢磨的,可能不太准確,有好的理解的可以留言補充,共同學習)

LVDS_TIMode:具體含義不太懂,解決問題看上面,畫面花屏,可以試下這個
PanelDualPort:屏的通道 0:單通道, 0xff:雙通道
PanelSwapPort:交換位選擇,數據口,有時候硬件layout板子時候,可能屏端接口和板子端接口是反的,也會出現屏點不亮,可以反一下PanelSwapPort,
PanelHTotal:單位時間行掃描的次數,參考屏規格書來。此值非常關鍵,常影響屏的顯示效果,如上下缺線、白屏、閃動、VGA 某些模式拉絲、OSD 底部顯示缺邊等都可以調它
PanelVTotal:單位時間列掃描的次數
PanelHSyncWidth和PanelVSyncWidth:同步信號的行寬、列高。有時候圖象只顯示了一半,就可以調這兩個,V方向和 H 方向


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM