Other Parts Discussed in Thread: ADC121C021
器件型号: ADC121C021
我发现、写入 I2C 寄存器有时实际上无法更新寄存器。 发生这种情况后、我无法对任何寄存器进行写入、但可以成功执行读取。 我可以通过执行转换(读取寄存器 0)使其退出此状态、然后可以再次写入寄存器。
我没有找到任何原因。 I2C 似乎正常、总线上有另一个器件可以正常工作。 我在自动转换模式下运行、但在未进行相应配置时、可能会发生这种情况。
您能说明为什么会发生这种情况吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Other Parts Discussed in Thread: ADC121C021
器件型号: ADC121C021
我发现、写入 I2C 寄存器有时实际上无法更新寄存器。 发生这种情况后、我无法对任何寄存器进行写入、但可以成功执行读取。 我可以通过执行转换(读取寄存器 0)使其退出此状态、然后可以再次写入寄存器。
我没有找到任何原因。 I2C 似乎正常、总线上有另一个器件可以正常工作。 我在自动转换模式下运行、但在未进行相应配置时、可能会发生这种情况。
您能说明为什么会发生这种情况吗?
下面是写入失败的图像。

这是导致故障的流量。

这是所有三条消息、以便您查看时序。

我发现很难触发示波器来捕捉故障、但这就是 I2C 流量的样子。
e2e.ti.com/.../adcI2c.pdf
这是第一条消息之前寄存器的状态、情况很重要。
adc121c02x:注册:0 = 0x017
adc121c02x:注册:1 = 0x002
adc121c02x:注册:2 = 0x034
adc121c02x:注册:3 = 0x000
adc121c02x:注册:4 = 0x007
adc121c02x:注册:5 = 0x000
adc121c02x:注册:6 = 0x000
adc121c02x:注册:7 = 0x0A4
我设法得到了失败的写在范围.
这是上下文中的写入、这是第二条消息。
这是写入失败的结果。