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

【H745I GUI】1.GreenHouse 灯光控制

[复制链接]
jundao721 发布时间:2025-5-2 20:09
      喜欢养花的小伙伴们肯定都有去控制花房里的温度,灯光,湿度等这些影响植物的参数的想法。利用ST自身的软硬件可以完成预期的想法。这次使用TouchGfx designer和板载的LED(右边LED8),实现软硬件交互,并熟悉整个的设置过程。5 P$ @8 r4 y1 q) e) n
效果如图1所示:
9 `9 e: Z- q& |4 }2 i 20250502.gif 5 A1 U8 ?" V2 C: T( K+ ]
图12 n7 V! U+ V7 k
: S1 \  G+ q! p% Z
/ t: m  I+ a7 M; `0 ~+ Y
详细界面设计本次就不写了,这个都可以拖拽控件,背景图片自己PS一下光线效果。说说本次实现需要注意和遇到的问题。7 G' V& V5 H5 Y5 q" K9 w* ~

! S/ N8 }) h: B, F+ k0 U& _1.在touchgfx designer 4.25 中,Interaction交互界面增加要实现的功能,比如按钮与其他功能的交互。这里要实现和硬件交互,调用HAL库函数,需要增加一个虚拟函数,如图2所示:
. z0 |5 i% r" z  v8 ?* n* s 1.png
% `( G/ n: W4 ~4 l; q: H3 N图2
6 Q5 S" K! h1 g6 I& u你以为点击生成代码以后,会在项目中出现,实际在IDE项目文件中并没有出现,只能手动添加代码,如下所示:
/ X% |1 u9 {5 M1 T
  1. void MainView::ButtonClickedTurnOnLed()
      p! C6 c4 {; O. V1 U
  2. {
    5 X) c; v; Q8 W5 ~' q4 h' B
  3.   HAL_GPIO_WritePin(GPIOD,GPIO_PIN_3,GPIO_PIN_SET);
    ( j+ m- h& }+ d; w1 X% x" ]
  4. }) q8 ?+ R" t- h# v
  5. . e) G3 B1 ^4 z7 `. B
  6. void MainView::ButtonClickedTurnOffLed()7 L5 s" g5 p4 b
  7. {' E' p, y; b! i) N
  8.   HAL_GPIO_WritePin(GPIOD,GPIO_PIN_3,GPIO_PIN_RESET);
    ) I& K2 m3 F. i* I, X( A
  9. }
复制代码
2.为什么不用MDK。本打算在keil里修改,编译缺少porttable.h, 发现是项目自动生成后,这个文件的路径错了,修改路径后,又提示缺少port.c文件,添加后,有提示一堆错误,哈哈,放弃该,使用IDE。3 C+ c$ I9 Q( }
3.在IDE中手动添加定义的虚拟函数后,又不能Debug,错误如图3所示:
  d, L, X9 p0 s8 t2 _ error2.png ! E  A6 C4 g4 i
图3
) x: s/ o) E3 y2 N但是在TouchGfx designer中可以download,很神奇,那就直接download吧。
3 m& F& `& c/ t5 F: a/ X' h总体来说,使用过程中,不是特别理想,要是一边加控件一边修改代码是不是更方便一点,怎么能更容易实现想法,很多还需要慢慢摸索。
- i. u4 S( Z& f1 f6 j7 x' ?
6 `! h: O4 C+ q( @) o9 ?# l
收藏 评论0 发布时间:2025-5-2 20:09

举报

0个回答

所属标签

相似技术帖

官网相关资源

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