I.问题现象
RN8215产品预试流过程中,环境试验拷机时发现多块仪表运行不正常,出现无法掉电和无法上电的情况。
II.问题分析
1、故障表产生过程:
进行-20~70°通讯循环试验中,当温度稳定在40°拷机时,发现有3块仪表无法正常工作,测试VCC及电源,正常。
2.对3号仪表进行重新烧录代码后发现,代码仍然无法正常运行:
3.断电后,测试3号仪表32晶振波形如下(晶振电压是有的,但无频率波形,见下图):
4.更换3号表的晶振,上电代码仍然不运行,晶振不起振;
测试2号表的晶振,也未起振。
5.将3号仪表连同上两块故障仪表继续放在温箱里,温度调至70°拷机,3块仪表均恢复正常。测试晶振波形如下:
得出结论:在温度试验时,这三块仪表的RN8215芯片出现故障,导致晶振不能起振,进而导致代码不能正常运行。而经过高温后,故障又消失。
查阅RN8215相关技术规格书,有以下内容:
我们本次的设计方案中,只是用了32768晶振,未使用外部高频晶振,晶振品牌为鸿星。
经与厂家技术支持沟通,给出以下建议:
板子不干净,晶振未选择使用精工晶振,在高低温试验中可能会改变板子的阻容匹配,因此导致晶振不起振。
相应对策:1.板子清洗后刷三防;
2.晶振使用对称布线。
6月1日~6月5日验证厂家提出的对策。
根据厂家提出的对策整改14块仪表,板子清洗刷三防,放入高低温环境中持续拷机,48小时后,有3块仪表在上电运行过程中出现过仪表运行不正常,后自动恢复。
试验结论:厂家提出的对策可以降低不良产生概率,但不能完全解决故障。
再次与厂家沟通解决方案,厂家提供了RN8215B版本芯片,由我方进行再次试验验证。
6月6日验证内容:不修改代码,更换CPU和晶振,使用B版芯片和精工晶振,技改10块仪表,未刷三防。将这10块仪表放入温箱继续进行湿热和高低温试验。
交变湿热试验72小时,未发现异常,低温试验8小时未发现异常。
综上:使用RN8215B版本芯片和精工晶振可以解决晶振不振的问题。
III.解决方法
由问题分析可见,清洗板件刷三防可以有效降低不良率,因此后续生产时需刷三防;
后期生产需使用RN8215 B版本芯片和精工晶振进行生产。
添加外部高频晶振作为主时钟源。
IV.总结和建议
对于无外部起振电路的晶振电路,PCB布局布线时需注意对称布线,走线距离短,且晶振下方不能有走线。
对于无外部起振电路的CPU,需特别注意系统时钟的切换方式。
对于电池供电的系统,需对硬件电路中的掉电检测进行功耗确定,合理处理电池切换的方式及掉电处理函数。