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

【STM32H750-DK 车辆仪表】4.仪表时钟

[复制链接]
jundao721 发布时间:2025-12-9 20:34

, e! a- A9 `2 q      想想车上仪表盘,总得有个时钟,开车的时候可以看看时间。发现GUI控件里有数字时钟,直接拖过来即可。
4 n6 f* w: K) [( k, J; s如图1:
1 W$ D( H1 W6 f1 |0 P! H, i) ?% Z4 d4 L 4-1.png 4 m5 m. j' ^% a- j
图1
' M" \# c/ R3 j) _$ W
" @7 o8 |! ]" E  W( Q

1 i) d( ?! B: s6 ]: `* ^; ^       接下来就是让时钟走起来。开始还以为拖过来,改改属性栏,时钟就走呢。发现不是这样的,功能还得自己去实现。. {$ h: V8 p/ c6 p  C5 r
查查资料,再回到其MVP架构,model里有个Tick函数,为时钟提供精准。- y, o. I+ F! H7 |! ]( U
      首先在model.cpp里实现秒分时的定义和初始化,如下所示:
. a/ t" z$ E- h6 \
  1. tickCounter++;
    3 v, `+ h2 p% [7 g
  2.     if (tickCounter >= 60)       // TouchGFX 60Hz = 1 秒. K, Q6 @6 a8 K7 J  E
  3.     {
    ; t3 O% J  [* R) V% I+ S, l9 K% Z2 X* ?
  4.         tickCounter = 0;( v2 W3 w! W% h! j

  5. ' ]$ ~. Q1 ^  ]$ X& q7 P5 g* |+ l
  6.         second++;
    5 K0 u; X" d% f
  7.         if (second >= 60) { second = 0; minute++; }
    , |0 D% L. [: e/ |, W: F! [% g: X) }
  8.         if (minute >= 60) { minute = 0; hour++; }& x) [' R7 \0 R$ h6 r. D  H0 z
  9.         if (hour >= 24)   { hour = 0; }9 P* {' a* N6 [

  10. & {5 w4 C$ t' J: ]4 d. d2 Q
  11.         modelListener->timeUpdated(hour, minute, second);
    & R0 z4 ]' z. [$ |( @1 H
  12.     }
复制代码

; s; w) f* s' F2 k& [* L: m$ L
6 x# @8 I8 ]! d8 T. _: j  ~' l# i& n' i     然后需要通过presenter.cpp 去中转这个功能函数,如下所示:
$ B' d2 _* x- n+ H, c* H7 l8 `4 }4 P
  1. view.updateClock(hour, minute, second);
复制代码
( x$ i6 C3 Q8 f0 X- N

- c. R; ?% h" m     然后在view.cpp里展示这个函数的运行,如下所示:
. s8 ~, }. J4 u$ ?6 G" b
  1. digitalClock1.setTime24Hour(hour, minute, second);
    * D5 U! ~# `) [; z4 }( W1 {
  2.     digitalClock1.invalidate();
复制代码
$ O0 Z1 G" C+ Y- L0 {7 a/ K( B" m
5 J$ ^" f( C. {/ c$ X) S: Q
     最终运行效果如图2所示:) ]( z! u# C8 g
4-2.gif - A& N8 k, G* c4 m2 b
图2
$ F6 y; `2 P  D" n' H* W  R  Y
赞 收藏 评论0 发布时间:2025-12-9 20:34

举报

0个回答

所属标签

相似技术帖

官网相关资源

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