stm32之实时时钟RTC(掉电计时保持、秒中断、闹钟中断、溢出中断)

本文介绍了STM32的RTC实时时钟模块,包括其掉电保持计时、秒中断、闹钟中断和溢出中断等功能。RTC模块拥有32位计数器,可在系统复位或待机模式下保持时间设置。文章详细讨论了RTC的特性、时钟源选择和中断类型,并给出了代码设计示例,帮助读者理解如何在STM32项目中应用RTC。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:stm32系列产品普遍都有实时时钟RTC模块,它提供一个掉电保持计时功能,掉电后由后备供电区域供电。除了提供时间和日期之外,还可以设置闹钟提醒,且可以在待机模式下设置闹钟唤醒系统。在一些小容量、中容量产品中,只有一个32位的计数寄存器,如果该计数寄存器自增1周期设置为1s,那么软件可以根据该计数寄存器的值算出当前的日期和时、分、秒。在一些大容量的产品中,年、月、日、时、分、秒都是独立的寄存器,可直接读出需要的值。

1.RTC简介

实时时钟是一个独立的定时器。RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。

RTC模块和时钟配置系统(RCC_BDCR寄存器)处于后备区域,即在系统复位或从待机模式唤醒后,RTC的设置和时间维持不变。

2.RTC特性

     ● 可编程的预分频系数:分频系数最高为2^{20}

     ● 32位的可编程计数器,可用于较长时间段的测量。(若最小单位为秒:2^{32}=4,294,967,295秒=49,710天  大概136年。)

     ● 2个分离的时钟:用于APB1接口的PCLK1和RTC时钟(RTC时钟的频率必须小于PCLK1时钟频率的四分之一以上)。

     ● 可以选择以下三种RTC的时钟源:

             ─ HSE时钟除以128;

             ─ LSE振荡器时钟;(常用的是外部低速,稳定精准,重要的是VDD掉电后可有后备供电区域给它供电)

             ─ LSI振荡器时钟。

     ● 2个独立的复位类型:

             ─ APB1接口由系统复位;

             ─ RTC核心(预分频器、闹钟、计数器和分频器)只能由后备域复位。(可导致后备区域复位:侵入事件、软件复位、VBAT掉电)

     ● 3个专门的可屏蔽中断:

            ─ 闹钟中断,用来产生一个软件可编程的闹钟中断。

            ─ 秒中断,用来产生一个可编程的周期性中断信号(最长可达1秒)。

            ─ 溢出中断,指示内部可编程计数器溢出并回转为0的状态。

3.RTC功能框图

从左上角开始到右下角看图理解,系统通过APB1总线对后备区域的RTC进行通信,那三斜杠的意思是可断开,因为在系统掉电的时候RTC是独立的,只有在系统运行时才

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值