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

在 STM32 F0、 F2、 F3、 F4 和 L1 系列MCU 中使用硬件实时时钟 (RTC)

[复制链接]
STMCU小助手 发布时间:2022-12-4 18:00
前言6 z1 j, `  Q  t# G, U5 B6 _, D
实时时钟 (RTC) 是记录当前时间的计算机时钟。 RTC 不仅应用于个人计算机、服务器和嵌入式系统,几乎所有需要准确计时的电子设备也都会使用。支持 RTC 的微控制器可用于精密计时器、闹钟、手表、小型电子记事薄以及其它多种设备。
7 g) B) a2 _& H6 v$ V本应用笔记介绍超低功耗中等容量、超低功耗大容量、 F0、 F2 和 F4 系列器件微控制器中嵌入式实时时钟 (RTC) 控制器的特性,以及将 RTC 用于日历、闹钟、定时唤醒单元、入侵检测、时间戳和校准应用时所需的配置步骤。
0 ^; l; I% {6 r1 d# Q本应用笔记提供了含有配置信息的示例,有助于您快速准确地针对日历、闹钟、定时唤醒单元、入侵检测、时间戳和校准应用配置 RTC。
+ h: y0 k' Z) c: m" F注: 所有示例和说明均基于 STM32L1xx、 STM32F0xx、 STM32F2xx、 STM32F4xx 和STM32F3xx 固件库,以及 STM32L1xx (RM0038)、 STM32F0xx (RM0091)、 STM32F2xx(RM0033)、STM32F4xx (RM0090)、STM32F37x (RM0313) 和 STM32F30x(RM0316) 的参考手册。
# {* W  L( A# q) v本文提到的 STM32 指超低功耗中等容量、超低功耗大容量、 F0、 F2 和 F4 系列器件。3 `7 U2 L7 e0 @! ~5 s
超低功耗中等 (ULPM) 容量器件包括 STM32L151xx 和 STM32L152xx 微控制器, Flash 容量在 64 KB 到 128 KB 之间。# c  G3 M% \* X
超低功耗大 (ULPH) 容量器件包括 STM32L151xx、STM32L152xx 和 STM32L162xx 微控制器, Flash 容量为 384 KB。7 @+ I! W5 T2 X
F2 系列器件包括 STM32F205xx、 STM32F207xx、 STM32F215xx 和 STM32F217xx 微控制器。4 D0 h2 q0 n- Z
STM32F3xx 包括 STM32F30x、 STM32F31x、 STM32F37x 和 STM32F38x 器件。
0 Q6 O( \4 N/ ~2 N& ~9 P' i" cF4 系列器件包括 STM32F405xx、 STM32F407xx、 STM32F415xx 和 STM32F417xx 微控制器。8 ]( z' W+ z* ~2 }7 J' x
F0 系列器件为入门级微控制器。) H4 L9 g% }" N' z- h5 b. ?
表 1 列出了本应用笔记涉及的微控制器。
# x$ y* J" ?4 G4 O; w2 ~8 I
; m: `3 Q& M1 R* A
O(}VRCPT]@KP$TA$$FG6R78.png
  v" D; i, _- e! o; i0 o
& @, q0 M# P. |2 U5 |
1 STM32 高级 RTC 概述
1 ^# H. N  w1 f" XSTM32 微控制器中的嵌入式实时时钟 (RTC)是一个独立的 BCD 定时器 / 计数器。 RTC可用来实现全功能日历、闹钟、定时唤醒单元、数字校准、同步、时间戳和高级入侵检测。有关各器件可用功能的完整列表,请参见表 15:RTC 高级功能 。
3 `3 }* ]3 m& H1 v8 u( R" h" V/ N3 K, h- i- M
1.1 RTC 日历
4 C% Y, B' q: Z% c: _8 P0 Z日历用于记录时间 (时、分和秒)和日期 (日、周、月和年)。 STM32 RTC 日历具有多项功能,可轻松配置和显示下列日历数据字段:
; Z4 W1 h' f* }含有下列字段的日历:
/ j) J) z! Y' ^9 B8 Y, T1 `$ z– 亚秒 (不可编程)
/ ?$ H: [6 `/ V6 g2 Q– 秒
8 C$ X! z( M( b2 q% y% R+ U– 分% J* c* [' T' x0 m7 [7 g
– 时 (12 小时或 24 小时格式), p5 n0 h/ G5 L8 k$ v
– 星期
& v' a8 O5 C! W– 日
2 e, j. C! \/ F# H- C9 u– 月
1 V% F/ x( Z% f! K% h7 O8 H2 d– 年
% }1 @% [" E: {; l# K8 M2 T5 e6 L) D二进码十进数 (BCD)格式的日历' I' b1 b- k( L0 ?+ _5 B
自动管理天数为 28、 29 (闰年)、 30 和 31 的月份
$ W( ~8 x( @! q/ v夏令时调整可用软件编程+ b& A5 n1 u5 G4 n: a; S

; B! j4 V( u* n; _2 U- O

0 K' A6 m% P1 I$ r. Q# w HMK68J`{{T9VL)YH9{)S[(S.png
4 u9 Y  Q* [8 _$ e- w5 ~; p
* F! z5 [- p6 c8 q6 Y2 M软件日历可以是表示秒数的软件计数器 (通常为 32 位长)。软件程序将计数器值转换为小时、分钟、日期、星期、月份和年份。这些数据可以转换成 BCD 格式在标准 LCD 上显示,很适合采用 12 小时格式与 AM/PM 指示符(见图 2)的国家 / 地区。转换程序会占用大量程序存储器空间和 CPU 运行时间,这可能对某些实时应用很不利。
# ~. g9 j' I7 f5 k使用 STM32 RTC 日历时,该功能通过硬件实现,因此不再需要软件转换程序。
. u  z: S" I+ ?$ h* ESTM32 RTC 日历以 BCD 格式提供。这可以避免二进制转 BCD 的软件转换程序占用大量程序存储器空间和加重 CPU 负载而对某些实时应用产生不利影响。% R1 B7 b& ~, Y) p% h4 J9 S. J
8 {) g; i4 M* K1 K
5 C, V0 g8 {! @& M3 e, A, ~) B
5]}U9OIZB3A1TB%)%FL6C]E.png ; l! H% v: u2 u' F. N$ n
2 a2 s- n2 E/ `- K( h3 a" h
1.1.1 初始化日历
5 O0 \4 f& {2 P, ], l9 z; A表 2 列出了正确配置日历的时间和日期所需的步骤。1 U- v+ w/ J/ h0 M) K

! }! b" I& z1 w) l0 o; _
G9D0O9B)4IM7_A%{K%JMANP.png
7 {9 X2 Q. O( g( ?+ u  k
) k$ L+ W( j3 |& K
1.1.2 RTC 时钟配置
: j8 w% T; C+ _, ?RTC 时钟源
8 h  F+ s6 a- x+ ?6 |% B$ d4 ZRTC 日历可通过三个时钟源 LSE、 LSI 或 HSE 驱动 (见 图 3 和 图 4)。
3 ]5 A- U# u, D7 N1 Y9 J2 H
$ z2 G; h( l) v. v7 c6 Q
6 i# v8 x7 }- P/ f) o7 m  V
]Y4TJ[$I{XB901ME5D(A`XL.png 2 p. d' k8 T: J3 w; H% V
3 R! [6 H; G5 u
完整版请查看:附件1 h4 |+ l7 L! d4 T! `$ ?

0 A/ ^/ T6 o4 ]/ f6 Y3 a- y) M( n$ y

- n8 y  H# Q" i2 S
收藏 评论0 发布时间:2022-12-4 18:00

举报

0个回答
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版