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

【H745I GUI】1.GreenHouse 灯光控制

[复制链接]
jundao721 发布时间:2025-5-2 20:09
      喜欢养花的小伙伴们肯定都有去控制花房里的温度,灯光,湿度等这些影响植物的参数的想法。利用ST自身的软硬件可以完成预期的想法。这次使用TouchGfx designer和板载的LED(右边LED8),实现软硬件交互,并熟悉整个的设置过程。& c: G! N7 H% H. ~* }
效果如图1所示:% V! }$ ^1 F. \( h1 ~8 A+ b4 i9 `
20250502.gif : Q4 I' O' b5 c# f& t. y  c
图1" {/ M) L% D4 _; P' W+ t
/ a, w) f& h1 s8 J# T# ]7 N" d

! A8 F$ l  E! C+ e( D详细界面设计本次就不写了,这个都可以拖拽控件,背景图片自己PS一下光线效果。说说本次实现需要注意和遇到的问题。
; u( D6 c; ]8 T6 D3 m4 M" b7 o5 a% K$ Z+ J8 F6 a1 M# m
1.在touchgfx designer 4.25 中,Interaction交互界面增加要实现的功能,比如按钮与其他功能的交互。这里要实现和硬件交互,调用HAL库函数,需要增加一个虚拟函数,如图2所示:
" T3 q6 J8 S) G* n 1.png
" {+ }' v; \7 H. J图2
; c! u  c8 c6 [, D. m' I% o4 X你以为点击生成代码以后,会在项目中出现,实际在IDE项目文件中并没有出现,只能手动添加代码,如下所示:) f4 e/ |6 t  k& J$ O+ S% C" |7 w# P
  1. void MainView::ButtonClickedTurnOnLed()
    ! k6 o( C3 k1 p* |3 F6 K* [1 z
  2. {
    5 i0 K: @$ Q* n" |; E
  3.   HAL_GPIO_WritePin(GPIOD,GPIO_PIN_3,GPIO_PIN_SET);
    ! O3 m! }; Z/ ?/ w3 q( X
  4. }
    & o2 M! ?( c0 ~# ~, ]

  5. ' ^/ s* A- U" r1 e, n, ?  G
  6. void MainView::ButtonClickedTurnOffLed()
    " a6 G8 J. v; K7 C# p8 m2 A
  7. {' K1 W9 ^/ T- z
  8.   HAL_GPIO_WritePin(GPIOD,GPIO_PIN_3,GPIO_PIN_RESET);
    & [3 U3 D6 r  ^5 c3 ?( B" ~. v
  9. }
复制代码
2.为什么不用MDK。本打算在keil里修改,编译缺少porttable.h, 发现是项目自动生成后,这个文件的路径错了,修改路径后,又提示缺少port.c文件,添加后,有提示一堆错误,哈哈,放弃该,使用IDE。1 a# h/ U1 g- T+ b! I5 j# h
3.在IDE中手动添加定义的虚拟函数后,又不能Debug,错误如图3所示:, g7 U7 d' K& S
error2.png $ t' d0 h2 x& @  z) H. w
图3
1 h+ c; C3 w* s5 }" `但是在TouchGfx designer中可以download,很神奇,那就直接download吧。& }2 X4 S1 E8 x# j. V3 S
总体来说,使用过程中,不是特别理想,要是一边加控件一边修改代码是不是更方便一点,怎么能更容易实现想法,很多还需要慢慢摸索。
4 N. v* Y+ k2 G4 B. z& O6 t( e* \: ^0 Z- l: f
收藏 评论0 发布时间:2025-5-2 20:09

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版