GUIGuider的使用

看文档使用

docs.nxp.com/bundle/GUIGUIDERUG_1.9.1/page/topics/welcome.html

代码结构

使用GUI Guider生成的代码目录如下:接下来对其进行介绍

image-20250603170435978

  • Custom/
    自定义代码和LVGL扩展配置(custom.c/h为自定义事件实现,lv_conf_ext.h为扩展配置,custom.mk为Makefile片段)。

  • Generated/

    GUI Guider自动生成的所有核心代码和资源,包括:

    • 字体文件夹(guider_customer_fonts/、guider_fonts/)

    • 图片资源文件夹(images/)

    • 事件处理(events_init.c/h)

    • 界面创建和入口(gui_guider.c/h)

    • 主界面/布局(setup_scr_screen.c)

    • 控件初始化(widgets_init.c/h)

    • generated.mk为Makefile片段

  • LVGL Simulator/
    LVGL仿真用的配置和头文件(大部分用于PC端测试或仿真环境)。

  • Project/
    GUI Guider项目的元数据,仅供GUI Guider软件编辑用(如project.json、ui.json)。

GUI Guider移植代码到MCU

通用移植思路

准备工作:

确保MCU具有足够的RAM和ROM,且有对应的显示屏驱动(逻辑的LCD点亮),触摸屏需要触摸驱动可以正常读取坐标。

  1. 在基本工程中,移植LVGL源码

    • 下载源码,移入工程(包含lv_conf.h配置文件),修改对应参数
    • 完成LVGL和显示屏/触摸屏的对接
  2. 移植GUI Guider生成的代码和资源

移植仅需要GUI Guider工程中的customgenerated文件夹即可

image-20250603171031690

在项目的src文件夹中新建GUI_APP文件夹

image-20250603171352186

customgenerated文件复制到GUI_APP中即可,如果是Keil的话还需要将这两个文件夹添加到工程中

image-20250603171625902

  1. 工程入口初始化

    • 初始化对应屏幕驱动和lvgl初始化等等
  2. 事件和业务逻辑实现

    • 在custom.c实现你的控件事件响应、与硬件/外设交互等“业务代码”。
    • 保持和生成代码分离,便于日后GUI变更时复用自定义逻辑。

总结

  1. 先移植LVGL和驱动,确保LVGL demo能显示
  2. 再导入GUI Guider生成的全部代码和资源
  3. main中初始化LVGL并加载GUI Guider界面
  4. custom.c中实现或扩展业务功能和逻辑

移植到STM32

移植到ESP32