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

2021/10/15 17:45:35

本文主要是介绍STM32L431断开jlink后程序无法运行,需要短复位电容才可以,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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

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

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

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



这篇关于STM32L431断开jlink后程序无法运行,需要短复位电容才可以的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程