I'm trying to talk to an AS1538 8-ch ADC from ams. I send the address and watch on the scope. Address sent is 0x90, but what I see on the scope is 0x20. The SDA and SCK lines look like they doing the right thing. I also see 9 clocks, last one is ACK maybe? but the 9th clock corresponds to a '1' being written on SDA. Also, no matter what address I send I see the same '1' written on that 9th clock.
Examples of shifted data.
0x96 -> 0x2c 0x55 -> 0xaa 0xaa -> 0x54 0x22 -> 0x44 0x44 -> 0x88 0x88 -> 0x10
Here is the code
Any thoughts anyone?