这是我在做
单片机系统板时候碰到的问题,之前虽然也做过相似的板子,可是未曾出现过无源
晶振不起振的问题。下面是我在遇到问题后的一些检查,排除问题的过程。本人小菜鸟一个,文章中如有错误和不足,还望各位大佬指正和补充。
事情是这样的,本人做了一款32单片机系统板(先叫它老大),在老大出来之前的前五个月,我用相同的PCB板焊了一款用在毕设上面,那个是能正常工作的。板上有个小负载,
LED灯。想让这个灯闪烁。代码是没有问题的,因为到从网上买的单片机是正常工作的。用JLink到自己做的板子上也是能进去的,但是不工作。怀疑晶振没起振。用示波器测量晶振引脚对地为一个高电平,而控制那个灯亮的管脚一直是高电平。买回来的板子晶振引脚对地为一个正弦波,控制灯的引脚波形为方波。
找到问题出现在板子时钟没起振,到底是时钟电路哪个地方出问题了还未得知。首先想到的是换个晶振,8M的晶振换了(次换),换过后,程序烧写进去,复位按键按下,灯不亮。接着考虑晶振旁边的匹配电容的问题,将匹配电容由22pf换成了20pf,仍然是不工作。没想通是为什么。于是将剩余的器件和板子拿出来想焊另外一块对着排查,结果焊接的时候,没控制好力道,把引脚弄弯了,芯片引脚勾肩搭背了,开始谈恋爱了,狂撒一波狗粮。这样肯定不行啊,月老不能乱点鸳鸯谱啊,于是,用热风枪把整个芯片吹下来了,棒打鸳鸯,结果焊盘不愿意了,藕断丝连,板子铜线扯出来了,整个板子废了,老二胎死腹中。
从老二上面拆下来的芯片牺牲的老二
老二挂了,造老三。之前剩余的芯片已经用完了,从师兄那里顺回来一片芯片,老三很快造出来了。制造中的老三,旁边的那个是老大,哈哈~
stm32F103单片机
无源晶振不起振排除问题
老三生下来很健康,晶振起振,不过老大和老三除了晶振的匹配电容20pf一样外,晶振和芯片虽说名字一样,但是不是从一个盒子里面拿出来的。于是将老大的晶振换成和老 三一样的晶振(第二次换)。在要拆老大的晶振的时候,发现上拆的时候造成晶振引脚的一个焊盘断了一半,就是晶振引脚和单片机引脚的连接断掉了。怀疑是这个问题,于 是将老大的晶振输入引线上的绿油刮掉一点,用锡焊接在晶振腿上。但是结果却是和之前一样。
老大板子背面的晶振管脚
第二次换晶振,和老三的一样。然而结果是并没有什么用,还是不起振。说明原因不是在这里。师兄劝我不要太执念的时候,我走了一步我不太想走的路。换芯片。当时买的芯片是20多元一片,老二已经挂了,如果是老大芯片的问题,又要挂一个芯片。这够我吃上两三顿黄焖鸡了。所以,在拆老大的大脑的时候,内心是不情愿的。但是我想让这个板子能工作,于是又去师兄那里顺手牵羊(自己买的用完了)牵过来一片。
初次焊接上去,器找不到芯片,这个问题我知道出在哪,PA13和PA14引脚焊接问题,于是用烙铁再打磨一下。再次的时候,程序进去了,复位,翠绿色的LED灯闪起来了。利用控制变量法逐一排查,查到芯片本身上,至于芯片内部出现了什么问题就不得而知了,也有可能我焊接的时候
电烙铁对芯片做了些什么不可告人的秘密, 终导致芯片挂了。
个人对无源晶振不起振的原因总结如下:
1、 晶振质量问题。
2、 晶振的匹配电容的容值不合适。
3、 控制芯片质量有问题。
4、 板子电路有问题。
5、 晶振离芯片距离太远。