谷谷小师妹 发表于 2023-11-23 20:23:04

RT-Thread 模拟器 simulator 搭建 LVGL 的开发调试环境

RT-Thread 模拟器 simulator 搭建 LVGL 的开发调试环境


前言
[*]RT-Thread 当前的版本:4.1.0,通过简单的配置就可以支持最新的LVGL图形库,LVGL图形库以软件包的方式加入工程
[*]LVGL 可以认为是当前开源、免费的优秀GUI的图形库,对内存的占用较小,适合用于嵌入式的设备中

开发环境
[*]由于基于电路板的调试环境,需要不断的通过编译、下载程序的方式验证【页面显示】效果,所以开发效率比较的低
[*]基于模拟器的开发调试,可以使用LVGL的官方模拟器开发
[*]RT-Thread 的模拟器 simulator,是基于RT-Thread 操作系统的,也就是基于这个模拟器开发的LVGL 程序,验证好,再换个编译器下载调试,就可以很快的在RT-Thread 操作系统的硬件板子上验证出来

最小RT-Thread 系统
[*]可以建一个 RT-Thread 最小系统,也就是 RT-Thread 内核与 BSP : simulator,这样体积比较小,利用代码的搜索,工程的管理,利于使用Git等软件版本控制
[*]新建一个工程目录,在工程目录下,新建 rt-thread 与 simulator目录

[*]由于目录的改变,会造成 RT-Thread menuconfig、scons 构建报路径的错误,简单修复一下即可
开启 LVGL
[*]LVGL 不包含在 RT-Thread 中,需要开启LVGL的软件包,并且需要把远程的软件包拉取到本地目录
[*]RT-Thread ENV 工具:menuconfig -> RT-Thread online packages ---> -> multimedia packages --->

[*]注意:只是开启了LVGL软件包,编译会报错,因为这只是开启了LVGL软件包的配置,还需要把LVGL软件包拉取到本地,使用RT-Thread ENV工具:pkgs --update

[*]注意LVGL软件包有了,编译可能还是会报错,因为还需要开启 【BSP_USING_LVGL】 这个宏,也就是开启LVGL的RT-Thread Demo配置

[*]这样,保存menuconfig 修改,RT-Thread ENV 工具 再次运行:scons --target=vs,即可生成Visual Studio的工程,我这里使用:Visual Studio 2022 打开, project.vcproj
[*]编译通过后,就可以调试运行了

按键Demo
[*]学习新东西一般都是【循序渐进】,所以这里先运行一个简单的【按钮】的显示Demo
[*]修改:simulator\applications\lvgl\demo\lv_demo.c 中的 lv_user_gui_init,添加 【按钮显示】的Demovoid lv_user_gui_init(void)
{
    /* display demo; you may replace with your LVGL application at here */
    //extern void lv_demo_music(void);
    //lv_demo_music();
    extern void lv_example_btn_1(void);
    lv_example_btn_1();
}

[*]运行效果:
小结
[*]可以根据LVGL 的Demo,自己新建几个Demo文件,把相关的代码拷贝过来,修改运行
[*]因为是基于PC 的 RT-Thread 模拟器,所以不需要频繁的下载,也就是修改完,就可以马上编译运行,运行、验证、调试的效率大大的提高了

页: [1]
查看完整版本: RT-Thread 模拟器 simulator 搭建 LVGL 的开发调试环境