今天在调试103C8T6的RTC时钟,采用的优信电子买的STM32F103C8T6最小系统板,在连接调试器时,程序能够正常运行,但是在把调试器取下时,重新上电无论如何都无法点亮,怀疑其卡死在初始化上。
最后观察了其最小系统板的原理图后,发现采用的为20pF的负载电容,当我取下两个电容后,RTC时钟恢复正常,重新上电系统能够正常运行。

2025.10.29
程序死在下面RTC初始化函数中

发现再cubemx中其配置RTC中断后,会在rtc.h中的Msp硬件初始化中直接开启了中断,从而导致系统在没有配置完中断没有配置完成后即开始了进入到中断中

现在解决的方法为将cubemx生成的HAL_MspInit函数中的HAL_NVIC_EnableIRQ函数禁用,如上图显示;
将MX_RTC_Init中配置完RTC闹钟中断后,再开启HAL_NVIC_EnableIRQ中断,如下图显示。

文章讲述了作者在调试STM32F103C8T6开发板上的RTC时钟遇到的问题,发现使用20pF负载电容导致上电后无法工作。移除电容后,RTC恢复正常。
2800

被折叠的 条评论
为什么被折叠?



