[APM32F4] 基于APM32F427的LVGL的UI界面开发——如何使用GUI Guider软件生成LVGL界面代码(二)
我在前面一篇文章《基于APM32F427的LVGL的UI界面开发——移植LVGL一》完成了LVGL的移植了下面我们基于这个工程进行LVGL的UI界面开发。进行UI界面开发我们不需要自己编写绘制界面的代码因为那样的代码很繁琐下面我将介绍如何使用 NXP 的 GUI Guider 软件绘制图形界面然后把生成的LVGL界面代码添加到工程实现绘图。1. GUI Guider软件的介绍和安装GUI Guider就是NXP的一款LVGL UI界面设计软件设计的界面可以生成LVGL代码然后导入我们的项目中也可以在他这个软件模拟开发。最重要的事这个软件免费使用。可以到下面官网下载和安装这个软件。官网https://www.nxp.com.cn/design/design-center/software/development-software/gui-guider:GUI-GUIDER下载完之后根据提示安装即可。2. GUI Guider软件使用和界面设计首次打开GUI Guider软件需要登陆NXP的账号到官网注册一下。2.1 新建GUI Guider工程1、打开GUI Guider。2、选择LVGL版本这里选择V8版本。3、选择模拟器运行当然也可以选择NXP已经做好的各种开发板运行的环境。4、选择空白的UI界面。也有NXP做好的各种界面示例供我们选择学习这个软件的UI开发那些NXP的示例也是很好的学习资料。5、设置工程名称保存路径还有显示屏的像素深度和分辨率等参数。2.2 整体界面介绍新建工程进入之后整体界面如下。最主要的恩就是常用的各种控件。2.3 添加控件进行界面设计1、点击左侧的控件栏可以拖拽各种控件的。我们拖拽一个按钮。2、添加标签调整屏幕背景颜色等等。3、支持中文字体。GUI Guider默认支持的中文字体是思源黑体。如果我们需要支持其他字体可以自己导入字体文件到这个软件。下面比如支持按钮的中文显示。以上就是一些简单的控件界面设计介绍其他控件使用大家可以自行摸索。2.4 如何添加事件每个控件都有他对应的各种LVGL事件的比如按钮有按下事件聚焦事件等等控件有什么事件可以查看LVGL对于各个控件的介绍。下面我们介绍下如何在GUI Guider软件对按钮控件添加事件。1、打开事件添加界面。2、添加按钮控件事件。以上就是添加了一个按钮的按下事件事件的响应代码可以是针对其他控件的呃也可以是自己自定义的代码。这里我示范演示按钮按下事件则改变标签1显示的内容。2.5 仿真运行设计的LVGL界面前面把界面设计和事件添加玩之后一个简单的界面就完成设计了。下面我们运行模拟器模拟界面的运行。1、生成C代码。2、模拟器运行结果。3. 把生成的界面代码移植到APM32F427显示3.1 生成的代码介绍前面模拟器运行之后就好生成LVGL绘图的代码。我们可以找到刚刚保存的目录如下生成的LVGL绘图代码主要时generated目录然后custom目录是用户绘图时的自定义代码。我们移植GUI Guider生成的代码主要就是把这两个目录的代码添加到我们的工程项目即可。下面我们介绍如何移植和添加到工程项目。3.2 复制生成的代码以及Keil工程配置1、把GUI Guider生成的绘图代码复制到自己的工程项目以便备用。2、打开自己的Keil工程项目添加文件。3、添加Keil编译路径。4、编译解决报错问题。编译结果如下可以看到有很多报错问题这个需要自己根据报错信息一一解决。解决过程我不记录了都是少了什么头文件啊或者啥根据报错提示解决即可。3.3 主函数代码的移植添加完成代码之后我们最重要的就是在主函数调用刚刚添加生成的代码的入口主函数代码如下复制#include main.h/* Private includes *******************************************************/#include apm32f4xx_device_cfg.h#include string.h#include stdbool.h#include log.h#include lvgl.h#include gui_guider.h#include events_init.h/* External variables *****************************************************/extern UART_HandleTypeDef huart1;/* External functions *****************************************************//***brief Main program** param None** retval None*/int main(void){/* Device configuration */DAL_DeviceConfig();setup_ui(guider_ui);events_init(guider_ui);/* Infinite loop */while (1){lv_task_handler();DAL_Delay(5);}}实际上最主要的就算在主函数调用UI界面代码的入口函数 setup_ui(guider_ui); 以及事件代码的初始化函数 events_init(guider_ui); 。调用了这两个函数之后生成的界面代码就运行起来了。以后添加的其他代码我们根据自己的项目情况添加界面控件或者其他事件的自定义代码等。4. 下载到APM32F427的运行效果前面移植添加完代码之后就可以烧录到板子进行运行代码了。我们这个工程是基于前面文章介绍已经把LVGL移植好了的工程。烧录代码至板子运行结果如下可以看到移植到具体的硬件项目我们运行的效果和在GUI Guider运行的效果是一模一样的。所以我们使用这个软件进行 LVGL 的 UI 界面设计是非常方便的不需要我们编写绘制界面的代码。下面的附件是生成的工程源码以供大家参考。Gui_Guider_Demo.zip(51.85 KB, 下载次数: 0)---------------------作者luobeihai链接https://bbs.21ic.com/icview-3501528-1-1.html来源21ic.com此文章已获得原创/原创奖标签著作权归21ic所有任何人未经允许禁止转载。

相关新闻

一点点了解数据通信,数据通信之传输速率介绍

一点点了解数据通信,数据通信之传输速率介绍

数据通信,一个极为熟悉的词汇。在网络时代,数据通信更是不可缺少的技术。因此,对于数据通信,我们应该具有一定的了解。为增进大家对数据通信的认识,本文将对数据通信的传输速率加以介绍。如果你对本文内容具有兴趣&…

2026/7/3 8:45:25 阅读更多 →
亲测好用!研究生专用降AIGC工具 —— 千笔·降AI率助手

亲测好用!研究生专用降AIGC工具 —— 千笔·降AI率助手

在AI技术迅猛发展的今天,越来越多的研究生开始借助AI工具辅助论文写作,以提升效率和内容质量。然而,随着学术审查标准的不断提高,AI生成内容的痕迹愈发明显,查重系统对AIGC的识别也愈加精准。这使得许多学生在享受AI便…

2026/5/17 3:27:15 阅读更多 →
基于单片机带时间及声光提示的八路抢答器设计

基于单片机带时间及声光提示的八路抢答器设计

文章目录一、系统介绍二、效果图源码获取一、系统介绍 基于单片机带时间及声光提示的八路抢答器设计介绍 一、设计背景与核心目标 在知识竞赛、技能问答等场景中,传统抢答器存在功能单一、计时精度不足、无法屏蔽违规抢答等问题。基于单片机的八路抢答器通过软硬件…

2026/5/17 7:11:28 阅读更多 →

最新新闻

从测试框架到智能体:构建自适应Web自动化测试新范式

从测试框架到智能体:构建自适应Web自动化测试新范式

1. 项目概述:从“无Harness”到“测试Agent”的自动化测试新范式最近在团队里推动Web自动化测试落地时,我们遇到了一个经典困境:测试脚本的维护成本高得吓人。每次前端页面改个按钮ID、加个CSS类名,或者后端接口字段调整&#xff…

2026/7/3 8:44:28 阅读更多 →
软考与华为认证路径全拆解,从报名周期、考试难度到续证成本,一文看透隐藏成本!

软考与华为认证路径全拆解,从报名周期、考试难度到续证成本,一文看透隐藏成本!

更多请点击: https://intelliparadigm.com 第一章:软考与华为认证HCIP/HCIE区别 软考(全国计算机技术与软件专业技术资格(水平)考试)与华为认证(HCIP/HCIE)在定位、目标人群、知识体…

2026/7/3 8:42:27 阅读更多 →
软考高级/中级/初级证书继续教育学分要求全对比,3张表说清每年必修24学分背后的逻辑与替代方案

软考高级/中级/初级证书继续教育学分要求全对比,3张表说清每年必修24学分背后的逻辑与替代方案

更多请点击: https://intelliparadigm.com 第一章:软考证书继续教育学分制度的政策演进与核心定位 软考(计算机技术与软件专业技术资格(水平)考试)证书持有人的继续教育学分管理,是国家对信息技…

2026/7/3 8:42:27 阅读更多 →
OpenCode模型配置与切换:本地AI编程的可控性实践

OpenCode模型配置与切换:本地AI编程的可控性实践

1. 项目概述:这不是一个“装完就能用”的玩具,而是一把需要亲手校准的代码刻刀 OpenCode——这个名字在2024年中后期开始频繁出现在国内开发者社区的技术分享帖、内部工具链讨论组和AI辅助编程评测报告里。它不是GitHub Copilot的平替,也不是…

2026/7/3 8:40:27 阅读更多 →
5步彻底解决OFD文件兼容性问题:开源转换工具实战指南

5步彻底解决OFD文件兼容性问题:开源转换工具实战指南

5步彻底解决OFD文件兼容性问题:开源转换工具实战指南 【免费下载链接】Ofd2Pdf Convert OFD files to PDF files. 项目地址: https://gitcode.com/gh_mirrors/ofd/Ofd2Pdf 你是否曾经因为收到OFD格式的电子发票而无法在手机上查看?是否因为政府发…

2026/7/3 8:38:26 阅读更多 →
AI知识库投喂:企业智能化的关键一步

AI知识库投喂:企业智能化的关键一步

于企业智能化转型的浪潮里面, AI知识库已然变成提升工作效率以及决策质量的核心工具。可是呢, 好多企业在部署AI知识库之际, 常常忽视了“投喂”这个关键环节。所说的“投喂”, 是把企业内部的结构化还有非结构化数据, 像项目文档、会议纪要、客户资料、技术手册等, 有系统地输…

2026/7/3 8:38:26 阅读更多 →

日新闻

Nginx防御TLS重协商攻击实战:从原理到配置与监控

Nginx防御TLS重协商攻击实战:从原理到配置与监控

1. 项目概述:为什么TLS重协商攻击至今仍需警惕十多年前的CVE-2011-1473,一个关于TLS/SSL协议重协商机制的漏洞,现在提起来还有必要吗?很多运维和开发朋友可能会觉得,这都老掉牙了,现代服务器和客户端不都默…

2026/7/3 0:03:59 阅读更多 →
华为防火墙双通道远程管理实战:Web与SSH配置详解

华为防火墙双通道远程管理实战:Web与SSH配置详解

1. 项目概述:为什么需要双通道远程管理防火墙?在任何一个稍具规模的企业网络里,防火墙都是那个默默守护在边界的关键角色。作为网络工程师,我们不可能每次都跑到机房,插上console线去配置它。远程管理能力,…

2026/7/3 0:03:59 阅读更多 →
AD74413R与PIC18F65K40的高精度工业数据采集方案

AD74413R与PIC18F65K40的高精度工业数据采集方案

1. 项目概述:AD74413R与PIC18F65K40的协同工作在工业自动化和精密测量领域,同时实现高精度模数转换(ADC)和数模转换(DAC)功能是许多复杂系统的核心需求。AD74413R作为一款四通道可配置模拟输入/输出器件,与PIC18F65K40微控制器的组合&#xf…

2026/7/3 0:05:59 阅读更多 →

周新闻

月新闻