在使用HMI-Board開發板開發lvgl的GUI界面設計時,可以直接在官方提供的lvgl的demo中開發,這樣就可以省去lvgl最初的繁瑣配置步驟,這里真的要感謝官方,將最繁瑣的一步幫我們省去了,可以更加專注于LVGL的開發。
但是在這個基礎上再添加新組件,編譯的時候就會報出一些錯誤,如下圖所示。
報錯信息的話我看像是缺少一些文件,但如何添加這些文件我是不清楚的,但我是用另一種方法解決這個問題。下面直接說怎么做。
1、首先,進入RT-Thread Settings,將LVGL版本由latest更換為v8.3.1,并將LVGLdemo的使能關閉,最后將music的demo關閉,步驟如下圖順序所示。在Setting中找這些設置可以直接在右上角搜索lvgl,能夠快速確定這些設置的位置。
這樣組件配置就完成了,再添加其他組件就不會對工程造成影響了(其實并不是添加新組件導致bug,而是latest版lvgl的問題,僅個人見解,如有錯誤歡迎指正)。
2、然后將配置保存,再進入hal_entry.c文件中,添加一個lv_user_gui_init函數。這個函數現在是空的,需要自己添加自己的界面設計函數進去。
void lv_user_gui_init(void)
{
}
這個函數是GUI界面設計的入口函數,在rt-thread中,GUi的設計從這里開始。
3、編譯,編譯結果如下圖所示。
三個警告不用管它。
以上就是我針對HMI-Board開發板工程在添加新組件時LVGL組件會報錯的解決辦法。
下面的圖片是我簡單繪制的一個按鈕示例。
注意,我將lv_user_gui_init函數放在hal_entry.c文件中,僅是做一個展示,建議新建一個.c文件來存放lv_user_gui_init函數。這里提供一個樣例:
#include "rtconfig.h"
#include "lvgl.h"
void lv_user_gui_init(void)
{
lv_obj_t *switch1;
switch1 = lv_switch_create(lv_scr_act());
lv_obj_set_size(switch1, 100, 50);
lv_obj_set_align(switch1, LV_ALIGN_CENTER);
}
-
GUI
+關注
關注
3文章
677瀏覽量
41083 -
RT-Thread
+關注
關注
32文章
1396瀏覽量
41760 -
HAL庫
+關注
關注
1文章
121瀏覽量
6866 -
LVGL
+關注
關注
1文章
104瀏覽量
3638
發布評論請先 登錄
使用DAPLink在對HMI-Board進行固件燒錄,棧溢出如何解決?
請問在RT-Thread中怎么使用LVGL將SD內容顯示出來?
中科藍訊AB32VG1開發板使用AT組件連接ESP8266報錯
如何測量開發板上的組件?
限量預售|2D加速、JPEG硬解、超高性價比M4芯片,您的圖形評估利器——HMI-Board來啦!

聯合發布 | 2D加速、JPEG硬解、超高性價比M4芯片,您的圖形評估利器——HMI-Board來啦!

怎么解決HMI-Board在調試4bitSDHI掛載文件系統失敗的問題呢?

基于HMI-Board開發板的多參傳感器串口屏設計

【直播預告】HMI-Board Windows32

【直播預告】基于RT-Thread & LVGL RA6M3 HMI-Board兒童益智學習機

RA6M3 RT-Thread* LVGL HMI Board開發實踐指南-GPIO實踐

HMI-Board OTA升級快速上手指南

評論