1. 程式人生 > >LCD驅動除錯常見問題和一些解決方式

LCD驅動除錯常見問題和一些解決方式

原文轉自:http://www.52rd.com/Blog/Detail_RD.Blog_DamonKabo_30355.html

LCD點不亮——無法正確完成初始化:

       LCD點不亮問題的原因有很多,但出現這個問題後,首先應該判斷LCD是否正確完成初始化。最簡單的判斷方法就是測量LCM的FPC上的電容兩端電壓。(具體的值可以和模組供應商溝通)

       如果經過上一步,檢測出沒有正確完成初始化,接下來首先和模組、IC一起確認初始化程式碼是否有問題。

       確認好程式碼以後還是點不亮,說明是模組無法進行初始化,而不是初始化出錯。重新理一遍流程:上電->初始化。上電這個步驟一般不會有問題,如果沒有遵循正確的上電時序和RESET的流程的話也比較好排查。

       那麼還能存在哪些問題呢?

       在上電成功以後,BB會通過LCD序列匯流排傳送LCD的初始化資料,如果這個環節出現問題,那肯定初始化不能成功。在這個過程中能出現問題的就只有SPI的通訊控制這一塊了,(通常LCD的通訊介面有CPU和序列匯流排介面等,手機中較常用的就是序列匯流排介面,序列匯流排介面又以SPI介面居多),其實造成SPI通訊不符合LCD模組驅動晶片的要求的原因也是多種多樣的:

1、  雖然都是SPI介面,但是,不同的LCD模組,在控制訊號的要求上往往都會有細小的不同,有時候,CPU的SPI介面甚至都無法產生LCD模組所要求的特定波形時序。有些LCD模組可能還會有特定的勢能訊號來控制SPI介面工作與否。

2、  多數LCD驅動晶片其實都是具有讀取暫存器和ID號的功能的,但是很多模組在封裝的時候往往沒有吧晶片的SPI介面的SDO訊號線引出來。導致無法通過讀取暫存器和ID的方式來判斷SPI總線上的通訊協議是否正確。

那麼,如果確定了是SPI通訊控制不滿足要求的話,就可以通過修改SPI的讀寫控制來適配LCD模組IC的要求。

如果CPU所提供SPI介面實在沒有辦法配置到完全和LCD模組要求的時序波形相同,可以採用CPIO口模擬SPI訊號的方式來初始化LCD。

最後,如果模組能夠將SDO引出就儘量引出,不僅方便除錯,而且可以很方便的做不同IC的LCD自適應的相容。

初始化成功,LCD點不亮

       有的時候LCD點不亮,通過上面講的方法,測量LCM的FPC上的電容的電壓確認初始化正常。即有時候初始化已經成功了,但是LCD還是沒有被點亮。這個時候就要仔細的對照LCD模組的規格書來檢查了,是否是一些非常規的原因,例如串列埠和RGB資料介面相互影響或者別的什麼原因。

       見過別人講的一個案例:某廠商的一款LCD驅動晶片,初始化成功了以後LCD還是點不亮,經查發現,在RGB介面上寫入資料前,要通過串列埠對某一暫存器寫入特殊值,但實際上在初始化的程式碼中已經包含了對該暫存器寫值,即使寫入這一特殊值以後RGB資料口上仍然寫入不了資料。最後發現,對暖氣修改以後,不能再寫其它的暫存器,否則就會出現問題。當然這也是極個別的現象,不過當你在除錯過程中遇到此類問題無法解決的時候,不妨在這個方向上進行檢查。

LCD影象錯位

       LCD顯示在水平方向發生位移,或者在上面或底部有一條几個畫素的彩色、白色或黑色條紋。一般來說,出現這種情況,都是因為初始化引數設定不對,和行同步或者場同步訊號有關。

       顯示位置有位移或者錯位,就檢查LCD模組和CPU上的LCD控制器的行同步與場同步訊號的寬度、前後延時、極性的匹配。最可能的就是回掃的前後延時時間不匹配。

       另外,這種情況通常錯位不會很多,如果出現錯位了一半的影象之類的情況,通常就是別的原因造成的了。而且有時候,有的LCD的行訊號、場訊號的設定還和LCD驅動晶片的部分電壓引數的取值設定有關。

LCD大片圖片錯位、疊加、重複

       LCD顯示上大範圍的影象出現錯位、疊加或者重複,出現這種情況一般不會是行同步或者場同步訊號的延時引起的,基本可以排除這方面的影響。可以間檢查下抽樣等功能的引數是否正常,還有就是因為LCD的硬體平臺不同,而在時序或者時鐘頻率上存在差異引起的。碰見這種情況首先應該做的就是先仔細計算DMA傳輸引數。其它的情況要具體問題具體分析。

UBOOT過程中LCD不顯示

       開機的時候在UBOOT過程中LOGO不顯示,只有背光亮。這種情況出現的時候如果其它都正常,不妨檢查下FLASH的配置。我碰見這個問題的原因最後是FLASH的MCP沒有設定正確。FLASH換小以後MCP只有CS0這一片封裝,而在配置檔案裡還是沿用以前的CS0和CS1兩片的配置,從而可能會引起各種意想不到的問題。

開機LCD亮的瞬間有花屏

       出現這種問題,一般都是由於LCD在初始化完成後重新整理第一副影象未完全準備好的時候背光已經亮了。解決的辦法就是在UBOOT時候背光亮之前的延時相應的加長一點。

相關推薦

LCD驅動除錯常見問題一些解決方式

原文轉自:http://www.52rd.com/Blog/Detail_RD.Blog_DamonKabo_30355.html LCD點不亮——無法正確完成初始化:        LCD點不亮問題的原因有很多,但出現這個問題後,首先應該判斷LCD是否正確完成初始化。最簡單的判斷方法就是測量LCM的FPC

LCD驅動除錯中部分常見問題的分析及解決辦法

點選開啟連結 http://blog.csdn.net/colorant/article/details/2782568 LCD點不亮——無法正確完成初始化:        LCD點不亮問題的原因有很多,但出現這個問題後,首先應該判斷LCD是否正確完成初始化。最簡單

展訊平臺tplcd驅動除錯筆記

這些天在除錯展訊平臺上的tp和lcd驅動,這是一些小的總結。 螢幕出現豎條紋,(在視覺上給人的感覺是螢幕出現輕微的閃爍),這個可以調節vcom電壓,來調節這個電壓值,可以修復豎條紋. 但是無論怎麼修改都沒怎麼改善屏閃現象,可修改畫素點的翻轉方式,一般螢幕預設的翻轉方式是列

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第11章節--為OfficeSP解決方式開發集成Apps Office新的App模型

align epo 挑戰 bsp apps rep 過去 content enter BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第11章節--為Office和SP解決方式開發集成Apps Office新的App模型

HBase建立二級索引的一些解決方式

ack sca for done pseudo 100% hide shm range HBase的一級索引就是rowkey,我們僅僅能通過rowkey進行檢索。假設我們相對hbase裏面列族的列列進行一些組合查詢。就須要採用HBase的二級索引方案來進

android--------Android Studio常見問題以及解決方式

ids reat 代碼自動提示 ack pre 詳細信息 不清楚 jar jdk1.7 gradle build的時候出現的問題: Error:Execution failed for task ‘:app:packageDebug‘. Duplicate files c

Spring Boot常見問題的解決方式

jsp無法自動重新整理 在application.properties檔案裡新增如下內容: spring 1.5.5及 以上:server.jsp-servlet.init-parameters.development=true spring boot2.0以上:server.ser

FastJSON 設定預設引數,全域性配置方式 一些使用方式、坑

  如果要被序列化的物件含有一個date屬性或者多個date屬性按照相同的格式序列化日期的話,那我們可以使用下面的語句實現: 在應用的的Main方法體裡配置全域性引數: JSONObject.DEFFAULT_DATE_FORMAT="yyyy-MM-dd";//設定日期格式 &n

rk3128 lcd 驅動除錯記錄

                      &lcdc {                                  status = "okay";                                  backlight = <&backlight>;   

LCD 驅動除錯

porority of HSYNC, VSYNC is very important in LCD debug follow Steps for Debug 1) check the power supply is correct 2) check the clock for LCD is correc

LCD驅動程式架構分析

一、LCD驅動程式架構 1.裸機驅動程式碼分析 ①LCD初始化:控制器初始化,埠初始化,指明幀緩衝 ②LCD圖形顯示:將圖形資料寫入幀緩衝 void lcd_init() {     lcd_port_init();     //初始

CheckStyle報錯的常見問題及解決方式

1   提示:Type is missing a javadoc commentClass 說明:缺少型別說明 解決方法:增加javadoc說明 2   提示:“{” should be on the previous line 說明:“{”應該位於前一行。 解決方法:把“{”放到上一行去 3   提示:M

LCD驅動除錯

porority of HSYNC, VSYNC is very important in LCD debug follow Steps for Debug 1) check the power supply is correct 2) check the cl

LCD驅動除錯以及Framebuffer

內容提要: 1. android display相關的名詞 2. 除錯LCD驅動需要注意的步驟 3. 關於幀緩衝區及I/O記憶體 ------------------------------------------------------------------------

camera 驅動除錯常見問題總結

在嵌入式系統,如手機等平臺上使用的Camera sensor通常是由類似I2C這樣的匯流排進行暫存器控制,由CPU端的Controller提供所需的驅動時序,通常支援YUV和RGB等資料格式。有的Sensor需要由CPU進行影象處理工作,有的Sensor自己會整合影象處理晶片,完成一些基礎的影象處理工作,

HTML三大選擇器的使用命名方式,優先順序,以及選擇器中常見錯誤及解決方法

HTML中的三大選擇器1.標籤選擇器:使用標籤的名稱作為選擇器,選中標籤設定樣式, 特點:可以選中多個標籤,給一堆標籤同時設定樣式書寫方式 標籤名{ 樣式 }2.類選擇器:在標籤中利用class屬性設

前端跨域原理常見解決方式

理解跨域必須先了解同源策略,所以—— 何謂同源策略(same origin policy)? 瀏覽器的同源策略,出於防範跨站指令碼的攻擊,禁止客戶端指令碼對不同域的服務進行跨站呼叫。簡單來講就是,從一個域上載入的指令碼不允許訪問另外一個域的文件屬性。

一些常見的問題錯誤及解決方式

一、資料庫: 報錯碼: 1、error10013 就是埠被佔用,換個埠就OK。 2、error10061 就是資料庫沒開啟。 3、error10053的問題是與socket有關,但是不記得怎麼解決的了,改天再補。但是請仔細檢查該段程式碼及邏輯。 4、報錯: ig

LCD驅動調試中部分常見問題的分析及解決辦法

dash 廠商 開機 適配 方向 tro 參數 lcd控制器 延時 LCD點不亮——無法正確完成初始化: LCD點不亮問題的原因有很多,但出現這個問題後,首先應該判斷LCD是否正確完成初始化。最簡單的判斷方法就是測量LCM的FPC上的

驅動開發 —— 從零開始(1) 配置vs20xx+wdkxx+winX環境並附錄常見問題解決方式

網上教程很多、如何去安裝如何去配置 但是也有些坑感覺並不是那麼的完善 wdk+vs下載連結:https://docs.microsoft.com/zh-cn/windows-hardware/drivers/download-the-wdk 只要wdk版本與sdk版本對應就行,不用在意是vs20xx 我這邊以