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

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

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

2 |7 R9 a; y) \上篇文章中我用RTC定时,实现了定时从standby模式下唤醒,但是有个问题,定时时间太短了。
$ ]- i7 V! X) a$ ^6 J
5 P6 d2 Y9 V7 c如果我选择把RTC时钟(32.768KHz)进行16分频,从代码函数的入参counter的类型为U32,可知其最大值为0xFFFF。所以代入公式:0xFFFF = max定时时间 * (32768 / 16),解得max定时时间 = 31(s)- s& _+ E8 K/ n$ P- ^
  V4 j+ M* t( H7 M
如果时钟源选择1Hz,那么最大定时时间也就0xFFFF(s) = 18(H)
! N: w- n0 E; S* J
& R- v4 g1 I* W0 U7 w9 v. W如果我要拿这个来做日历的定时刷新,只需要在一天的00:00唤醒,刷新即可,如果用上文的方法一天至少要唤醒2次,其中有一次是完全无意义的。
( M" ?. x3 W, k, _+ ~9 I8 b
% V- u8 f0 e) z8 `1 @' s" [# z8 ~, n所以今天我要来玩一下RTC的闹钟,他就没有这个问题了,只有在RTC时钟与你设置的定时时间一致时你才会被唤醒
% y- T' n7 q  A; d& j+ W
4 R" q' O, U* I9 M工程的话就用上一篇那个1 E* J1 |0 ]( J; ~
! I3 X- N6 \3 E- t- p3 y

" [) o! p$ H! N! ~- R# X一.Cube修改
1 Z! ]' Y/ b: }$ X然后来到RTC界面,把上次打开的wkup关掉,把闹钟A打开
& n: b8 i: h2 Z4 q- [* m. S
2.png * b- @8 N6 _. a- y; b
' f1 g2 X$ [, Z' b9 y0 M
接下来到参数界面配置一下参数。我要把默认RTC的时间设置成23点59分30秒。然后闹钟触发时间配置成0点0分0秒

8 g- j% ?& ^5 f; `2 c( [4 y; t
3.png 8 i8 z4 m6 q1 {* M2 V' w
# Z0 l4 I8 Z) b# ?7 U7 M7 U

0 L( Z* c2 ~/ g# c0 z, ]3 P3 f( a6 `
4.png
0 _8 E+ B: E( [5 F; B3 L" e' Y) D! H* }* t8 o( f+ Q3 [  X# v
: P8 T# V, m2 [1 ?0 T
然后要把NVIC开一下
$ [$ u, l" o6 ]1 ]: h
5.png - F. y" h% S$ h9 ?$ q: a% y
) K' c+ w9 b% `  N' [. r

( i! e! X1 F( D7 i然后生成代码(图略); ^( u9 [9 U, w) ?4 m% K$ I

6 @9 C4 x/ g: n" |) [8 o: h2 [二.代码修改
( C+ I! i+ {% w+ g7 \代码几乎不用修改,只要加一句话即可,如下+ t. C* g5 X6 }. x2 e5 p! _+ v' h
  1.     /* 清除闹钟标志位 */
    " F  [4 M8 i, e4 g5 m" [
  2.     __HAL_RTC_ALARM_CLEAR_FLAG(&hrtc, RTC_FLAG_ALRAF);
    4 j: Z6 E: Z7 y' Y: {
复制代码
7.png
0 U" |) U1 A" S' C5 d
2 ~1 s3 D8 v/ ~! I- P! O4 I; [
运行效果:
' a" b0 M2 M" c9 Q+ E, u$ o# U- z8 ]: j
6.png
% d$ T" L- X  E8 h  u0 K
) H+ b( B2 r3 t( X0 l1 X! A! h
首次上电后过了30S,就到了我设置的0点0分0秒,此时就会被闹钟唤醒,打印的时间也正确。之后他就又去睡觉了,并且我观察了好几分钟都没有被唤醒。应该是达到了我今天的目的。

& `8 R  c+ c: O
5 g8 P% Y5 [' M0 M( n# B; M/ d
工程: 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 手机版