新项目优化PCB板,需要在原有项目的基础上改一下连接器的引脚顺序、触摸按键的形状以及LED灯的数量。因为已经是第2次打板了,所以PCB和物料回来后,就直接焊接了1片板子,原以为下完程序就结束了,交付时间比预想的还提前2天,老板肯定很开心。在上电之前,检测PCBA没有短路后,直接上电,经过测量,各路的电压也是正常的,程序也能正常下载进去,看上去一切都很顺利。取下ST-link,再次上电后发现程序没正常运行,整块板子除了电压是正常的,其他没有任何现象。液晶屏是黑色的,显示异常,大概过了2分钟,屏幕开机了,LED闪烁,蜂鸣器发出很沉闷的响声,然后就屏幕显示就卡在开机界面。液晶屏是黑色的,显示异常,大概过了30s,屏幕开机了,LED闪烁,蜂鸣器发出很沉闷的响声,屏幕跳过开机界面,显示ERROR。 3次现象不一致,很奇怪,一度怀疑是软件问题,反复和软件确认是否软件初始化加延时,屏蔽某段代码导致的,中间做其他事情耽误一天。 第二天检查硬件,发现焊接问题,单片机用的是STM32F103C8T6,单片机的6脚和7脚焊接短路了,然后再看手册发现6脚是晶振输出,7脚是复位RST。 感觉要完蛋,晶振出问题,难怪会出现时序完全乱套、程序跑飞的情况,看来我冤枉软件了。 我先用万用表测试了一个好的晶振,阻值很大,然后用万用表测试了一下板子上面的,果不其然,晶振输入和输出短路了,RST是低电平复位,所以直接通过10k电阻接到VCC,那么现在VCC直接接到晶振的输出脚了,导致晶振短路。 换完晶振后,再次上电,发现现象依旧。。。。和第一次上电时一样,完全黑屏。 这时候就无语了,再次联系软件看是否更改程序了,软件拿出他的DEMO板,下载同样的程序,依旧稳如老狗。 这时候我想供电正常、晶振正常、下载电路正常,屏幕显示电路正常(虽然时序不对,但硬件功能正常)、启动电路也正常,那么就剩复位电路部分了。 我用万用表测量了一下复位电容的2端,发现电容的阻抗是200多欧姆,这结果不对,MLCC失效短路了。。。。 电容的耐压值是50V,不会是击穿短路的,极有可能是物料问题,或者受撞击导致的。 还是希望大家吸取教训,调试时焊接板子无比反复检查有无虚焊、短接等错误,不然排查起来真的很费时间。 本号对所有原创、转载文章的陈述与观点均保持中立,推送文章仅供读者学习和交流。文章、图片等版权归原作者享有,如有侵权,联系删除。
█ 好文推荐
硬件学习是个漫长的过程,推荐几本经典好书
来源:EEDesign