我可以用纯软件做协议(i2c)分析吗

Can I do protocol (i2c) analyze by pure software

最近在调试一个通过I2C总线连接的光传感器问题。为了获得原始原始数据,我们重新加工 PCB 以将 I2C 数据传输到 I2C 分析仪上。但是电路板太小了,所以返修过程很难做。不管怎样,我们完成了工作。但是我想到了一个想法,如何修改 I2C 总线驱动程序并让它将所有内容记录到一个文件中。稍后我们可以使用这个日志文件来做分析器。这可能吗? Windows 怎么样(如果 MSFT 可以制作一个糟糕的临时驱动程序)。

我想说这对 SO 来说是题外话。

但是,不,您不能纯粹在软件中调试 I2C; I2C 问题通常是由电压电平错误引起的,原因可能是线路未正确上拉,也可能是主机/从机无法正确驱动它们。这可能是因为线路上的电容太大。换句话说,它们通常是模拟问题。要调试它们,您需要使用调试器或示波器(最好同时使用)查看实际信号。

当然,如果您可以访问源代码,则可以修改总线驱动程序以将日志记录到文件中。但是,当您没有看到预期的内容时,这对您没有帮助。

所以,我的意思是,真的,没有办法摆脱焊接线。不过只有三个。

一种可能有用的廉价工具是 I2CDriver. I've used it to trace DDC traffic on an I2C bus. Unfortunately, and I'd be delighted to find out I'm wrong, I do not believe it's possible to trace I2C traffic on Windows. (On Linux, this is trivial to do。)