STMCU小助手
发布时间:2022-7-21 22:40
|
前言 实时时钟 (RTC) 是记录当前时间的计算机时钟。 RTC 不仅应用于个人计算机、服务器和嵌入式系统,几乎所有需要准确计时的电子设备也都会使用。支持 RTC 的微控制器可用于精密计时器、闹钟、手表、小型电子记事薄以及其它多种设备。+ d% K9 d! k( h6 g* y 本应用笔记介绍超低功耗中等容量、超低功耗大容量、 F0、 F2 和 F4 系列器件微控制器中嵌入式实时时钟 (RTC) 控制器的特性,以及将 RTC 用于日历、闹钟、定时唤醒单元、入侵检测、时间戳和校准应用时所需的配置步骤。) q! R- h0 x5 L 本应用笔记提供了含有配置信息的示例,有助于您快速准确地针对日历、闹钟、定时唤醒单元、入侵检测、时间戳和校准应用配置 RTC。 注: 所有示例和说明均基于 STM32L1xx、 STM32F0xx、 STM32F2xx、 STM32F4xx 和STM32F3xx 固件库,以及 STM32L1xx (RM0038)、 STM32F0xx (RM0091)、 STM32F2xx (RM0033)、STM32F4xx (RM0090)、STM32F37x (RM0313) 和 STM32F30x(RM0316) 的参考手册。 本文提到的 STM32 指超低功耗中等容量、超低功耗大容量、 F0、 F2 和 F4 系列器件。超低功耗中等 (ULPM) 容量器件包括 STM32L151xx 和 STM32L152xx 微控制器, Flash 容量在 64 KB 到 128 KB 之间。 超低功耗大 (ULPH) 容量器件包括 STM32L151xx、STM32L152xx 和 STM32L162xx 微控制器, Flash 容量为 384 KB。5 ^! C) g) }* f) G1 ` F2 系列器件包括 STM32F205xx、 STM32F207xx、 STM32F215xx 和 STM32F217xx 微控制器。' @! a4 ^6 z* q6 J6 c5 O STM32F3xx 包括 STM32F30x、 STM32F31x、 STM32F37x 和 STM32F38x 器件。F4 系列器件包括 STM32F405xx、 STM32F407xx、 STM32F415xx 和 STM32F417xx 微控制器。 F0 系列器件为入门级微控制器。 # S9 [2 j1 }4 A) f8 @, W
$ s& ?" E5 X9 e) E& |2 X7 f 1 STM32 高级 RTC 概述 STM32 微控制器中的嵌入式实时时钟 (RTC)是一个独立的 BCD 定时器 / 计数器。 RTC可用来实现全功能日历、闹钟、定时唤醒单元、数字校准、同步、时间戳和高级入侵检测。( J) X+ t5 N, m4 E 有关各器件可用功能的完整列表,请参见表 15:RTC 高级功能 。 9 D& L; O: E6 Y- U. N$ h 1 L4 v6 K" G% A: B 1.1 RTC 日历! X/ n; g# \* |7 ?$ u 日历用于记录时间 (时、分和秒)和日期 (日、周、月和年)。 STM32 RTC 日历具有多项功能,可轻松配置和显示下列日历数据字段: 含有下列字段的日历:+ h- L7 T9 t: c+ ^2 E# n4 N –亚秒 (不可编程) –秒% e8 p0 q6 m1 D# k! G –分& I7 |; M* W" l9 F –时 (12 小时或 24 小时格式)3 N5 V. B! u6 [1 u1 C& B; ?- t –星期0 C( Y5 b) |) C0 U# l6 A7 k –日0 p8 S; h' E. Z6 Y5 ] –月1 `2 j! X4 L% L$ V6 v! A: N –年: a, _3 z, V3 Q4 |( I/ m 二进码十进数 (BCD)格式的日历( C& Z9 x, o+ Z; Y7 i 自动管理天数为 28、 29 (闰年)、 30 和 31 的月份1 a# S0 h7 X" n- ^ n1 o 夏令时调整可用软件编程 # ^+ u9 T4 F4 p& @9 s
i" E* M; d$ m& ] " P3 n5 L4 ^# Z8 S" s6 X; x+ M 软件日历可以是表示秒数的软件计数器 (通常为 32 位长)。软件程序将计数器值转换为小时、分钟、日期、星期、月份和年份。这些数据可以转换成 BCD 格式在标准 LCD 上显示,很适合采用 12 小时格式与 AM/PM 指示符(见图 2)的国家 / 地区。转换程序会占用大量程序存储器空间和 CPU 运行时间,这可能对某些实时应用很不利。 使用 STM32 RTC 日历时,该功能通过硬件实现,因此不再需要软件转换程序。: X D$ k" W. Y0 K STM32 RTC 日历以 BCD 格式提供。这可以避免二进制转 BCD 的软件转换程序占用大量程序存储器空间和加重 CPU 负载而对某些实时应用产生不利影响。 5 w/ c* o; w, G' C) n0 _
0 d1 G! Q+ B: v; E( o" Z' t 1.1.1初始化日历 表 2 列出了正确配置日历的时间和日期所需的步骤。! z9 s/ k' ~; z6 o& ~
1.1.2 RTC 时钟配置 RTC 时钟源 RTC 日历可通过三个时钟源 LSE、 LSI 或 HSE 驱动 (见 图 3 和 图 4)。 0 k8 l2 x. @7 N1 d* ~0 {5 N" y$ r: m
& a8 p9 b7 }7 k' Z a' s: Z" o
: P1 q6 N5 t/ W$ `$ |, G/ z7 M3 I
其中: RTCCLK 可以是任意一个可选的时钟源:HSE_RTC、 LSE 或 LSI5 n5 S' i: l0 d+ U- z0 Q PREDIV_A 可以是 1、 2、 3... 或 127 PREDIV_S 可以是 0、 1、 2... 或 8191/ _$ E8 \0 R \ s 表 3 列出了几种获得 1 Hz 日历时钟 (ck_spre) 的方法。. }5 E! d/ R/ P% }2 w* j | , B) X; N2 H. }& R! k
7 Y; w g" l5 ~& e ( e) N$ `& p+ x, V 完整版请查看:附件0 ` I( ^, r2 H, X4 `1 N . c- b5 D% i; |: V) `) r; i * `" a$ x' M' D0 Q8 G) G# x |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
基于STM32F303双电机FOC驱动: 无感原理图/BOM表/代码等开源...
【福利三:雨露均沾·逢7狂欢】之五:STM32系统时钟PLL故障排除1例
【福利三:雨露均沾·逢7狂欢】之三:AI帮我查BUG
福利三:雨露均沾·逢7狂欢】之二:STM32F407VG串口通信乱码故障的排除
基于STM32F103的I2C主从机通信
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
stm32cube_pwm配置
stm32f334驱动1.69寸SPI LED屏
TFT LCD 与 FSMC 的硬件连接大容量 STM32F10xxx FSMC 接口
微信公众号
手机版