基于OneOS-Lite適配LVGL8.2

1.前言

LVGL7.9很早就已經(jīng)在OneOS-Lite適配支持了,隨著LVGL的版本迭代,LVGL8.2配合squareline可視化開發(fā)工具成了更好的選擇。因此,OneOS-Lite也一并支持了LVGL8.2版本。
此篇文章,則是講講基于OneOS-Lite適配LVGL8.2的過程,以供分享。

2.LVGL目錄結(jié)構(gòu)

[圖片上傳失敗...(image-c47ef1-1652341967083)]

[圖片上傳失敗...(image-456429-1652341967083)]

由上圖可見,摒棄雜亂,最有用的也就是:

  1. demos:可用于演示LVGL的圖形效果,比如LVGL官網(wǎng)的demo就是它
  2. examples:可用于學(xué)習(xí)時,作為示例使用。更重要的是里面的porting文件夾是移植的關(guān)鍵
  3. src:LVGL最關(guān)鍵的源碼都在里面了
  4. lv_conf_template.h:也是移植的關(guān)鍵哦,通過它可用于配置LVGL里面的功能
  5. lvgl.h:是LVGL里面的頭文件的總包含哦,只需要include lvgl.h,就可以包含所有其中頭文件啦

[圖片上傳失敗...(image-85d53c-1652341967083)]

3.移植

可以先看看移植好的目錄結(jié)構(gòu):

[圖片上傳失敗...(image-a436da-1652341967083)]

其中:

  1. lv_demo.c主要用于通過配置,快速在OneOS-Lite上實(shí)現(xiàn)demo的運(yùn)行
  2. lv_ex.c主要用于通過配置,快速在OneOS-Lite上實(shí)現(xiàn)example的運(yùn)行
  3. lv_port_disp.c是參考lv_port_disp_template.c,用于適配顯示相關(guān)
  4. lv_port_indev.c是參考lv_port_indev_template.c,用于適配輸入相關(guān)
  5. lv_port_init.c是用于把LVGL以一個組件的形式,置入OneOS-Lite中,以便啟動時自動初始化

另外,其外層還有兩個文件需要注意:

[圖片上傳失敗...(image-a220-1652341967083)]

其中:

  1. lv_conf.h是參考lv_conf_template.h,用于配置LVGL的相關(guān)功能
  2. kconfig是和OneOS-Lite的cube工具關(guān)聯(lián),用于配置時可對LVGL的各個功能進(jìn)行配置,配合lv_conf.h使用,非常方便

[圖片上傳失敗...(image-8fda5-1652341967083)]

4.關(guān)注&&聯(lián)系

開源輕量操作系統(tǒng): https://gitee.com/cmcc-oneos/OneOS-Lite

docs文檔中心: https://oneos-lite.com/

知知乎乎:蓁蓁

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容