2

I have read that "I2C standards does not allow to connect slaves with same address on same master.". Also each chip vendor assigns an address for I2C communication.

Question 1- Would all ADS7830 have same I2C address (I think it is 0x4B) Question 2 - If all ADS7830 have same I2C address, does this mean I can't use more than one in the same circuit?

1 Answer 1

6

The ADS7380 has, according to the data sheet 2 address pins. That means you can connect up to 4 of them to the same I2C bus. If you need more, you can either use multiple I2C busses (the Raspberry Pi 4 has up to 6 of them) or use I2C multiplexers.

If you use breakout boards, they usually use pull-downs on the address pins, but you can normally still change them, either by soldering a bridge on the board or by using the A0 and A1 pins, if they're wired out.

5
  • Thanks. How do I assign the address to individual ones? Eg. in one of the codes I saw, the address assigned is 0x4b which is the default i2c address for ADS7830 Module. Though I don't understand from where this value comes and what the next 3 addresses should be Jan 3, 2022 at 16:28
  • That depends on the exact kind of breadboard you use (if any). Which product do you have?
    – PMF
    Jan 3, 2022 at 18:20
  • ADS7830 for ADC. Rasberry Pi 3, This breadboard (pic from a different question I asked earlier) raspberrypi.stackexchange.com/questions/132164/… Jan 3, 2022 at 18:28
  • I think I found the answer (but will be happy for you to confirm). The datasheet says that the first 5 bits MSB of address are fixed to 10010 followed by A1 and A0. So possible addresses are hex 0x48 (for 00), 0x49 (for 01), 0x4A (for 10) and 0x4B (for 11). The default input for pins A1 and A0 seem to be high (pull up) so 4B is the default address. If I ground A1 and A0 then I get pattern 48, 49,4A. So if I want to use 4 ADC, I'll need to wire their addresses like this. Jan 3, 2022 at 19:26
  • That makes sense. The default values differ by manufacturer, but with your observation, that should work for you. You can always use i2cdetect to check whether the address change worked. (Note that you should avoid changing the addresses while the device is powered. Some devices may act unpredictably after that)
    – PMF
    Jan 4, 2022 at 5:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.