我使用 的 ADC121C021使用 I2C 协议来传输数字数据。 我正在使用其中的8个电容器来测量电力电子电路中的8个电容器电压。 八个 ADC 中的每个都分配了八个不同的硬件地址。 根据 I2C 协议、当 SDA 线上的地址与其对应的硬件地址匹配时、ADC 会传输数字数据。 如果不匹配、则会生成非确认(NACK)。
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.
我使用 的 ADC121C021使用 I2C 协议来传输数字数据。 我正在使用其中的8个电容器来测量电力电子电路中的8个电容器电压。 八个 ADC 中的每个都分配了八个不同的硬件地址。 根据 I2C 协议、当 SDA 线上的地址与其对应的硬件地址匹配时、ADC 会传输数字数据。 如果不匹配、则会生成非确认(NACK)。
感谢您的回答。
是的、我尝试一次与一个 ADC 通信。
SCL 频率保持在3.3MHz、100ns 为高电平时间、200ns 为低电平时间。
在下图中、Ch-2是 SCL、Ch-4是 SDA。
下图显示了进行通信时数据线的状态。 从器件地址为51H
下图显示了 ADC 发送 NACK 时从工作模式到情况的转换。 即使在连续尝试重复启动后、ADC 也会继续发送 NACK。
下图显示了 ADC 将所有位发送为零时的情况。
下图显示了 ADC 将所有位发送为1时的情况。
当 ADC 以100kHz 的频率运行时、未观察到这些问题。 高电平和低电平时间(即每个5微秒)。
ADC 再次以440ns 的 SCL 周期运行、120ns 为高电平时间、320ns 为低电平时间。 根据数据表第8页上给出的以下信息选择这种不相等的低电平和高电平时间。
在这种情况下、ADC 进入 NACK 区域时的行为稍有不同、如下图所示。 在从器件地址51H 后、写入位被指定、然后 ADC 发送 NACK。 根据我们的代码、后续位应该为1。 在3.3MHz 运行时就是这样。 但是、在下图中、您可以看到总线电压下降、我们无法对此进行解释。 然后是重复开始。
电容器电压检测电路包含一个分压器、用于将电容器电压降至 IC 电压电平。 然后是隔离放大器级。 隔离放大器的输出是差分类型、其中 ADC 是单端的。 因此、使用差分放大器将隔离放大器与单端 ADC 相连。 差分放大器的截止频率约为10kHz。