你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)

[复制链接]
donatello1996 发布时间:2025-5-19 11:38
       GUI解决方案的实训后半部分为编译运行TouchGFX咖啡机例程,这个部分更为耗时,从ST官方人员讲解,到动手实操,再到修改首页界面的咖啡加热圆形进度圈,用时3个半小时,从下午3点开始紧凑进行到下午6点半,中间遇到的问题也都要一一解决。
. M; {  v; d$ V! B要运行TouchGFX咖啡机例程,必须先在TouchGFX4.25目录下添加正点原子H7R7开发板的TPA文件,即对该开发板的底层硬件初始化配置,包括液晶屏驱动库,触摸屏驱动库,系统定时器,中断等等,该目录为TouchGFX安装目录的\app\packages目录下,还有对TouchGFX界面的初始化DEMO,也是TPA文件(TGUI-CoffeeMachine-WS7-P30-1.0.0.tpa TGUI-CoffeeMachine-WS7-P31-1.0.0.tpa TGUI-CoffeeMachine-WS7-P32-1.0.0.tpa):+ z/ x4 E2 l* q2 E
13.JPG
6 U3 Z& F) ~" Y2 |7 C5 F这样,在打开TouchGFX的时候才可以正确选择开发板型号及DEMO选项:! \* K8 d( j& N8 d: `+ `1 v" V/ r, q
14.JPG
& C) h/ P7 w/ d
9 @. ^, Y5 f" t, @* p创建例程之后,简单浏览一下各个界面的组成控件,如Screen,一个Screen代表一个界面,创建多个Screen就可以在多个界面之间来回切换,功能类似于LVGL和QT的TableWidget;box为背景色控件,添加交互控件之前必须先添加box作为基础;button为按键控件,TouchGFX的按键是可以添加Label icon和image的,也就是文字按键、图标按键和图像按键;tileImage为实现界面水波纹的控件;circleProgress就是圆形进度圈了;还有Interaction(交互),用于实现按钮切换屏幕,tick定时器定时触发事件等等。: E& n: C" b' ~9 X
15.JPG 16.JPG " h7 B' n( l- [! k
; r! d: I- ?8 c; w& P* k
右下角三个按钮分别为代码生成 桌面模拟器 编译并烧录:7 ?" f4 V" t+ a' e( k( s- A9 d
17.JPG
/ b) e- b; F0 n; E! R6 G" o1 ~! z, L. F* {) M2 q5 ]- D+ @
如果想要在Windows桌面端模拟这个TouchGFX工程的运行结果,那就需要先生成代码,然后点击桌面模拟器,运行环境为MSVC:
: Z3 k5 z) c2 ~! T4 s. C/ O% e# o
18.JPG gif1.gif 4 E, t' C8 ?: |, F; x! i+ O

5 P. p7 b5 Z) j, ~9 \$ e5 }, {
如果只需要生成烧录到开发板上面的固件,那就在代码生成后运行最右边的按钮即可。这里需要提一点,由于STM32H7R7的开发板RAM资源有限,因此必须限制RGB图像格式为压缩格式,这样会大大增加编译时间,但是必须选择这点,不然是无法编译成功的:) |4 Y! c  U' n2 L. m1 ~
19.JPG
+ b8 _$ J; _+ g
7 |" _, S5 M( T+ M5 W  Q
然后就是依次烧录TouchGFX工程的Boot固件和APP固件,具体烧录方式参考上帖,但是这里需要注意的是,烧录APP固件所用的外部FLASH算法也跟上一帖不同,为EML_MX25UM51245G_STM32H7S7L8H6.stldr:8 T# f. Y# l1 |% M4 z8 S* t
20.JPG 21.JPG 22.JPG
6 ~0 t/ |9 X4 x
7 L- ^4 s$ F1 @! F5 ]
烧录成功后,上机实测的演示效果:
- g8 |7 r( O) l1 ?
. C0 _( {; q% O$ ]/ G( Y/ f7 \

2 o1 t! Q) `4 y6 w9 B
. o; n7 d/ T0 ~2 C+ E. D
赞 收藏 评论1 发布时间:2025-5-19 11:38

举报

1个回答
donatello1996 回答时间:2025-5-20 11:46:19
gif2.gif
3 h9 }1 ^4 {+ f& c% E; B3 R* _3 q5 l如图,可以看出,实训提供的TPA文件,可能对DMA2D初始化那块还需要修改一下刷屏代码,不然花屏现象非常严重。5 n3 j- s! x+ H% D8 w8 L

& I, [! s& N8 [# d9 @( n8 D" C
. y! x% _0 A" Y( X0 q9 v* U4 n

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版