準(zhǔn)備工作
一種方式是像LVGL | lvgl最新版本在STM32上的移植使用
這篇文章的方式一樣,從頭一步一步來搭建基于framebuffer的工程,自己編寫Makefile文件。需要下載:
lvgl
lv_drivers
lv_examples
這些可以在lvgl官方GitHub找到。
然后建立一個工程,把需要用到的文件復(fù)制到工程里,編寫Makefile文件即可。
除此之外,lvgl官方倉庫也有提供基于Linux frame buffer的移植工程:lv_port_linux_frame_buffer,我們直接下載下來修改一些代碼適配我們的板子就可以。
lvgl快速實踐
文章篇幅有限,我們就不一步一步演示移植步驟了。我們直接下載lv_port_linux_frame_buffer拿過來進(jìn)行修改即可,就可以快速跑起來。
我們可以使用git clone --recurse-submodules命令下載,也可以直接下載。
我們選擇直接下載,下載得到的lv_port_linux_frame_buffer內(nèi)容為:
此時,lvgl、lv_examples、lv_drivers這三個文件夾內(nèi)的內(nèi)容是空的,我們需要下載相關(guān)資源放進(jìn)去。比如:
接下來可以修改工程了,需要修改的地方也很簡單,但前提是我們的設(shè)備已經(jīng)有顯示驅(qū)動與觸摸屏驅(qū)動。
1、修改編譯器
首先需要修改Makefile,因為我們需要在板子上跑,所以需要使用交叉編譯器:
2、修改分辨率
修改lv_conf.h文件里的LV_HOR_RES_MAX、LV_VER_RES_MAX宏為實際屏幕大小,如:
3、使能fb設(shè)備
修改lv_drv_conf.h文件里的USE_FBDEV宏來使能Linux frame buffer device (/dev/fbx),如:
4、使能輸入設(shè)備
修改lv_drv_conf.h文件里的USE_EVDEV宏來使能輸入事件設(shè)備,如:
其中,你的板子的輸入事件可能不是event1,根據(jù)實際進(jìn)行修改。可以使用cat命令來測試一下你板子的觸摸屏輸入對應(yīng)的是哪一個event,如:
此時,觸摸一下屏幕,則終端會有信息(亂碼信息)輸出,則說明當(dāng)前板子的觸摸輸入對應(yīng)的就是這個event。
5、添加輸入初始化
在main.c初始化并注冊一個輸入設(shè)備,如:
6、添加lvgl心跳
在main.c添加lv_tick_inc函數(shù)的調(diào)用,如:
然后就可以跑跑一些實例demo了,有些demo需要使能lv_conf.h文件里的一些配置,否則編譯會報錯,根據(jù)編譯報錯信息修改相關(guān)配置項即可。
編譯成功之后,會在lv_port_linux_frame_buffer工程主目錄生成一個名為demo的可執(zhí)行文件。
傳到板子里運(yùn)行:
審核編輯:劉清
-
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3625瀏覽量
129764 -
Linux系統(tǒng)
+關(guān)注
關(guān)注
4文章
596瀏覽量
27510 -
GUI
+關(guān)注
關(guān)注
3文章
662瀏覽量
39894 -
LVGL
+關(guān)注
關(guān)注
1文章
91瀏覽量
3086
原文標(biāo)題:LittlevGL + Framebuffer的適配例子分享!
文章出處:【微信號:Linux大陸,微信公眾號:Linux大陸】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
LVGL工具使用
在嵌入式linux上如何去運(yùn)行LVGL呢
lvgl移植的相關(guān)資料下載
LVGL移植教程相關(guān)資料分享
【賽昉科技昉·星光RISC-V單板計算機(jī)試用體驗】測評視頻第一篇之基于framebuffer的HDMI顯示輸出測試
N32G457快速移植LVGL圖形庫的方法
LVGL系列(二)之二 LVGL常見問題解答 整理自官方文檔
![<b class='flag-5'>LVGL</b>系列(二)之二 <b class='flag-5'>LVGL</b>常見問題解答 整理自官方文檔](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
【開鴻智谷NiobeU4開發(fā)板免費試用體驗】lvgl移植及實現(xiàn)ADC按鍵狀態(tài)顯示
![【開鴻智谷NiobeU4開發(fā)板免費試用體驗】<b class='flag-5'>lvgl</b><b class='flag-5'>移植</b>及實現(xiàn)ADC按鍵狀態(tài)顯示](https://file.elecfans.com/web2/M00/6D/F7/poYBAGM8Ty6AFzp6AAE3CIcYbw8508.png)
【開鴻智谷NiobeU4開發(fā)板免費試用體驗】移植LVGL
![【開鴻智谷NiobeU4開發(fā)板免費試用體驗】<b class='flag-5'>移植</b><b class='flag-5'>LVGL</b>](https://file.elecfans.com/web2/M00/6C/F1/pYYBAGMwUf6AZ-ZjADgze1tGwbU222.png)
【賽昉科技昉·星光RISC-V單板計算機(jī)試用體驗】測評視頻第一篇之基于framebuffer的HDMI顯示輸出測試
![【賽昉科技昉·星光RISC-V單板計算機(jī)試用體驗】測評視頻第一篇之基于<b class='flag-5'>framebuffer</b>的HDMI顯示輸出測試](https://file.elecfans.com/web2/M00/7B/26/pYYBAGNzBzOAT-NsAAER_pNtslw764.png)
Hi3861移植LVGL教程
![Hi3861<b class='flag-5'>移植</b><b class='flag-5'>LVGL</b>教程](https://file1.elecfans.com/web2/M00/82/DE/wKgaomRlfmCACm_OAAAbgpDRobE013.png)
評論