当你遇到这种情况时,示波器可以成为你非常好的帮手,对不懂的地方,可以先查查资料,尝试弄明白原理,然后用示波器量一下波形,时序等,验证自己的分析结果。通过示波器可以直观地看到波形,会使人感到很清晰,印象深刻,理论知识也可以得到更好的理解。
把一个电子产品上的信号都量测之后,加上学习一些文档,那样对自己所面对的产品理解就会透彻了。
2、直面 bug 的本质
当我们在解决 bug 的时候,有的问题可能根据经验就解决了,而没有去彻底把本质搞明白。这样就会有隐患,而且下次设计电路的时候可能掉进同样的一个陷阱。
比如 I2C 上拉电阻配置不正确导致通信出现概率性失败,信号线上电容过大导致波形失真等,也许我们改改电阻值、电容值就把问题解决了,但是这样还不够,如果通过示波器看到波形的本质,然后再去调试。这样解决的问题,以后就不会再犯了,也会保证避免出现一些当时认为已经解决,但是在批量时依然会概率性的出问题。
一些 EMC 问题是由内部高频信号的谐波引起,通过示波器调试,可以在保证信号完整性的基础上有效降低辐射信号的能量,如串接更合适的匹配电阻,增加对地电容等手段去解决。而保证信号完整性,最直接的手段就是使用示波器测试,以免矫枉过正,出现隐患。
3、用事实说话
有些 bug 出现的时候,需要多方来一起解决。这样的多方邮件沟通就需要图像作为重要依据了。之前遇到一个 bug:Host 端向 device 端加载文件时出现概率性失败的情况。这里涉及三方的硬件,软件,还要涉及 Host 芯片及 Device 芯片厂家的台湾原厂。各方经过各自的检查,加上各自之前出货的经验,均认为自己没有问题。使用示波器反复量测波形,时序,在开始也没能定位问题。因在启动时,时钟信号线上会出现一部分 1V 杂波信号,然后通过实验手段判定就是 Host 端发出,以此作为证据要求 Host 端的台湾原厂修改,理由是不管此信号是否对通信造成影响,至少先解决这个问题再考虑。在更新过两次代码后,1V 杂波信号消失,老化拷机,并未出现问题。