RTC时钟源及其低功耗应用

我们现在基于STM32系统时钟,来解释RTC时钟源:

下面是系统时钟图:红色方框分别是RTC和SYSTICK。

SysTick

  • 在 RTOS 下 :SysTick 通常被配置为 1ms 周期中断,作为 RTOS 的"心跳"。每次中断都会触发任务调度,检查是否有更高优先级的任务就绪,或是否到达当前任务的时隙。

  • 裸机下 :SysTick 依然可以作为一种通用的定时器 。比如你可以用它实现非阻塞延时HAL_Delay 就是基于 SysTick)、软件定时器系统时基等。所以它并不是 RTOS 专属,只是 RTOS 依赖它作为调度驱动。

RTC

1. 在 RTOS 低功耗模式(tickless)下
  • 当 RTOS 启用 tickless 模式 ,且系统进入 Stop 模式 这类深度睡眠时,SysTick 会停止。

  • 此时 RTC 接管时间基准。它会计算距离下一个任务唤醒还剩多少时间,设置一个闹钟,然后 CPU 彻底休眠。

  • 等到 RTC 闹钟触发,CPU 被唤醒,RTOS 再根据实际经过的时间"补"滴答数,继续正常运行。

  • 这样避免了 CPU 每 1ms 醒来一次的无谓耗电,非常适合电池供电的产品。

2. 在其他场景下(裸机 / 常规应用)

实时时钟/日历:在 VBAT 备用电池支持下,主电源断电后仍能继续走时,为数据记录、事件打时间戳提供可靠时间基准。

低功耗定时唤醒:在裸机程序中,可让 CPU 进入 Stop/Standby 模式,RTC 设置闹钟定时唤醒,实现"睡死到点再醒"的超低功耗循环。

备份寄存器:RTC 模块自带的备份寄存器在 VBAT 供电下数据不丢失,可用于存储系统状态、开机次数、异常标志等关键信息。

方波输出:可配置 RTC_OUT 引脚输出 1Hz、32.768kHz 等精确时钟,用于校准或为外部芯片提供时钟。

相关推荐
Freak嵌入式3 分钟前
实战对比:用 mpremote/Putty/MobaXterm 连接树莓派 Pico REPL,谁更省心?
java·大数据·开发语言·科技·单片机·嵌入式硬件
Freak嵌入式43 分钟前
告别死循环!Pico 外部中断控制 LED,比轮询高效 100 倍
java·开发语言·stm32·单片机·嵌入式硬件
AOI小白新手上路1 小时前
江科协51单片机入门:新建第一个Keil工程,点亮第一个LED(含完整代码)
stm32·单片机·51单片机
自小吃多1 小时前
PCB Editor软件网络飞线常规处理笔记
笔记·嵌入式硬件
深圳市恒锐丰科技杨生1 小时前
CL4056D 1A 单节锂电池线性充电芯片|ESOP‑8/DFN2×2‑8 便携充电方案
嵌入式硬件·硬件工程
Messy create1 小时前
【BMS-AFE-被动均衡】
嵌入式硬件·能源
恒锐丰科技林技术员2 小时前
SS6289 桥式驱动芯片:高可靠性有刷直流电机驱动优选方案
经验分享·嵌入式硬件·硬件工程
水果里面有苹果12 小时前
39-UM960-RTK模块-和芯星通
嵌入式硬件
电子科技圈12 小时前
从工厂直达全球市场:emnify为联网设备制造商推出免费SGP.32引导网络接入的OEM计划
嵌入式硬件·mcu·物联网·智能硬件·iot·交通物流
736c12 小时前
STM32-FLASH 11
stm32·单片机