[STM32L0] 只有在设置了调试断点时,RTC才能正常工作。

[复制链接]
878|11
yunfu1117 发表于 2025-9-30 23:09 | 显示全部楼层 |阅读模式
我使用的是STM32L071K8芯片、Cube IDE和Segger JLink。无论使用LSE还是LSI,都出现同样的问题。只有在设置了调试断点时,RTC才能正常工作。

评论

查阅ST提供的官方例程中有关RTC的使用案例,对比自己的代码实现有何不同之处  发表于 2025-10-10 11:05
xiaoqizi 发表于 2025-10-11 08:09 | 显示全部楼层
STM32L系列注重超低功耗设计,某些情况下,为了进一步降低能耗,可能会关闭或禁用部分外设功能,包括RTC
木木guainv 发表于 2025-10-11 10:45 | 显示全部楼层
在调试模式下,由于调试器的介入改变了系统的运行状态,使得RTC能够暂时恢复正常工作
Jiangxiaopi 发表于 2025-10-11 13:08 | 显示全部楼层
在使用电池供电的场景下,随着电池电量的下降,电压逐渐降低,可能会达到RTC工作的临界点以下。此时,在正常运行时RTC会失效,但在调试过程中,因调试工具提供的额外电源支持或其他因素,使电压暂时稳定在一个可接受范围内,从而让RTC得以工作
荣陶陶 发表于 2025-10-11 15:39 | 显示全部楼层
有可能在生成初始化代码的过程中出现了错误,导致RTC所使用的时钟信号路径不正确或者被意外切断
Zhiniaocun 发表于 2025-10-11 17:58 | 显示全部楼层
在启动RTC之前,可能需要一定的延迟来等待相关电路稳定
Zuocidian 发表于 2025-10-11 20:17 | 显示全部楼层
对于使用LSE的情况,检查外部晶振及其周边电路是否存在虚焊、短路等问题
Puchou 发表于 2025-10-11 22:35 | 显示全部楼层
确保在所有预期的工作模式下,RTC都被允许继续运行。查看数据手册中关于不同低功耗模式下各外设的状态说明,并根据实际需求调整电源管理策略
Xiashiqi 发表于 2025-10-12 08:45 | 显示全部楼层
CubeMX自动生成的驱动程序可能不够完善,尤其是在处理一些边缘情况或特殊需求时
小海师 发表于 2025-10-12 11:05 | 显示全部楼层
按照正确的顺序初始化各个外设,特别是那些可能与RTC有交互作用的部分
Haizangwang 发表于 2025-10-12 13:22 | 显示全部楼层
在关键步骤添加日志输出语句,记录程序执行过程中的重要事件和状态变化
您需要登录后才可以回帖 登录 | 注册

本版积分规则

74

主题

76

帖子

0

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