打印
[GUI]

【STM32H750B-DK评测】添加交互函数点亮LED

[复制链接]
1654|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 jinyi7016 于 2022-8-26 10:00 编辑

@21小跑堂


GUI的最终目的是进行交互,所以,回我们最初的hello world的工程。添加几个用于交互的Button控件,当然其他的控件也是可以的,只是button比较好理解。

这里添加了三个不同类型的button控件,添加完成后进行布局,最后如下图所示:





为Bnt1添加交互。
interaction1由上到下为:触发事件,触发源,动作(调用新的虚函数),函数名,关联触发。
触发事件,触发源,动作都有很多项可以选择,可自行在软件中进行查看。这里选择的是最简单的点击事件。





使用CubeIDE打开工程,找到gui目录,
可以看到gui目录下有四个文件,其中的Model.cpp、Screen1View.cpp、Screen1Presenter.cpp,对应的是TouchGFX中的MVP架构。



首先,刚刚添加的button的调用的虚函数在TouchGFX\generated\gui_generated\src\screen1_screen\Screen1ViewBase.cpp中被定义。
这个文件是Screen1View的基类。一般不进行手动修改,而且文件属性是只读的。
我们可以看到Screen1View继承自Screen1ViewBase,所以,我们只修改Screen1View类就可以了。


所以,我们在子类Screen1View中实现调用的虚函数。
首先在Screen1View.hpp中添加bnt1Clicked函数的声明。





再在Screen1View.cpp文件中,具体实现bnt1Clicked函数。





再在presenter中实现btnClicked方法


再在Model里实现LED的方法
这里使用LD6,也就是PI13引脚,默认生成的工程中,这个引脚并没有进行配置,配置这个引脚的功能。






STM32CubeIDE中打开ico文件,配置GPIO引脚与功能。




重新生成代码。
并在Model实现LED灯翻转的程序。
注意添加头文件main.h,这样才能调用hal库。





程序下载后的运行效果:
















使用特权

评论回复
沙发
onlycook| | 2022-8-22 15:48 | 只看该作者
这种点亮方式挺有意思的

使用特权

评论回复
板凳
asmine| | 2022-8-23 20:15 | 只看该作者
这又是什么软件

使用特权

评论回复
地板
rosemoore| | 2022-8-25 09:09 | 只看该作者
lvgl搞起来。   

使用特权

评论回复
5
deliahouse887| | 2022-8-25 10:05 | 只看该作者
这个h750发热量挺大的吧。   

使用特权

评论回复
6
robertesth| | 2022-8-25 10:45 | 只看该作者
gfx吗?      

使用特权

评论回复
7
Uriah| | 2022-9-30 11:14 | 只看该作者

在开始电镀之前,必须先清掉孔内的杂物。

使用特权

评论回复
8
Bblythe| | 2022-9-30 14:13 | 只看该作者

在孔璧内部作金属处理后,可以让内部的各层线路能够彼此连接。

使用特权

评论回复
9
Pulitzer| | 2022-9-30 17:12 | 只看该作者

孔璧里头必须经过电镀

使用特权

评论回复
10
Wordsworth| | 2022-12-25 07:12 | 只看该作者

做多层板可将做好的两块双面板用特制的粘合剂“压合”起来

使用特权

评论回复
11
Clyde011| | 2022-12-25 08:15 | 只看该作者

清除与电镀动作都会在化学过程中完成

使用特权

评论回复
12
万图| | 2022-12-25 10:11 | 只看该作者

将整个表面铺上一层薄薄的铜箔,并且把多余的部份给消除

使用特权

评论回复
13
Uriah| | 2022-12-25 11:14 | 只看该作者

在开始电镀之前,必须先清掉孔内的杂物。

使用特权

评论回复
14
帛灿灿| | 2022-12-25 13:10 | 只看该作者

负片转印(Subtractive transfer)的方式将设计好的PCB线路板的线路底片“印刷”在金属导体上。

使用特权

评论回复
15
Bblythe| | 2022-12-25 14:13 | 只看该作者

在孔璧内部作金属处理后,可以让内部的各层线路能够彼此连接。

使用特权

评论回复
16
周半梅| | 2022-12-25 16:09 | 只看该作者

光绘出零件间联机的PCB设计布线

使用特权

评论回复
17
Pulitzer| | 2022-12-25 17:12 | 只看该作者

孔璧里头必须经过电镀

使用特权

评论回复
18
周半梅| | 2022-12-25 18:15 | 只看该作者

需要将阻焊漆(阻焊油墨)覆盖在最外层的PCB设计布线上

使用特权

评论回复
19
童雨竹| | 2022-12-25 19:08 | 只看该作者

PCB的制造过程由玻璃环氧树脂(Glass Epoxy)或类似材质制成的PCB“基板”开始

使用特权

评论回复
20
qbwww| | 2023-6-30 12:58 | 只看该作者
GUI的最终目的是进行交互,所以,回我们最初的hello world的工程。添加几个用于交互的Button控件,当然其他的控件也是可以的,只是button比较好理解。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

131

主题

1336

帖子

12

粉丝