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

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

[复制链接]
STMCU小助手 发布时间:2022-12-4 18:00
前言7 t3 H1 V3 r/ N9 v0 f( Q  ]
实时时钟 (RTC) 是记录当前时间的计算机时钟。 RTC 不仅应用于个人计算机、服务器和嵌入式系统,几乎所有需要准确计时的电子设备也都会使用。支持 RTC 的微控制器可用于精密计时器、闹钟、手表、小型电子记事薄以及其它多种设备。1 M0 r6 J0 l( O& Q$ r( S6 X
本应用笔记介绍超低功耗中等容量、超低功耗大容量、 F0、 F2 和 F4 系列器件微控制器中嵌入式实时时钟 (RTC) 控制器的特性,以及将 RTC 用于日历、闹钟、定时唤醒单元、入侵检测、时间戳和校准应用时所需的配置步骤。
. t9 P) [* ?* O! y' V# w+ \本应用笔记提供了含有配置信息的示例,有助于您快速准确地针对日历、闹钟、定时唤醒单元、入侵检测、时间戳和校准应用配置 RTC。2 t) U2 z$ ^5 y& n( P
注: 所有示例和说明均基于 STM32L1xx、 STM32F0xx、 STM32F2xx、 STM32F4xx 和STM32F3xx 固件库,以及 STM32L1xx (RM0038)、 STM32F0xx (RM0091)、 STM32F2xx(RM0033)、STM32F4xx (RM0090)、STM32F37x (RM0313) 和 STM32F30x(RM0316) 的参考手册。) H! R- w( |- N: n
本文提到的 STM32 指超低功耗中等容量、超低功耗大容量、 F0、 F2 和 F4 系列器件。
$ ]# |; k9 \3 S' M超低功耗中等 (ULPM) 容量器件包括 STM32L151xx 和 STM32L152xx 微控制器, Flash 容量在 64 KB 到 128 KB 之间。* |0 R) z0 n9 M. }6 Y' \4 g. a
超低功耗大 (ULPH) 容量器件包括 STM32L151xx、STM32L152xx 和 STM32L162xx 微控制器, Flash 容量为 384 KB。
  O; ~+ P: Y* b. r6 t: e3 SF2 系列器件包括 STM32F205xx、 STM32F207xx、 STM32F215xx 和 STM32F217xx 微控制器。# i8 V5 ?% Y, C
STM32F3xx 包括 STM32F30x、 STM32F31x、 STM32F37x 和 STM32F38x 器件。
+ T- R: n8 R1 ~% f1 j+ zF4 系列器件包括 STM32F405xx、 STM32F407xx、 STM32F415xx 和 STM32F417xx 微控制器。% K4 d4 m. s3 I8 x/ y! v
F0 系列器件为入门级微控制器。
( B8 h* w: H( K5 k1 B9 B表 1 列出了本应用笔记涉及的微控制器。
% \  b- n2 P+ o& E: T- c+ @* ]/ c: ?
( j+ Q, l( A/ o
O(}VRCPT]@KP$TA$$FG6R78.png ! `. B2 n' D( B# h+ w
7 z5 L5 Z3 K5 C  B& a
1 STM32 高级 RTC 概述
" g* X0 g: A) m  ESTM32 微控制器中的嵌入式实时时钟 (RTC)是一个独立的 BCD 定时器 / 计数器。 RTC可用来实现全功能日历、闹钟、定时唤醒单元、数字校准、同步、时间戳和高级入侵检测。有关各器件可用功能的完整列表,请参见表 15:RTC 高级功能 。4 `% b5 B! `9 l2 A' N  m

* }$ Q0 i, H% y$ a; b5 C- w3 V
1.1 RTC 日历
- f0 P; N! @1 ^* i+ R  z日历用于记录时间 (时、分和秒)和日期 (日、周、月和年)。 STM32 RTC 日历具有多项功能,可轻松配置和显示下列日历数据字段:
/ B$ K0 b7 e0 D4 x! W1 t' y含有下列字段的日历:- y" H+ |- o; k& `# [
– 亚秒 (不可编程)
, Q" y; s, Z" H1 p  Z; Y5 A– 秒
4 \3 T; o7 b% I/ Y/ y/ U– 分8 p( K/ ^; }* @8 h
– 时 (12 小时或 24 小时格式)' A2 |9 f) M( N: C
– 星期
% Q9 q6 `) d$ _) @8 @. o1 T8 j– 日0 M7 F) f! ^: M/ k6 Y  o; u
– 月
- f: ^6 A0 H, r# ^3 G9 _– 年4 I/ x  ^6 d6 O) D
二进码十进数 (BCD)格式的日历
- L3 o2 K4 G. o5 n% o# V# r4 k3 C4 M  W自动管理天数为 28、 29 (闰年)、 30 和 31 的月份
: L5 D9 O7 ]& F夏令时调整可用软件编程( l- `$ D1 _; c0 u( W

" n% H) c7 O# _; ~, v4 O+ @

% {9 X3 c  p9 P' v2 e HMK68J`{{T9VL)YH9{)S[(S.png
% h  S4 e. s# |( z& a6 ?$ ~- y; R- ]+ E4 H" d
软件日历可以是表示秒数的软件计数器 (通常为 32 位长)。软件程序将计数器值转换为小时、分钟、日期、星期、月份和年份。这些数据可以转换成 BCD 格式在标准 LCD 上显示,很适合采用 12 小时格式与 AM/PM 指示符(见图 2)的国家 / 地区。转换程序会占用大量程序存储器空间和 CPU 运行时间,这可能对某些实时应用很不利。
9 ?% C+ U8 Y: O# r9 @4 `' m8 a使用 STM32 RTC 日历时,该功能通过硬件实现,因此不再需要软件转换程序。4 O  U$ l  C# A, }& j* @# X3 d
STM32 RTC 日历以 BCD 格式提供。这可以避免二进制转 BCD 的软件转换程序占用大量程序存储器空间和加重 CPU 负载而对某些实时应用产生不利影响。& y$ G( v' |" L

, I6 K& {+ |. ~% b' Q. C& B/ O
6 ^8 P) c) ]/ Z; y
5]}U9OIZB3A1TB%)%FL6C]E.png ' H, X4 {) a. f! ~6 r

4 t. X9 ~( c8 j2 \6 j+ L1.1.1 初始化日历  {7 j3 ~0 U! w5 C
表 2 列出了正确配置日历的时间和日期所需的步骤。/ T# Z  t, \. E* P$ P  ^& @
' M' x: C2 R( j, F9 C0 @; u
G9D0O9B)4IM7_A%{K%JMANP.png ; s0 p  n4 d/ k* E  U3 l6 C
0 \7 d- @( m+ `# {; r* a
1.1.2 RTC 时钟配置
) R& B0 c: Z6 D  j8 ]. \) o8 URTC 时钟源
% p1 `4 v# [2 U  oRTC 日历可通过三个时钟源 LSE、 LSI 或 HSE 驱动 (见 图 3 和 图 4)。
5 L- V* I. V! g7 h7 q5 I" E
: M% k" A3 i: [" @9 Z! h

1 R6 `8 ?1 ~/ N7 P8 X; i) t# s. l& u ]Y4TJ[$I{XB901ME5D(A`XL.png 9 D$ V8 d4 i+ k' S
: o) \. s5 C1 ~5 q7 s/ Q; v  K" x( T
完整版请查看:附件
, D! _/ g, R1 Z# R* [! {+ q  L& j+ m4 a* l6 B% [' ^
7 J& J% p7 {" T1 g! V
* U8 P0 w+ X: W) x
收藏 评论0 发布时间:2022-12-4 18:00

举报

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