“顯示”是嵌入式開發(fā)板最為重要的功能之一,能夠支持更多種類、更高規(guī)格的顯示接口,意味著它能夠應對的使用場景也更加廣泛。每一款嵌入式開發(fā)板在出廠前都會做屏幕調(diào)試,但在客戶的實際項目開發(fā)過程中往往會選擇非原廠的其他屏體進行適配,而在這個過程中可能會遇到一些無法適配問題。
以飛凌嵌入式AM62x系列的OK6254-C開發(fā)板為例,它擁有LVDS和RGB兩種顯示接口,最多支持2路顯示控制器,可同時輸出2種不同畫面。為了幫助開發(fā)者們更方便地進行調(diào)試,小編會分上、下兩篇文章詳細介紹OK6254-C開發(fā)板的顯示方案,本文將先為大家?guī)鞷GB的顯示和修改方式。
?1?RGB接口規(guī)格
飛凌嵌入式OK6254-C開發(fā)板提供1個24bit RGB并行顯示接口,支持最高分辨率為 WUXGA(1920x1200 @60fps,165MHz 像素時鐘)。底板通過FPC座引出16bit數(shù)據(jù)接口,默認適配飛凌嵌入式7英寸電阻、電容觸摸屏,分辨率為1024x600@60fps。
如果對色彩細節(jié)和真實性要求較高,RGB888是更好的選擇;如果存儲空間有限且對色彩表現(xiàn)的要求不高,則可以考慮使用RGB565以節(jié)省存儲資源。這時,就涉及到了RGB888和RGB565的選擇問題。
?2?RGB888和RGB565的選擇和修改
OK6254-C設備樹的修改十分方便,我們把設備樹分為三個部分——內(nèi)核設備樹,LVDS顯示設備樹,RGB顯示設備樹。若要進行RGB888和RGB565的選擇和修改,我們需要打開OK6254-C-rgb.dts文件,如下圖:
上圖中第一個紅色方框內(nèi),我們可以修改RGB顯示為RGB888或者RGB565,默認為rgb565。下邊的紅色方框是分辨率信息,默認為1024*600,最大支持1920x1200,大家根據(jù)根據(jù)自己手中的屏體手冊修改對應參數(shù)即可。此外,OK6254-C開發(fā)板還支持800*480的屏幕分辨率,接下來為大家介紹選屏操作。
打開文件OK6254-C-rgb-800_480.dts
大家可以在下圖紅框部分修改分辨率以及適合屏幕的屏體參數(shù)。
(1) 編譯:
因為我們只對設備樹進行了修改,所以我們不需要全編譯,否則不僅費時而且費力。編譯內(nèi)核后會在images目錄下生成新的Image 和多個設備樹文件,在這里我們只需要單獨編譯內(nèi)核。
1. 切換目錄:cd
OK6254-linux-sdk/
2. 執(zhí)行環(huán)境變量:.
build.sh
3. 執(zhí)行單獨編譯內(nèi)核的指令:sudo
./build.sh kernel
4. 打包所有設備樹文件到開發(fā)板/boot/目錄下替換,然后sync保存重啟scp
images/OK6254-C* ?root@172.16.0.225:/boot/
至此修改完畢。
(2) 選屏階段:
我們已經(jīng)修改好了對應的文件,替換之后應該如何選擇屏幕呢?目前屏幕切換控制方式有三種——內(nèi)核設備樹指定、Uboot菜單動態(tài)控制、Forlinx Desktop界面Ubootmenu應用程序。今天簡單介紹一下Uboot菜單動態(tài)控制。
Uboot啟動過程中,按空格鍵將會進入Uboot 菜單。菜單共有三個選項:
輸入0,將會進入uboot 命令行;
輸入1,將會重啟Uboot;
輸入2,將會進入顯示配置菜單。
屏幕配置菜單有三個選項:
輸入0,將會返回上一級菜單;
輸入1,會切換選項1顯示的內(nèi)容,從而配置屏幕1 LVDS;注:屏幕1支持單LVDS、雙LVDS和關閉(即LVDS off)
輸入2,會切換選項2顯示的內(nèi)容,從而配置屏幕2 LCD。注:屏幕2支持1024*600分辨率LCD屏,800*480分辨率LCD屏幕和關閉(即RGB off)
選擇LCD屏時,我們輸入2就OK。
選擇好需要的配置后,輸入0返回上一級菜單。重啟Uboot或進入命令行啟動系統(tǒng),都可以使屏幕設置生效。其它分辨率屏幕請按照屏幕參數(shù)要求自行修改內(nèi)核設備樹屏幕參數(shù)實現(xiàn)。
至此,我們對于RGB的顯示方案介紹完畢,當然其他顯示接口也是類似,大家可以關注后續(xù)的應用筆記。點擊下圖進入飛凌嵌入式官網(wǎng),即可了解更多產(chǎn)品詳情以及資料。