<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > AM335x(TQ335x)學(xué)習(xí)筆記——LCD驅(qū)動(dòng)移植

          AM335x(TQ335x)學(xué)習(xí)筆記——LCD驅(qū)動(dòng)移植

          作者: 時(shí)間:2016-11-28 來源:網(wǎng)絡(luò) 收藏
          TI的LCD控制器驅(qū)動(dòng)是非常完善的,共通的地方已經(jīng)由驅(qū)動(dòng)封裝好了,與按鍵一樣,我們可以通過DTS配置完成LCD的顯示。下面,我們來討論下使用DTS方式配置內(nèi)核完成LCD驅(qū)動(dòng)的思路。

          (1)初步分析

          本文引用地址:http://www.ex-cimer.com/article/201611/322821.htm

          由于TQ335x使用的芯片是AM335x,故仍然可以參考am335x-evm.dts。當(dāng)然,am335x-evmsk.dts、am335x-beagbone.dts都可以。本文以am335x-evm.dts為例。大體上瀏覽下DTS文件,可以發(fā)現(xiàn)兩個(gè)醒目的節(jié)點(diǎn):一個(gè)是panel,一個(gè)是backlight。接下來我們逐個(gè)分析。

          (2)panel節(jié)點(diǎn)信息分析及配置

          從panel節(jié)點(diǎn)可以獲得如下信息:

          1. 1.匹配內(nèi)核驅(qū)動(dòng)的關(guān)鍵詞是:"ti,tilcdc,panel",可以通過這個(gè)關(guān)鍵字找到相應(yīng)的驅(qū)動(dòng)。
          2. 2.管腳配置在節(jié)點(diǎn)lcd_pins_s0內(nèi)
          3. 3.panel-info中可以配置LCD的硬件信息,如LCD的分辨率等
          4. 4.display-times中記錄了LCD刷屏的相關(guān)時(shí)序。
          其中,panel-info和display-times需要去LCD手冊(cè)中查找,管腳配置需要根據(jù)AM335x的芯片手冊(cè)、數(shù)據(jù)手冊(cè)及TQ335x的原理圖確定,驅(qū)動(dòng)則需要去內(nèi)核的driver目錄下查找。下面,我一一解決上述幾個(gè)問題:
          首先是設(shè)置panel-info和display-times。我的TQ335x是用的我調(diào)試TQ210時(shí)使用的觸摸屏,型號(hào)是TN92,這個(gè)屏是800*480的分辨率,因此,panel-info與evm開發(fā)板的配置是相同的,可以不做任何修改。但是,不同屏幕的display-times一般是不相同的,因此,需要查閱觸摸屏的手冊(cè)來確認(rèn)display-times。

          TN92的水平掃描時(shí)序如下表:

          垂直掃描時(shí)序如下圖:

          但是,如果對(duì)LCD各參數(shù)不怎么熟悉的話,很難建立這兩個(gè)表與DTS中display-times的關(guān)系,這時(shí)應(yīng)該去查閱一下linux內(nèi)核的文檔和芯片手冊(cè)。在內(nèi)核文檔:”Documentation/devicetree/bindings/video/display-timing.txt"有相關(guān)的記載,該文件中有形象的描述,具體如下:

          1. +----------+-------------------------------------+----------+-------+
          2. ||↑|||
          3. |||vback_porch|||
          4. ||↓|||
          5. +----------#######################################----------+-------+
          6. |#↑#||
          7. |#|#||
          8. |hback#|#hfront|hsync|
          9. |porch#|hactive#porch|len|
          10. |<-------->#<-------+--------------------------->#<-------->|<----->|
          11. |#|#||
          12. |#|vactive#||
          13. |#|#||
          14. |#↓#||
          15. +----------#######################################----------+-------+
          16. ||↑|||
          17. |||vfront_porch|||
          18. ||↓|||
          19. +----------+-------------------------------------+----------+-------+
          20. ||↑|||
          21. |||vsync_len|||
          22. ||↓|||
          23. +----------+-------------------------------------+----------+-------+
          AM335x的技術(shù)參考手冊(cè)中可以找到相關(guān)的寄存器解釋,如下:

          綜合這三份資料,很容易確定下LCD的屏的時(shí)序參數(shù)的范圍(需要強(qiáng)調(diào)的是,上述參數(shù)不一定精確,還需要使用圖片實(shí)機(jī)測(cè)下效果),經(jīng)過多次實(shí)驗(yàn),最終確定下了LCD的時(shí)序參數(shù),詳情如下:

          1. panel{
          2. compatible="ti,tilcdc,panel";
          3. status="okay";
          4. pinctrl-names="default";
          5. pinctrl-0=<&lcd_pins_s0>;
          6. panel-info{
          7. ac-bias=<255>;
          8. ac-bias-intrpt=<0>;
          9. dma-burst-sz=<16>;
          10. bpp=<32>;
          11. fdd=<0x80>;
          12. sync-edge=<0>;
          13. sync-ctrl=<1>;
          14. raster-order=<0>;
          15. fifo-th=<0>;
          16. };
          17. display-timings{
          18. 800x480p62{
          19. clock-frequency=<30000000>;
          20. hactive=<800>;
          21. vactive=<480>;
          22. hfront-porch=<214>;
          23. hback-porch=<40>;
          24. hsync-len=<4>;
          25. vback-porch=<20>;
          26. vfront-porch=<23>;
          27. vsync-len=<4>;
          28. hsync-active=<0>;
          29. vsync-active=<0>;
          30. };
          31. };
          32. };
          時(shí)序確定下來之后需要關(guān)注的就是管腳配置,由于am335x集成了LCD控制,該控制器與LCD的連接方式是通過GPIO管腳復(fù)用實(shí)現(xiàn)的,而evm開發(fā)板與TQ335x的LCD都接在了同一個(gè)LCD控制器上,因此,直接使用原有的管腳配置即可。這一點(diǎn)也可以通過閱讀TQ335x的原理圖確認(rèn),這里我就不再分析了。

          上一頁 1 2 3 下一頁

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();