This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS8528: ADC values half of what they should be after period of time

Part Number: ADS8528

Hi,

I have an ADS8528 on a sensor board that is reading 7 phototransistors. It is connected via SPI to a microcontroller on a different board. My baud rate is 1Mbps. Upon initialization, everything seems to work as expected. However, at some point I get some noise on the SPI lines (this is in a noisy environment and the source of the noise is outside of the scope of this question) and the output of the ADS8528 cuts in half. I have seen with a logic analyzer that the actual SPI values are half of what they were before (and should be).

The only way I've found to recover is to toggle the RESET line and re-send my configuration (which is 0xA1A8A220, by the way).

Below is a picture of the noise event as measured with my logic analyzer. It's not very zoomed in but it's just a single dip in the voltage. I don't think it looks enough like SPI to in anyway change the configuration of the chip. I've wondered if maybe the chip sees this as a clock signal "blip" and it throws everything off by one. But wouldn't the chip select (FS) going back up on a subsequent read re-align everything? I could see one reading being bad but not all readings after that.

I'm trying separately to find the root cause of the noise but I'm asking here because the reaction of the ADS chip is puzzling.

Thanks,

Jim

  • Hi Jim,

    Your information is very limited, I can see a clock signal in your timing but I do not know what others are, also a zoomed-in timing for one cycle with SDO,CLK and /CS will be helpful to address the issue. Based on your description, this is more like the result of the clock or data shifted to one bit if the Vref is correct. I suggest to look into the timing carefully when the incorrect data is got.

    Regards,

    Dale