日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LCD显示异常分析——开机闪现花屏【转】

發布時間:2025/7/14 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LCD显示异常分析——开机闪现花屏【转】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自LCD顯示異常分析——開機閃現花屏

最近在工作中,有同事遇到LCD開機瞬間會閃現雪花屏的問題,而這類問題都有個共同點,那就是都發生在帶GRAM的屏上,同樣的問題,在休眠喚醒時也會出現。

其實這類問題的原理分析并不難,只是在給別人解釋的時候不太好描述,因此,我特地寫了這篇文章,好讓大家能夠更容易、更直觀的理解這類花屏問題的原因,也希望能夠幫助那些遇到同樣問題的朋友。

環境

  • 軟件:Android
  • 硬件:帶GRAM的LCD(如SPI屏,DSI CMD屏)

現象

分析

從上面的動態圖可以看出,出現瞬間花屏的問題,主要有兩個原因:

  • 背光開啟的時間過早
  • 對GRAM的寫速度(W) < 對GRAM的讀速度(R)
  • 其實,只要任意解決其中一個問題,都不會出現開機閃現花屏的現象。開發人員第一次碰到這類問題時,往往第一反應會認為花屏就是在第一幀產生的,但實際從上面的圖中我們可以看到,人眼看到的花屏其實已經是在第二幀了。

    對于第一點,其實一開始我也很疑惑,如果說開機閃現花屏是因為uboot中背光開的太早導致,這個結論我能接受。但在進入Android系統后,休眠喚醒時還會有花屏問題,這就有點說不通啊?因為Android的PowerManager框架本身能夠確保在休眠的時候先關背光,后關顯示;在喚醒的時候先開顯示,后開背光,而且我顯示驅動里面也做了刷背景色的動作,只要GRAM中的數據沒有被填充完,顯示驅動的流程就不會接著往下走,進而也不可能開啟背光。所以一旦背光點亮,說明GRAM已經被初始化了,可為什么還能看見GRAM中的垃圾數據呢?

    這就引出了第二點:因為對GRAM 寫的速度小于讀的速度,哪怕W只比R小那么一丁點兒,只要它們同時從第一顆像素開始掃描,屏上顯示的第一幀永遠都是垃圾數據。

    解決方法

    前面已經提到過了,只要任意解決其中一個問題,閃花屏的問題就能解決。

    1. 推遲背光開啟的時間

    這里的推遲動作其實是相對的,即你可以:

  • 在初始化完GRAM后,等待1個TE信號,再開啟背光
  • 或者在給屏幕發送Sleep Out (0x11)、Display On (0x29)指令前,先通過Write Memory Start (0x2C)指令將GRAM初始化好
  • 親測第一種方法簡單粗暴;

    2. 提高GRAM的寫速度

    即提高主控端總線上的送圖速度,比如提高SPI總線的時鐘頻率(SPI屏),提高RS/WR的切換速率或擴充DATA總線(MCU屏),提高PHY Clock Frequency (MIPI DSI屏)。

    轉載于:https://www.cnblogs.com/linhaostudy/p/9579829.html

    《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

    總結

    以上是生活随笔為你收集整理的LCD显示异常分析——开机闪现花屏【转】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。