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

【NUCLEO-U083RC评测】⑧RTC&STANDBY Alarm唤醒功能

[复制链接]
小萝卜啦啦啦 发布时间:2024-6-2 20:29

3 l% Y0 z0 }- j! W上篇文章中我用RTC定时,实现了定时从standby模式下唤醒,但是有个问题,定时时间太短了。
7 Q4 f3 g8 M4 f% n2 `- F5 U
8 o7 F5 z6 L$ K" r6 J, D如果我选择把RTC时钟(32.768KHz)进行16分频,从代码函数的入参counter的类型为U32,可知其最大值为0xFFFF。所以代入公式:0xFFFF = max定时时间 * (32768 / 16),解得max定时时间 = 31(s)4 P0 @8 ?4 s0 d
. V6 ?$ A* J( I" U# {
如果时钟源选择1Hz,那么最大定时时间也就0xFFFF(s) = 18(H)) I6 ^6 h' g9 ^9 `. H7 E+ o

* |. c/ M3 F0 U$ ~, G& O如果我要拿这个来做日历的定时刷新,只需要在一天的00:00唤醒,刷新即可,如果用上文的方法一天至少要唤醒2次,其中有一次是完全无意义的。$ ^4 h  K; `/ r# v3 f

# c$ f$ h3 U; x; L$ q& ?, U所以今天我要来玩一下RTC的闹钟,他就没有这个问题了,只有在RTC时钟与你设置的定时时间一致时你才会被唤醒
+ F2 f5 @# g9 T9 s( k! M5 O" r- \& e5 A, x) M
工程的话就用上一篇那个6 L2 m9 [. p" o7 U
4 p- j0 ^  ~6 e; O

2 |$ L; f2 V3 z# W+ B- t' E& b一.Cube修改. D: c* n' P+ S  G6 R$ R
然后来到RTC界面,把上次打开的wkup关掉,把闹钟A打开
6 q# n2 `  D" H1 E& A
2.png
; X$ Q. p+ r; X) {
" i/ X. D: T/ U( w, _接下来到参数界面配置一下参数。我要把默认RTC的时间设置成23点59分30秒。然后闹钟触发时间配置成0点0分0秒
- r" A/ F+ @+ H: w; B  ^
3.png
! P  v; \# _4 _! K5 U

( `9 @( K1 ?( [# l1 }; G2 B% C
0 {0 j% }8 E' E" w) f7 g
4.png
  f5 h5 w( I6 y2 R4 Z
1 {7 I7 [$ R! N2 U. z, Y6 e; {7 F' |4 N: Q" F. m# L) P) K
然后要把NVIC开一下
+ ?' I9 @$ y4 F( L: E, q
5.png * u0 E. M9 M- Y6 \- N

; a5 B, V+ S  G5 L- e5 x. v4 E8 y8 N$ a
然后生成代码(图略)+ }2 @+ ?8 e, k7 k- v

( h; |3 p% ~9 k3 G二.代码修改( S! A: d+ ], Z$ r. k. S
代码几乎不用修改,只要加一句话即可,如下
8 B9 b; B6 a. l! W) P
  1.     /* 清除闹钟标志位 */7 B4 m# v2 D+ `- g+ i4 i7 h- _
  2.     __HAL_RTC_ALARM_CLEAR_FLAG(&hrtc, RTC_FLAG_ALRAF);7 x' `" j3 ~% s. Q
复制代码
7.png
- y6 s, N: e& Y" k: B$ U

7 y5 t- Z: B3 j; c0 F, X  O# {3 @运行效果:

( O1 B. a5 }: x
6.png
- \+ l" E8 W/ f
) ~7 i) S& ~3 M2 _6 W! x4 ^
首次上电后过了30S,就到了我设置的0点0分0秒,此时就会被闹钟唤醒,打印的时间也正确。之后他就又去睡觉了,并且我观察了好几分钟都没有被唤醒。应该是达到了我今天的目的。

* S% ~! I9 n  c' |1 A. `
# A2 E! o: e  |6 ^: N
工程: STM32U0_RTC_Alarm_standby_test.rar (5.22 MB, 下载次数: 0)
赞 收藏 评论0 发布时间:2024-6-2 20:29

举报

0个回答

所属标签

相似技术帖

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