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.

ADS1262: Strange conversion results

Part Number: ADS1262

Hi all,

I'm using the ADC to read a signal from a waveform generator. The waveform looks clean on oscilloscope, however the DAQ seems not correct.

Setting for the ADC:

Sampling rate: 38400SPS (maximum speed, no delay)

SPI speed: 5MHz

The data ready signal (DRDY) on ADS1262 is used to triggered interrupt on MCU to read the data.

FYI, the ADS1262 is initialised and then the registers array is read back and compare to make sure SPI is functioning correctly. I've also tried changing the SPI speed but same results.

I don't think this is noise, but just something is not matching there. Any advice will be appreciated.

Kind regards,

Phil

  • Hi Phil,

    I agree, that does not look like noise. Is it possible that you might be encountering some errors while reading the data?

    - Perhaps the data is not getting clocked out before the next ADC conversion is completing (and data is being read directly, not using the RDATA1 command). In this case the data can get updated WHILE you're in the process of clocking it out, causing an invalid result.

    - Another issue could be the signal integrity on the SPI bus, causing bits to be misread or glitching on the SCLK signal which can left shift the data.

    - Yet another common issue I've seen is that the SPI buffer on the MCU is not being cleared out before reading the data, so the MCU may be using junk data in the post-processed calculations.  

    Have you tried looking at the SPI communication on an oscilloscope to verify that it is being read correctly?

    For troubleshooting, I might also suggest starting with the ADC inputs shorted (to a mid-supply voltage) and seeing if you get output results that are all close to 0.

    Best regards,
    Chris

  • Hi Chris, 

    Many thanks for your response. My problem is because of this...

    Christopher Hall said:

    - Perhaps the data is not getting clocked out before the next ADC conversion is completing (and data is being read directly, not using the RDATA1 command). In this case the data can get updated WHILE you're in the process of clocking it out, causing an invalid result.

    Thank you very much, Chis, you are genius. Can I buy you a beer?

  • Hi Phil,

    You're welcome; glad I could help!

    You wouldn't by chance be travelling out to the southwest USA any time soon would you? ;)

    Best regards,
    Chris