RTC(Real-Time Clock) 是微控制器中用于追踪当前时间的硬件模块。STM32微控制器中的RTC模块被广泛应用于需要精确时间管理的应用,例如计时、闹钟、日历、定时器等。
STM32的RTC模块通常由备份寄存器、时钟源、时间计数器以及一系列用于时间管理和中断的功能组成。
主要功能
-
时钟管理:
- 独立看门狗时钟(LSE):STM32的RTC通常依赖于独立的低速外部晶振(LSE,32.768 kHz)作为时钟源。这个晶振非常适合用于时间追踪,因为它具有高精度和低功耗特性。
- 独立内部振荡器(LSI):如果外部晶振不可用,可以使用内部低速振荡器(LSI)作为RTC的时钟源,但其精度较低。
-
时间计数:
- RTC模块包含一个计数器,用于精确记录时间。它的计数周期通常是1秒,随着时间推移不断递增。
- RTC支持年、月、日、小时、分钟和秒的时间设置,能够形成完整的日历系统。
-
日期和时间的存储:
- 日期和时间(年、月、日、小时、分钟、秒)存储在RTC的寄存器中,用户可以读写这些寄存器来获取或设置当前的时间信息。
- RTC备份寄存器:RTC还提供了一些备份寄存器(BKP),可以存储一些需要在掉电后保留的数据,如设置的时间、日期等。
-
闹钟和定时器功能: