项目中使用的STM32芯片使用LSE作为RTC时钟源时有些32K的晶振会出现不起振的情况,怎么解决呢?
在STM32的官方勘误手册中也提到了LSE会出现不起振的情况,如下图所示:
不起振的原因
手册上指明造成这种情况的原因是晶振线路上产生的感应电流阻止了LSE的起振,尤其是当PCB没有遮盖,而周围的空气潮湿使得OSC32_IN/OSC32_OUT引脚上出现水汽的时候。手册中还有一句话”This unwanted behavior may happen only at the first back-up domain power-on the device.”,这种情况一般只出现在备份域第一次上电的时候。如果真是这样,那么测试的时候就安装上备份区的电池,那么一旦测试的时候能够起振,那么就不会出现LSE不起振的情况了,除非扣过电池。
解决方法
ST公司还是给出了官方的解决方法,那就是在LSE靠近芯片的方向并联一个16M到22M欧姆的电阻,就能够彻底解决不起振的问题了。