根据您的描述,您在I2C总线上挂了三个ADS1112,分别设置了A1和A0引脚。理论上,这三个设备的地址应该是0x90、0x9A和0x9D。但是,您发现只有0x90地址的设备有反应。
首先,我们需要检查硬件连接是否正确。请确保以下连接正确:
1. 所有ADS1112设备的SDA(数据线)和SCL(时钟线)都连接到I2C总线上。
2. 所有ADS1112设备的VCC和GND引脚都正确连接到电源和地。
3. A1和A0引脚根据您的描述已经正确连接。
如果硬件连接正确,那么可能是软件问题。请检查您的I2C通信代码,确保您正确地发送了地址和数据。以下是一些建议:
1. 确保您在发送地址时,正确地将A1和A0引脚的值包含在内。例如,对于地址0x9A,您需要发送0x4A(0x9A << 1)。
2. 确保您在发送数据时,正确地处理了I2C通信的起始位、地址位、数据位和停止位。
3. 检查您的I2C通信代码是否支持多个设备。有些I2C库可能只支持与单个设备通信。
如果您仍然无法解决问题,建议您使用示波器检查I2C总线上的信号,以确保通信正常。您还可以尝试使用其他I2C设备,以排除ADS1112设备本身的问题。
希望这些建议能帮助您解决问题。如果还有其他疑问,请随时提问。
根据您的描述,您在I2C总线上挂了三个ADS1112,分别设置了A1和A0引脚。理论上,这三个设备的地址应该是0x90、0x9A和0x9D。但是,您发现只有0x90地址的设备有反应。
首先,我们需要检查硬件连接是否正确。请确保以下连接正确:
1. 所有ADS1112设备的SDA(数据线)和SCL(时钟线)都连接到I2C总线上。
2. 所有ADS1112设备的VCC和GND引脚都正确连接到电源和地。
3. A1和A0引脚根据您的描述已经正确连接。
如果硬件连接正确,那么可能是软件问题。请检查您的I2C通信代码,确保您正确地发送了地址和数据。以下是一些建议:
1. 确保您在发送地址时,正确地将A1和A0引脚的值包含在内。例如,对于地址0x9A,您需要发送0x4A(0x9A << 1)。
2. 确保您在发送数据时,正确地处理了I2C通信的起始位、地址位、数据位和停止位。
3. 检查您的I2C通信代码是否支持多个设备。有些I2C库可能只支持与单个设备通信。
如果您仍然无法解决问题,建议您使用示波器检查I2C总线上的信号,以确保通信正常。您还可以尝试使用其他I2C设备,以排除ADS1112设备本身的问题。
希望这些建议能帮助您解决问题。如果还有其他疑问,请随时提问。
举报