【STM32H7S78-DK】测评+图形库的应用TouchGFX初探
[复制链接]
原计划是要移植LVGL的,但是在看了一些资料后,发现LVGL暂时不支持STM32H7S78的高性能图形引擎GPU,在详细了解了相关资料后,发现还是ST自家的TouchGFX对齐支持最完善,能够充分发挥其高性能图形特性。TouchGFX框架包含易于使用的拖放式图形构建PC工具TouchGFX Designer (TouchGFXDesigner)以及强大的优化图形处理内核TouchGFX引擎。结合WYSIWYG仿真器和自动代码生成功能,TouchGFX大大简化了GUI开发。TouchGFX拥有自己的上位机TouchGFX Designer用于开发图形UI,当前版本是4.24.1,笔者下载的就是这个版本,而且TouchGFX也集成到了STM32CubeMX生态中,使用起来十分方便。本帖初步探索TouchGFX的应用,后续利用TouchGFX实现电压采集波形的刷新展示。
使用软件:
TouchGFX Designer(4.21.4)
STM32CubeIDE(自家的IDE,支持最完善)
下载安装好TouchGFX Designer,打开软件,在home主页点击新建项目按钮,就可以开始了,当前版本相比以往的版本优化不少,使用起来十分流程:
在搜索框搜索板卡关键字即可,通过板卡模板创建项目的好处是,各种外设都帮我们配置好了,十分方便快速体验demo和创建项目:
在屏幕1中我加入了一张图片作为背景,然后加入了一个按钮,按钮有多种样式和尺寸可选,这里选的是翻转样式:
然后是配置按钮的参数,主要是按下后触发的回调名称,这里就使用默认的function1了:
点击右下角按钮或者按F4生成工程:
生成工程后,可以在电脑上仿真运行,查看UI基本效果:
也可以直接点击编译下载,将工程烧写到开发板上运行观看效果:
使用stm32cubeide导入工程,添加一个GPIO控制LED:
然后保存更新下代码,在生成的代码中,很容易就能找到需要用户添加逻辑的部分,在User/gui/Screen11view.cpp中添加按键翻转LED的控制代码,这里的函数名和之前创建按钮填入的回调名称一致:
在类中添加声明:
效果
WeChat_20241027222945
|