[STM32L4] STM32L476RG中RTC 显示时间延迟较大

[复制链接]
 楼主| 封存into 发表于 2025-5-26 09:00 | 显示全部楼层 |阅读模式
在 STM32L476RG 上使用 FreeRTOS,用 stm32cubeIDE 代码生成。在串口打印日期和时间,时间格式为小时:分钟:秒:亚秒。
当开始运行程序时,时间与当前时间一样正确。但是几个小时后,延迟超过 10 分钟。


classroom 发表于 2025-5-26 11:07 | 显示全部楼层
可能是RTC时钟源配置问题
elephant00 发表于 2025-5-26 11:15 | 显示全部楼层
MCU进入低功耗模式时,RTC中断可能无法及时唤醒系统。
stormwind123 发表于 2025-5-26 11:46 | 显示全部楼层
启用LSE,并检查RTC_Init()函数中的时钟源配置。
powerantone 发表于 2025-5-26 12:03 | 显示全部楼层
估计是LSE未正确配置或晶振未起振。
flycamelaaa 发表于 2025-5-26 13:00 | 显示全部楼层
可能是用了精度较低的LSI作为时钟源,导致时间累积误差。
probedog 发表于 2025-5-26 14:09 | 显示全部楼层
预分频值可能未根据时钟源频率正确计算,导致RTC计数器频率偏离1Hz。
jcky001 发表于 2025-5-26 15:00 | 显示全部楼层
可能是中断处理延迟导致的。
cr315 发表于 2025-5-26 16:30 | 显示全部楼层
提高中断优先级,在STM32CubeMX中设置RTC中断优先级高于其他外设。
onlycook 发表于 2025-5-26 18:00 | 显示全部楼层
检查LSE晶振及电源稳定性。
4y1b3 发表于 2025-5-31 23:47 | 显示全部楼层
本质上是 RTC时钟源配置不当或系统干扰导致 RTC 误差,并非 FreeRTOS 本身的问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

111

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部