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

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

[复制链接]
BinWin 发布时间:2024-7-21 01:36
       上次已经发现了TouchGFX能够直接生成工程,且基础配置无需改动,那就摸索下如何把UI和硬件控制联系起来。/ [1 M/ r- U7 _/ z
        首先屏幕上按键按下和抬起要有区别,选择不同的图标就能够实现,暂时使用自带图标资源。9 v/ ^( H; W% a3 b( a
         2.png # ?, f2 `$ T' N# {/ e/ g
        $ X7 R, b5 Q; [8 q4 Z8 b0 T* W9 K

& ^3 h& q# D  D& `; }3 }- n
0 O* e9 }/ {& u        然后要给按键创建事件响应,在这里叫interaction。如下图,这里最好把名字改一下,方便自己在代码里一眼找出来。+ L0 R- V0 B+ t! ?
) m6 P" Z- m' h
         1.png
! |3 k1 n$ u8 f6 W        做完这些,就把界面上的工作搞完了,接下来生成新的工程,从程序里做功课。记得自己主界面的名字,因为下面我发现自己不好找了。比如默认是Screen1, 那在程序里的父窗口类就是ScreenViewBase,这个cpp文件在generate目录下,同时在软件界面勾选了要执行虚函数,且给命名为function_led。那么此时在cubeIDE里就能看到具体所在了,在头文件中是个公有成员函数。8 i$ ~, [8 ~/ Q) ?7 C
       5.png * p) s- g" _: M5 L/ R
        文件本身有写保护,需要先修改属性,然后改成定义形式,在cpp文件中去实现,保持代码的统一和查阅方便,将该虚函数重写就可以了。由于涉及到控制GPIO,本工程没有对LED灯做配置,所以要先找到LED的管脚并初始化。如LED1就是GPIOO的PIN1。
$ E6 o. q0 C4 T# C       3.png
% v: ?$ D/ b" `        然后编辑函数内容,读取当前LED引脚电平并反转,就可以实现按钮按下开,再按下关的循环操作了。( m6 D3 G" |+ s+ b3 Q- J% m' V
       6'.png
- }' P3 m! d+ x* g      这款屏的分辨率比较好,看着界面干净清晰。TouchGFX倒是和Qt有点相似,继续体验。演示视频如下) n# L& x. j0 Q1 K/ E) G
       led.rar (5.54 MB, 下载次数: 3)
赞 收藏 评论0 发布时间:2024-7-21 01:36

举报

0个回答

所属标签

相似技术帖

官网相关资源

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