Hello,
I have a strange behavior of the ADC124S041 when reading the inputs.
The order of the data is not like I'm expecting it. Let me explain this more detailed.
I'm reading all four channels. Starting with CS low than reading IN1 (0x00 + dummy byte), IN2 (0x01 + dummy byte), IN3 (0x10 + dummy byte) and IN4 (0x18 + dummy byte) and setting CS high again.
The voltage level on the pins are about: IN1 0V, IN2 0V, IN3 about 5V and IN4 about 2.5V
Therefore i would expect that i'll get: IN1 0 Bits, IN2 0 Bits, IN3 about 2000 Bits, and IN4 about 4000 Bits. But this is not the case...
At reading IN1 I get the value of IN4
At reading IN2 I get the value of IN1
At reading IN3 I get the value of IN2
At reading IN4 I get the value of IN3
Changing the order of reading doesn't effect the correlation of the results. If I start with reading IN2, IN3, IN4, IN1, the result is
At reading IN2 I get the value of IN1
At reading IN3 I get the value of IN2
At reading IN4 I get the value of IN3
At reading IN1 I get the value of IN4
Reading a single input and never another one (CS low, reading IN4, CS high, waiting... , CS low, reading IN4, CS high, waiting..., and so on) leads to the right result.
However, if I read out two inputs the same way (e.g. IN1 and IN2), the result is wrong. For IN1 I get the IN2 result and for IN2 I get the IN1 result.
To eliminate a read in issue on my controller, I check every test with an oszilloscope. The signals are as described.
All things considered it's a pretty strage behavior I can't explain. Does anybody has an idea what wrong?