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

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

[复制链接]
小萝卜啦啦啦 发布时间:2024-6-2 20:29
4 T$ G" s" |! e4 p3 t. N% `
上篇文章中我用RTC定时,实现了定时从standby模式下唤醒,但是有个问题,定时时间太短了。
4 J7 d; J, f) P% o9 ^- E* o  J1 r1 B. l/ H- N" r4 F6 W
如果我选择把RTC时钟(32.768KHz)进行16分频,从代码函数的入参counter的类型为U32,可知其最大值为0xFFFF。所以代入公式:0xFFFF = max定时时间 * (32768 / 16),解得max定时时间 = 31(s)* Q/ w4 @( T% x! ~- }8 @" V; [* u) d
0 A( q+ u8 a4 S+ E$ {
如果时钟源选择1Hz,那么最大定时时间也就0xFFFF(s) = 18(H)% A% y* D+ o6 W

- y) k6 s7 {- ?. L# _如果我要拿这个来做日历的定时刷新,只需要在一天的00:00唤醒,刷新即可,如果用上文的方法一天至少要唤醒2次,其中有一次是完全无意义的。1 O- u7 u- h3 r0 w* D' q" ^
" w# ]/ u  s* L6 w2 C
所以今天我要来玩一下RTC的闹钟,他就没有这个问题了,只有在RTC时钟与你设置的定时时间一致时你才会被唤醒% P; E" }- H, J; D# x! {% ^. H8 F) z+ x

  J. V7 h, v* s工程的话就用上一篇那个
4 ~& q6 e+ t- @' Y
+ V1 b4 d, y0 O* {( c7 X7 P9 F
2 f: d: V# a/ q! b" q1 r一.Cube修改
0 ]4 S) ^$ B( }& N2 Z然后来到RTC界面,把上次打开的wkup关掉,把闹钟A打开
; T2 G& `2 v: Q6 E' L) R4 d
2.png
9 y- e% P" S7 A; G& ~3 C4 V6 ?
$ W; l5 S2 u& S6 i% J/ o接下来到参数界面配置一下参数。我要把默认RTC的时间设置成23点59分30秒。然后闹钟触发时间配置成0点0分0秒

3 y* i0 R* g$ s/ A8 w5 Q
3.png ) Q  T( Q% G/ M" Z5 o

8 N, F2 y- y1 q
0 j9 A- O6 M- Z
4.png
- c) q, t- J0 q  M8 e+ z# a$ G) w$ Q+ \4 @

  E% x  I+ I; y1 q$ o: s- S- K) n然后要把NVIC开一下
3 C5 \: w5 z. e% x) A% J
5.png / S; G' J* s; K4 a) A8 ^1 s

# Z( K1 D6 H/ d% p( v+ {! W$ k& k1 C3 u& c
然后生成代码(图略)
0 d2 h4 b: B2 n' D7 k( t
6 T* j! U8 V, X( v: @+ y二.代码修改
5 y: A" G. B1 ^! E代码几乎不用修改,只要加一句话即可,如下9 k' j0 X$ n9 e6 c, R
  1.     /* 清除闹钟标志位 */+ s$ f4 l* G3 J! |
  2.     __HAL_RTC_ALARM_CLEAR_FLAG(&hrtc, RTC_FLAG_ALRAF);
      j$ \$ j$ ]0 M% j7 Z7 M8 |
复制代码
7.png

4 ~, s& h  N8 D' V3 o) V; w- {4 c- V& y- h9 n5 K3 n
运行效果:

! P* J: m) K7 y6 N' D
6.png
7 @: ?8 S# a. w! u; V. P
- t* w- J9 Z! n4 _, p/ Z- o
首次上电后过了30S,就到了我设置的0点0分0秒,此时就会被闹钟唤醒,打印的时间也正确。之后他就又去睡觉了,并且我观察了好几分钟都没有被唤醒。应该是达到了我今天的目的。
/ I4 n: c; ?" B) `
! j  }: P( }  v2 j  j6 F  q6 `" F
工程: STM32U0_RTC_Alarm_standby_test.rar (5.22 MB, 下载次数: 0)
收藏 评论0 发布时间:2024-6-2 20:29

举报

0个回答

所属标签

相似技术帖

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