I'm having trouble getting the data I'm expecting to see back from the ADC7995. Reference voltage is set to 5V, channel 0 is connected to the signal whose level I'm interested, and the other channels are tied to 5V. My I2C interface is running at 400kHz. I'm activating channel 0 only, but leaving the other configuration bits pretty much untouched.
Using a scope, I can see that the input signal is going to various voltage levels, as expected. But when I read the data back, I always get a value of around 0x190, regardless of the actual input signal value.
The ADC appears to be responding correctly to the I2C transaction (sending ack's back as needed), and the data is not all 1's or all 0's, so I'm assuming I'm at least communicating with the chip.
Any suggestions as to what might be going on here?
could you send me the whole write frame/config byte you are sending?
and the whole frame/data bytes you are getting back?
screenshots from the scope of the SDA and SCL lines would be helpful. Does your scope have an I2C interpreter?
what values do you see with channel 0 at 5V, 0V and have you tried reading any of the other channels?