编程语言
首页 > 编程语言> > STM32L431断开jlink后程序无法运行,需要短复位电容才可以

STM32L431断开jlink后程序无法运行,需要短复位电容才可以

作者:互联网

使用STM32CubeMX配置时钟源为MSI,配置系统时钟为80MHz,生成的代码只运行点灯程序和外设初始化时是正常的。加入业务代码后,在连接jlink的情况下可以运行,不然的话就需要短一下复位电容才行。

开始怀疑是复位电容的问题,更换之后还是一样,而且在调试状态下也有可能进入HardFault_Handler,在Call Stark+Locals里面进入HardFault_Handler之前的内容为0x00000000。

在更换时钟源为HSI后,程序正常运行,确定了问题出在系统时钟配置上(还没研究使用MSI为什么会这样)。如果使用MSI的话,可以参考STM32L432的内部MSI晶振使用

另外,使用STM32CubeMX生成的代码默认优化等级3,第一次使用STM32CubeMX,用起来不太顺。

标签:STM32L431,断开,复位,使用,STM32CubeMX,MSI,jlink,电容,时钟
来源: https://blog.csdn.net/sinat_42731525/article/details/120782982