STM32F103批量生产后部分板子死机,求助!
各位大佬,求助一个量产翻车现场。我们做的一块消费类控制板,主控STM32F103C8T6,之前小批量200片都正常,这次量产5000片,产线反馈大概有3%的板子跑一段时间后死机,看门狗都救不回来,只能断电重启。
现象很怪:不是一上电就挂,老化测试跑十几分钟到半小时才出现,用手摸MCU附近温度稍微高一点就更容易触发。我们已经排查了:电源纹波正常,复位电路换了电容也没用,程序在之前批次板子上跑了三天三夜不复现。现在怀疑是这批次的MCU或者外围物料有问题,但供应商说批次没问题,让我们自己查设计。
项目卡在这,下周一要交货,产线停着一天就是几万块。想问问有没有兄弟遇到过类似情况?是晶振起振裕量不够,还是FLASH等待周期配置的问题?或者这批芯片本身有坑?在线等,挺急的。
回答(2)
先别急着甩锅给MCU批次,3%不良+温度相关+老化十几分钟才出,这味儿太像起振裕量不够或电源时序问题了。给你三个排查点:一、拿示波器量这批板子的8M晶振起振波形,重点看负阻裕量,用热风枪局部加热到60℃再复测,起振慢或停振就是它,换负载电容或加起振电阻;二、查BOOT0和NRST在上电瞬间有没有毛刺,量产板焊接残留和助焊剂漏电会拉低复位脚;三、把死机板子的程序读出来比对,确认不是Flash个别位翻转。另外3%这个比例,优先怀疑物料一致性,让供应商提供这批MCU的批次和晶振的负载电容实测值。先拿几块坏板加热定位,别全线返工。
先别急着甩锅批次,这现象八成是晶振起振裕量或供电/复位时序在临界点上。建议按这几点查:
1. 晶振负阻测试:用示波器测OSC_IN波形幅度,若峰峰值<1V或起振慢,换8MHz、负载电容匹配的晶振,负载电容按规格书第3页CL值算,别沿用旧值。
2. 布局走线:晶振走线是否过长、地环路大?顺带看VDD去耦电容是否每对VDD都贴0.1uF+10uF,别只放一颗。
3. 复位/BOOT脚:摸温度就触发,查NRST对地电容是否漏电、BOOT0是否浮空,热态下漏电流变化会拉低复位。
另外确认下批次是否翻新片,丝印和X光看下。先按1、2做,产线可以同步筛。