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.

ADS1216: Why ADS1216 get wrong digital result at 300SPS?

Part Number: ADS1216

Hi expert,

I am using ADS1216 and my test circuit is to sample a constant 0.147V DC voltage, but I get wrong digital code when I change the data rate of ADS1216 from 10SPS to 300SPS. Can you give me some suggestions on the possible reason cause this issue?

Below is my configuration.

  • Input:0.147V dc
  • REF: external 2.5V.
  • Digital code output:
      • about 500000 at 10SPS(this is correct based on 0.0147V dc input),
      • about 300000 at 300SPS(this is wrong)
  • Software register config are as below picture.

Thanks and best regards

Rachel

  • Hi Rachel,

    Are you writing to the OCR and FSR registers?  If you overwrite these registers you will directly impact the result.  I would highly recommend not directly writing these registers.

    Are you issuing a SELFCAL self-calibration command?  The calibration should be run following power-up, change in the PGA or change in decimation ratio (or change of data output rate) as specified in the Calibration section in the ADS1216 datasheet.  

    The last possibility is you are not reading the result back quick enough.  DRDY signals end of conversion and new results are available.  If RDATAC mode is being used, then as soon as a new conversion result is available it will be placed into the output register.  If the data are being read at the same time as an update occurs, then the result can be corrupted by the new data.  If using RDATAC mode you must make sure that the data are completely read from the device before the next update.  If not able to do so, I would suggest issuing SDATAC and use the RDATA command to read the conversion result.

    Best regards,

    Bob B