您好!
我对 ADS7138上的手动模式有疑问--我发现该器件的工作方式与数据表描述的不完全相同。
对于手动模式:
也就是说、您应该发送一个 Start 命令、7位从器件地址、R 位、然后您将获得一个 ACK、然后时钟扩展将开始。
在我的器件上、我发送 Start、ADDR、R 位、获取 ACK、然后器件立即退出最后一次转换。 在我接收到转换结果后、它会启动一个时钟拉伸周期。
我希望在启动/ ADDR/R/ ACk 之后、器件会将 SCL 保持在低电平、直到转换完成、然后将2字节结果发出。 根据施加到模数转换器输入端的电压的外部测量结果、我得到的结果似乎是正确的。 (上面屏幕截图中的器件 ADDR 为0x17)
我想调整代码以读取4个字节,看看它做什么--如果它在停止通信之前再等待2个字节。 但器件的这种预期运行方式是什么?
此外、我正在使用的 I2C 控制器在接收2个字节后似乎没有发送 ACK。 我不确定原因、也不确定这是否与我看到的问题有关。
谢谢、