1. 问题描述:
最近在使用STM32F407VET6这款芯片,刚拿到板子的时候,下载测试程序竟然弹出了如图1所示的问题,当时打开“魔术棒”发现选成了STM32F407VG系列,更改后发现还是依旧弹出这个问题。在网上查找了一番有很多说是“复位”的问题,我按着复位,再点击下载,程序是下载进去了,不过程序是不能运行,再点击下载还是出现类似的情况。
1. 问题解决:
利用仿真,发现程序在时钟初始化那里不动了,这样来看应该是时钟初始化没成功造成的此问题。仔细查找问题,发现程序的时钟初始化是在8M外部晶振下的设置,如图2所示,在这种情况下,系统时钟为8*(168/4)/2=168MHZ,而我的板子的外部晶振更改为25M的情况下,系统时钟为25*168/4/2=525MHZ, 超频168MHz太多,造成时钟初始化不成功。对此值进行更改,更改为如图3所示,则不再弹出此提示。
图2 8M外部晶振情况下的时钟配置
图3 25M外部晶振情况下的时钟配置
总结
造成这种情况出现的时候要先进行查找时钟配置,然后再查找是否是复位管脚未焊接的问题。