Post Go back to editing

ADAU1701 I2C read

Hi

My customer is trying to initiate an i2c read from adau1701.

Addr0==Addr1=0 => Write addr = 0x68, Read addr = 0x69.

Sequence looks like he indeed sends 0x69, however adaqu1701 doesn't send an ack (pulls SDA low on 9th clock)

Attached are read sequence & schematics.

Similar write sequence (sending 0x68)  produces the required ack.

Please advise

BR,

Alon

attachments.zip
Parents
  • Hello Dave

    Yes, but on commands the first frame should end with an ACK.

    Let me try to elaborate on the issue.

    The board was powered up, and the customer tried to check his I2C design with all parts on the bus.

    He tried reading from all devices, and the only one who failed (send a NACK) was the ADAU1701.

    Than they tried a write command, and got an ACK from the part.

    So, maybe for a part which hasn't been configured we need to do a write transaction (6 or more frames) before a read transaction?

    If yes, this is undocumented in DS.

    Thanks

    Alon

Reply
  • Hello Dave

    Yes, but on commands the first frame should end with an ACK.

    Let me try to elaborate on the issue.

    The board was powered up, and the customer tried to check his I2C design with all parts on the bus.

    He tried reading from all devices, and the only one who failed (send a NACK) was the ADAU1701.

    Than they tried a write command, and got an ACK from the part.

    So, maybe for a part which hasn't been configured we need to do a write transaction (6 or more frames) before a read transaction?

    If yes, this is undocumented in DS.

    Thanks

    Alon

Children
No Data

Before You Switch


Switching languages will make ADI Explorer unavailable. Resume your session by switching back to English and reopening ADI Explorer.