STM32外部8M晶振不启动

新焊接的板卡,测试8M晶振不起,网上查原因:空的STM32外部晶振不起,烧写程序后会起。

参考:

http://www.openedv.com/posts/list/36355.htm

http://www.classnotes.cn/3742.html

靠谱解释:

修改stm32f10x.h文件中 HSE_STARTUP_TIMEOUT 的值,默认的0x0500改大一点,我直接改为0xffff,测试可以通过。

这个参数是启动中设置时钟用到,作用是等待外部晶振稳定,等待超过这个值外部晶振还没有稳定,就启用内部PLL时钟,所以把这个值加大,多等待一段时间,其实都是us级别,对时间要求不是特别高可以使用,稳定之后还是72m。

原因分析:不确定是不是晶振的质量问题,还是stm32的差异,或者买到了假的stm32,因为之前GD32就需要修改这个参数

原文地址:https://www.cnblogs.com/tubujia/p/13748758.html