We have setup the ADS8201 to read a voltage difference across a differential pair.
I can set and read all the registers without issue. However when I read the 3 bytes from the ADC channel I get the first byte correctly, occasionally one bit from the send byte but almost always missing any of the last 3 bytes, but I can read the channel address (3rd byte) correctly.
The sam happens if I switch out of differential pair mode and read channels 1 & 2 independently.
What am I doing wrong. It feels like I'm reading too quickly after requesting the conversion, but no amount of delay has helped.
I'm concerned I may also be in the wrong SPI mode, there is some discussion online that suggests reads need to be in SPI Mode 1 to write the address I want then switch to Mode 0 before pulling the data. I've tried that, but there was no difference. Incidentally why does anyone design a chip to use different modes for read and write !!
Any recommendations would be useful.