目录
一、简介
GUI Guider是恩智浦提供的用户友好型图形用户界面开发工具,可通过开源LVGL图形库快速开发高品质的显示。GUI Guider的拖放编辑器可以轻松利用LVGL的众多特性,如小部件、动画和样式来创建GUI,而只需少量代码或根本无需任何代码。
GUI Guider 1.8.1支持LVGL 8.3.10版本
GUI Guider 1.4.0支持LVGL 7.10.1和LVGL 8.2.0版本
二、工程创建
使用GUI Guider创建新项目,选择默认模拟器,使用空模板,因为本次使用的是1024*600的7寸RGB屏幕所以我们需要创建一个自定义的面板类型,点击创建即可使用。
三、GUI设计
通过可视化窗口左上角菜单栏可以选择部件并创建。
建议:①图层页面命名规范。
②创建部件命名规范(依照位置规定部件序号),之后编写逻辑代码时会更方便。
③在设置字体时建议都是用一种字体并减少字号的种类,缩小代码体积。
通过右键或者下方菜单栏可以增加部件的事件,可以先简单设置每个界面之间的逻辑。
四、模拟测试
通过点击上方菜单栏的生成代码、模拟器运行等,可以模拟仿真当前设计的LVGL。
五、系统设置
在顶侧工程选项卡中可以进行系统设置,可以与实际硬件相结合修改键盘是否显示,和模拟器内存大小等。
六、代码移植
1.GUI Guider文件移植
GUI Guider生成的文件结构如下,我们移植到单片机中的LVGL文件只需要custom和generated文件夹。将两个文件夹复制到单片机文件中的LVGL/GUI_APP目录中。
2.Keil设置
在我们的Keil工程中创建存放LVGL_GUI的工程分组,然后添加我们导入的文件路径。
在新建的GUI_APP分组中将复制过来的.c文件全部添加进来。
3.Keil代码修改
①在代码引用临界区添加Gui Guider生成的头文件
#include "../generated/gui_guider.h"//引用GUI头文件
#include "../generated/events_init.h"//引用GUI事件头文件
#include "custom.h"//GUI客户代码文件
②定义guider_ui结构体全局变量
lv_ui guider_ui;//GUI结构体定义
③添加Guider的注册函数
/*LV_SPRINTF_USE_FLOAT开启打印浮点数*/
custom_init(&guider_ui);//变量初始化
setup_ui(&guider_ui);//GUI初始化
events_init(&guider_ui);//GUI事件初始化
七、演示效果
八、问题解决
1.路径改变
复制别人的工程时,无法编译关联运行,显示如下报错。
错误原因:makefile里面的文件依赖关系有问题,导致头文件找不到。
解决办法:打开编译相关模块的makefile文件,找到.o文件的依赖关系,找到.h文件的路径,查看是否出错并改正。(直接找到build文件夹将其删除掉,然后重新编译构建工程即可)
原因分析:这种情况有时候是因为工程所在的目录改变,例如原来在C盘,现在移到了D盘,而makefile里面的.h文件路径没有改变。