示波器抓SPI波形全是毛刺,磁珠换三个了还这样
各位同行好,先报下设备:STM32F407做主控,SPI2接一颗AD7606,板上3.3V供电,走线大概8cm,时钟跑10MHz。最近小批量试产200块板子,有17块出现AD采样值跳变,幅度能差到几十个LSB,产线测试卡了好几天了。
我用DS1054Z加原装探头,地线弹簧也焊了,在AD端测SCLK和MISO,波形上每跳变一次都带一串振铃,峰值能到4.8V,明显过冲。已经试过:SPI时钟降到5M,现象减轻但还有;串联33Ω电阻,过冲降到4.1V左右,振铃没收干净;磁珠换了三个型号,0603的600Ω/100MHz,基本没效果。看MISO更奇怪,空闲时有个200mV左右的台阶,像是地弹。
现在怀疑是回流路径的问题,AD的AGND和主控DGND我是在芯片底下单点连的,但去耦电容离AD的REF脚有点远,大概15mm。想问下大家:这种振铃优先查探头接地还是查PCB?200mV台阶是地弹还是反射?先谢过,产线那边天天催,头大。
回答(3)
先别急着换磁珠,磁珠对10MHz边沿基本没用。4.8V过冲说明是快速dv/dt在8cm走线上激起反射,源端串联电阻应贴近MCU侧,33Ω偏小,按z0约50Ω试22~47Ω并缩短MISO分支。重点查地:DS1054Z地线弹簧焊在AD端,若这块板地平面被分割,回流的台阶就是地弹,先示波器差分或双探头测AGND与DGND压差,超过100mV就改单点接地、加粗回流。再看AD7606的REF和VDRIVE去耦,0.1uF+10uF贴脚放。17/200是批次性,先量这几块板的SPI线阻抗和地孔数量。直接看AD7606手册布线章节最快。
先别急着换磁珠,磁珠对10MHz边沿的抑制本来就有限,你看到的是边沿振铃+地弹,根子在阻抗不连续和回流路径。建议:1)探头地线弹簧焊了但要看焊在哪,MISO空闲200mV台阶很可能是地弹,用差分探头或把地弹簧直接搭在AD的GND脚上复测,确认是不是测量引入的;2)8cm走线如果没做阻抗控制,10MHz边沿照样振,串33Ω后还有4.1V说明源端匹配不够,试试在AD端并22-47pF到地做RC吸收,或把串联电阻挪到靠近AD端;3)重点查SPI的回流地,MISO/SCLK下方有没有完整地平面,AD7606的GND和MCU的GND是不是单点连的。先看波形确认振铃频率,再下结论。
先别急着换磁珠,磁珠对10MHz边沿基本没用,它主要治EMI不治过冲。4.8V过冲说明阻抗不匹配加回流路径长,重点查三个:一是SPI走线有没有跨分割地平面,8cm走线下方地是否完整,拿万用表量AD地到主控地的过孔数量,回流不畅就会振铃加地弹;二是串阻位置,33Ω要靠近源端(STM32这边)放,放AD端等于白搭,可试22-47Ω并配合源端端接;三是MISO空闲200mV台阶,八成是CS拉高后AD输出高阻,主控侧没上下拉导致浮空,加个10k下拉或确认AD的DOUT使能时序。另外17/200的不良率,先量下这17块的AD地焊盘有没有虚焊,地弹优先怀疑接地,别先怀疑信号。