I have grounded address lines A0/A1 and hence I'm sending the 8-bit Slave address of 0x18 from my microcontroller to the AMC6821 chip. On a CRO I can see the pulses on the SCLK and SDA lines so I know I'm clocking data in and out.
However whenever I try to read a byte from any of the registers (following Table 7 format in datasheet) they are always returning 0xFF.
At the very least for Device ID Register (address=0x3D) I should read a default value of 0x21 and the Company ID Register (address=0x3E) should read a default value of 0x49. These are read-only registers so there is no way I could have accidentally overwritten them.
Is the IC faulty or something, or am I doing something wrong in using the i2c bus? I have attached the circuit diagram below.