國產工業級開發板分享-OKA40i-C開發板LCD屏幕調整

原創 2021-01-27 15:25:00 A40i

如今國產的工業級ARM平臺越來越多,部分客戶反饋國產系統和以前的其他平臺有些許差異,需要熟悉一段時間才能使用,對一些想快速熟悉平臺的客戶有一些門檻。為了便于大家的使用,今天小編先針對OKA40i-C開發板Linux平臺的LCD 屏幕參數的軟件修改做下解讀,整體分為四步:

 

首先從參數修改入手,假設bsp的源碼包根路徑在路徑/root/workspace/allwinner/A40i/bsp/project/,這個路徑是我的$HOME路徑.

源碼包的名字是lichee.tar.gz

Step 1 :解壓縮 源碼包

tar xvf lichee.tar.gz

Step 2:配置文件介紹

針對A40i配置

RGB24 1024x600屏幕配置文件:

tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1024x600.fex

LVDS 1280x800屏幕配置文件:

tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1280x800.fex

MIPI1024x600屏幕配置文件:

tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1024x600mipi.fex

RGB24 800x480屏幕配置文件:

tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config800x480.fex

hdmi獨立顯示 屏幕參數:

tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1080p.fex

 

進入到配置文件所在路徑

cd lichee/tools/pack/chips/sun8iw11p1/configs/OKA40i_C

 

Step3: 打開sys_config1024x600.fex配置文件

vi sys_config1024x600.fex

內容包括兩部分[disp]小結,[lcd0]小結.

下邊第一個截圖是[disp]小結.

序號1是顯示模式選擇:

;disp_mode             (0:screen0<screen0,fb0>)

序號2是屏幕類型:

;screenx_output_type   (0:none; 1:lcd; 3:hdmi;)

序號3是格式:

;fbx format(4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444)

;fbx pixel sequence    (0:ARGB 1:BGRA 2:ABGR 3:RGBA)

Fb的寬度和高度:

;fbx_width,fbx_height  (framebuffer horizontal/vertical pixels, fix to output resolution while equal 0)

下邊截圖是[lcd0]

上圖中序號1,是接口類型;序號2屏幕的分辨率參數,例如選擇1024x600。

序號3是 點像素時鐘可以是51Mhz,和背光頻率50khz;序號4是屏幕的時序參數,這個要填寫正確,下邊是我們選的一個屏幕的顯示參數如下,僅供參考。

 

使用的是1024x600的lcd rgb24的屏幕,背光頻率設置的是50khz。

下圖是管腳復用:

lcdd0                   = port:PD00<2><0><default><default>

上述的解釋:lcdd0:配置的名稱舉例;

            port:PD00:是管腳名稱,全志系列的管腳命名規則是P字符數字;

            <2>:復用功能lcd數據線0,來自于參考手冊中;

            <0>:  驅動強度,最強到3;

上述配置完成后可以打包生成燒寫鏡像了。

Step 4:制作img燒寫鏡像

注意:boot內核與文件系統一起編譯。

步驟1:配置


# cd /root/workspace/allwinner/A40i/bsp/project/lichee/
     #./build.sh config
Welcome to mkscript setup progress
All available chips:
   0. sun8iw11p1
Choice: 0
All available platforms:
   0. android
   1. dragonboard
   2. linux
   3. camdroid
Choice: 2
All available kernel:
   0. linux-3.10
Choice: 0
All available boards:
   0. OKA40i_C
   1. OKT3_C
   2. a40i-p3
Choice: 0
All available buildroot:
  0. buildroot
  1. buildroot-201611
Choice: 1
select buildroot-201611
All available float:
  0. gnueabi
  1. gnueabihf
Choice: 1
select gnueabihf
All available qt version:
  0. 5.9.0
Choice: 0
select 5.9.0
create misc_config gnueabihf
All available lcd resolutions:
   0. 480x272
   1. 800x480
   2. 800x600
   3. 1024x600
   4. 1024x600mipi
   5. 1280x800
   6. 800x480_v1
   7. 800x600_v1
   8. 1024x600_v1
   9. 1024x600mipi_v1
  10. 1280x800_v1
Choice: 3


注意:

當編譯A40i時,選擇OKA40i_C;

如使用為V1.2版本核心板,選擇3. 1024x600

步驟2:編譯


# cd /root/workspace/allwinner/A40i/bsp/project/lichee/
#./build.sh


步驟 3:編譯Qt (可選)

釋放Qt OpenGLlib到交叉編譯器位置,文件存儲位置(編譯過程報找不到GLESv2)。

1 用戶資料\Linux\linux\工具\sysroot.tar.gz


# cd /root/workspace/allwinner/A40i/bsp/project/lichee/out/sun8iw11p1/linux/common/buildroot/host/usr/arm-buildroot-linux-gnueabihf
# tar xvf sysroot.tar.gz 


#最終生成sysroot替換沒有Mali庫的sysroot。

注意:如果出現路徑錯誤,請把/root/workspace/allwinner/A40i/bsp/lichee/buildroot-201611/dl/qt-everywhere-opensource-src-5.9.0 刪除,重新釋放壓縮包,并且復制/root/workspace/allwinner/A40i/bsp/lichee/buildroot-201611/dl/setenvs.sh到新釋放的qt-everywhere-opensource-src-5.9.0目錄中去。


# cd /root/workspace/allwinner/A40i/bsp/project /lichee/
# tar xvf qt-everywhere-opensource-src-5.9.0.tgz 
# cd /root/workspace/allwinner/A40i/bsp/project/lichee/buildroot-201611/dl/qt-everywhere-opensource-src-5.9.0
# cp ../setenvs.sh   ./
# source setenvs.sh #虛擬機編譯的話setenv.sh 97行修改成 -j 1 表示并行編譯的現成數量,否則死機
# makeconfig
# makeall
# makeinstall
# cd /root/workspace/allwinner/A40i/bsp/project /lichee/
# rm -fr `find ./linux-3.10 -name “*.o” ` #編譯前要刪除linux-3.10/*.o
# ./build.sh   


注意:編譯過程內核報錯,有兩種解決辦法:

方法1:

cd /root/workspace/allwinner/A40i/bsp/project/lichee/
rm -fr `find ./ linux-3.10 -name “*.o” `


方法2:

cd /root/workspace/allwinner/A40i/bsp/project/lichee/
cd  linux-3.10 make  distclean


步驟 4:打包


# cd /root/workspace/allwinner/A40i/bsp/project/lichee/
#./build.sh pack
/root/workspace/allwinner/A40i/bsp/lichee/tools/pack/sun8iw11p1_linux_OKA40i_C_uart0-1024x600.img


生成的燒寫鏡像

打包配置文件到燒寫鏡像;

    cd /root/workspace/allwinner/A40i/bsp/project/lichee

./build.sh pack

_ _ _

       

    好了,現在鏡像已經打包完成,可以燒寫到開發板了。其實全志平臺更換LCD屏難度系數并不大,小伙伴們可以參照上面的方式去試試哦。

相關產品 >

  • FETA40i-C核心板

    Allwinner A40i是全志開發的一款工業級處理器,A40i作為全國產工業級芯片中的佼佼者,采用更低功耗的4核ARM Cortex-A7架構,工作溫度-40-85℃,是一款高性能低功耗超高性能CPU主芯片。飛凌嵌入式深度研究全志A40i芯片參數、原理圖、datasheet規格書推出了以FETA40i核心板為主的一系列全國產工業級嵌入式計算機板卡,并提供了用于評估的A40i工控板、 A40i開發板。 了解詳情
    FETA40i-C核心板
  • OKA40i-C開發板

    國產工業級,高清輸出,豐富接口|OKA40i開發板采用底板+核心板結構,基于全志工控行業平臺級處理器四核Cortex-A7 A40i設計,主頻1.2GHz,集成MAli400MP2 GPU,內存1GB/2GB DDR3L,存儲8GB eMMC。 全志A40i工控行業芯片平臺 A40i為國產工控行業芯,全志A40i處理器代表了Allwin在智能工業控制領域的成就。飛凌嵌入式A40i系列OKA40i-C開發板是飛凌推出的一款中國芯,全國產級工業級開發板,適用于適用于基于視覺交互的工業控制產品 了解詳情
    OKA40i-C開發板

推薦閱讀 換一批 換一批