您好,登錄后才能下訂單哦!
屏所使用的driver ic的配置需求。一般一款driver IC會用于多種尺寸的多款lcd屏(幾種分辨率),然后driver IC的spec上會列出支持的最大分辨率,最大分辨率以下的其他分辨率可以通過寄存器配置,可以固化在firmware的OTP上。
一般屏幕生產時會把driver IC和panel做成一套。而panel的分辨率是固定某個值。針對這個屏,因為屏參數固定了,有很多屏內部會有nvram保存固化的參數(即OTP—one time programable存儲方式),這樣driver IC的配置直接根據OTP的參數設置,不需要外面spi進行設置。
如果你們的屏沒有OTP,那么請給出具體的spi初始化命令和時序。
注意區分文檔是針對此屏內的driver IC的,還是針對屏本身的。
在調試S2D13V40 epson圖像校正芯片時,遇到一個問題,就是i2c通信正常(而且VIO電源、vcore電源,其他電源都正常),即能收到S2D13V40的i2c ack回應,讀寫都有ack,但是寄存器0x02 pid寄存器卻讀取到0x0000的值,示波器測量i2c信號是正常了,各路電源也是正常的,但是讀取寄存器數據就是為0,寫也報ack,但寫完再讀取,還是0,而不是寫的值,對比datasheet,發現i2c完全按照spec手冊要求的順序和方式,波形測量和數據也是符合datasheet的,但是就是不行,而且lvds顯示也不通。后來檢查芯片外接的晶振,頻率是對的26MHz,但是后來發現晶振的電壓只有1v,而手冊要求是3v左右。也就是對于此芯片來說震不起來,所以function功能部分就工作不正常,雖然i2c部分工作正常,所以讀取都是0.
通過這個經驗,總結就是,如果很簡單的東西,軟件正常,但是就是硬件不工作。由于現在設計的硬件都是分模塊的,所以總線接口io有模塊、功能有獨立模塊。所以你一定要仔細檢查硬件的電源、晶振、等等每一個管腳,看是否正常。對比手冊,不要漏掉一個細節。
關于黑屏的問題分析:
1)先檢查黑屏時,背光是否亮,找個暗的地方看。
2)如果背光亮,看屏幕的kernel log,看屏是否mipi dsi初始化出錯,或者屏的上電出問題。
3)如果沒有異常,看看是否因為home,即android的launcher沒有正常啟動或反復crash了。導致沒有在framebuffer上畫東西。通過啟動setting可以看到,如果setting應用起來,能出現顯示,那么就是home本身問題了,或者通過logcat log看。
對于jpeg壓縮,需要記住,對于有損壓縮,那么就會出現圖像的線條旁邊出現魔鬼點,即銳利度不夠,變差。即所謂的圖像細看,線條旁邊出現虛幻的旁條。可以保存圖片,看看壓縮后的原圖是怎么樣的,再看display panel的顯示是怎么樣的。 另外看看bmp圖來顯示的效果,做對比。
具體請參考我的免費的linux各種驅動開發課程如下:
https://edu.51cto.com/course/17138.html
另外我的相關培訓視頻請看:
歡迎觀看我發布的各個課程: https://edu.51cto.com/lecturer/8896847.html
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。