I2C 是嵌入式领域最常用的串行通信接口之一,读写时序较复杂,调试时常因时序问题导致通讯不畅。
1、示波器和逻辑分析仪测试信号波形与逻辑
调试时将示波器和逻辑分析仪的探头同时连接MCU 的I2C 信号线,同时打开MI1062 的示波器和逻辑分析仪,示波器用于观察波形,逻辑分析仪用于观察逻辑信号。
示波器和逻辑分析仪联合调试
先观察示波器窗口,排查I2C 是否有信号输出,信号幅值是否正确,有无过冲信号等。然后使用逻辑分析仪抓取总线上的逻辑波形,排查时序是否存在问题。下图是I2C 信号时序,测量时序准确性时可以添加测量标尺辅助测量,精确定位时序问题。
I2C接口逻辑波形
2、协议分析仪解析成真实数据
为了进一步验证通信接口的正确性,打开逻辑分析仪的协议分析插件,对I2C 总线信号执行解码分析。I2C 信号解码结果如下图所示,读写过程体现的一目了然,方便用户对比解码数据和发送数据一致性。
I2C协议解码后的情况