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

【H745I GUI】1.GreenHouse 灯光控制

[复制链接]
jundao721 发布时间:2025-5-2 20:09
      喜欢养花的小伙伴们肯定都有去控制花房里的温度,灯光,湿度等这些影响植物的参数的想法。利用ST自身的软硬件可以完成预期的想法。这次使用TouchGfx designer和板载的LED(右边LED8),实现软硬件交互,并熟悉整个的设置过程。) @% d+ T  e  P( s! {6 y
效果如图1所示:4 R4 o) M' `* T( t
20250502.gif
$ R+ u  J" k/ y7 w图1# C/ K# k; M2 b3 n1 e6 y3 C- R  a2 ]

. ]# Q8 H% ^0 j% K, z$ }4 u4 k! F5 G, S; e( W, o/ _. H2 t
详细界面设计本次就不写了,这个都可以拖拽控件,背景图片自己PS一下光线效果。说说本次实现需要注意和遇到的问题。
' v# B' Q% \  L; q6 C7 Y. b
* Y6 L0 X1 e( H2 ~3 ^& v" L1.在touchgfx designer 4.25 中,Interaction交互界面增加要实现的功能,比如按钮与其他功能的交互。这里要实现和硬件交互,调用HAL库函数,需要增加一个虚拟函数,如图2所示:
; h- y! j# I, W) y 1.png
, O0 T( k/ P  T图2
  ~* T4 d% c3 U; U' _6 {1 i你以为点击生成代码以后,会在项目中出现,实际在IDE项目文件中并没有出现,只能手动添加代码,如下所示:. l1 r, ]& _7 s
  1. void MainView::ButtonClickedTurnOnLed()
      g7 W" A. m) W) b6 b7 ]
  2. {
    , P/ C# i/ d  V' P+ H- x- B2 I% O1 Z
  3.   HAL_GPIO_WritePin(GPIOD,GPIO_PIN_3,GPIO_PIN_SET);% a; N  l+ ~8 d$ K* k
  4. }
    7 b) l5 [7 q4 u8 H' V& L
  5. " P, I, @+ x4 Y. h6 D( A! c: Z
  6. void MainView::ButtonClickedTurnOffLed()5 _1 `3 F/ N0 Z; I
  7. {. z3 I$ B3 `7 l6 S! o
  8.   HAL_GPIO_WritePin(GPIOD,GPIO_PIN_3,GPIO_PIN_RESET);6 s) ~8 n/ \8 ^
  9. }
复制代码
2.为什么不用MDK。本打算在keil里修改,编译缺少porttable.h, 发现是项目自动生成后,这个文件的路径错了,修改路径后,又提示缺少port.c文件,添加后,有提示一堆错误,哈哈,放弃该,使用IDE。5 y8 J- c3 e7 k& E6 _7 f* b
3.在IDE中手动添加定义的虚拟函数后,又不能Debug,错误如图3所示:$ k5 W% t. G% ?# G  u2 }
error2.png ! d. ?. m- ^6 Y7 _8 Y3 n
图3
8 r( o$ H# x! t0 \8 x但是在TouchGfx designer中可以download,很神奇,那就直接download吧。
: l$ x. P* x2 P1 c) Z0 _, V* T总体来说,使用过程中,不是特别理想,要是一边加控件一边修改代码是不是更方便一点,怎么能更容易实现想法,很多还需要慢慢摸索。
% j5 ?. ]+ R7 s) b4 w4 d# G' D% |8 X; {. @7 }+ r& s; k
赞 收藏 评论0 发布时间:2025-5-2 20:09

举报

0个回答

所属标签

相似技术帖

官网相关资源

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