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

【STM32H7S78-DK评测】TouchGFX 按钮操作-点亮LED

[复制链接]
BinWin 发布时间:2024-7-21 01:36
       上次已经发现了TouchGFX能够直接生成工程,且基础配置无需改动,那就摸索下如何把UI和硬件控制联系起来。
1 M0 k4 u( g+ X0 N  j+ ], H        首先屏幕上按键按下和抬起要有区别,选择不同的图标就能够实现,暂时使用自带图标资源。# [- C; c( v9 Q8 H# ~
         2.png $ a. T* ?0 }& D5 Y# t1 G' w- S
        
0 k: Q2 s4 _  m7 l: ^3 w  ]% {( P, O  B2 X  P" V3 w1 q
* ~6 m# s, E; c  l% {: v
        然后要给按键创建事件响应,在这里叫interaction。如下图,这里最好把名字改一下,方便自己在代码里一眼找出来。, h5 ?) I% L: q# J3 E
  I* [. J$ P* J2 m: q
         1.png ! j7 I+ i# f" I; ]5 l; A* T& u* M
        做完这些,就把界面上的工作搞完了,接下来生成新的工程,从程序里做功课。记得自己主界面的名字,因为下面我发现自己不好找了。比如默认是Screen1, 那在程序里的父窗口类就是ScreenViewBase,这个cpp文件在generate目录下,同时在软件界面勾选了要执行虚函数,且给命名为function_led。那么此时在cubeIDE里就能看到具体所在了,在头文件中是个公有成员函数。
' X  H0 R$ n1 I4 S9 |' h  I* d       5.png - Q; y7 }6 h3 a0 h6 }3 _1 q
        文件本身有写保护,需要先修改属性,然后改成定义形式,在cpp文件中去实现,保持代码的统一和查阅方便,将该虚函数重写就可以了。由于涉及到控制GPIO,本工程没有对LED灯做配置,所以要先找到LED的管脚并初始化。如LED1就是GPIOO的PIN1。
2 ^( l$ u) o& A- {+ F. w6 {- _3 f       3.png
0 V5 C" `5 ^! Z: p7 f0 j1 d; I        然后编辑函数内容,读取当前LED引脚电平并反转,就可以实现按钮按下开,再按下关的循环操作了。# i6 e+ ~; j6 m
       6'.png
$ V! s3 t& {) f2 ]0 L      这款屏的分辨率比较好,看着界面干净清晰。TouchGFX倒是和Qt有点相似,继续体验。演示视频如下2 _+ I( T# w. O$ G7 ]
       led.rar (5.54 MB, 下载次数: 3)
赞 收藏 评论0 发布时间:2024-7-21 01:36

举报

0个回答

所属标签

相似技术帖

官网相关资源

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