I am trying to read conversion data from the ADS but am seeing some strange behavior. I have been trying to run using the internal and external reference seeing different behavior.
- I am using a differential input with one Ain pin tied to ground as the negative input and one tied to a variable power supply as the positive input
- I have tried with the PGA enabled with a gain of 1 and with it disabled
- I slowed the data rate down to the minimum 2.5 SPS
- I have confirmed all register settings by reading them back and have successfully controlled a GPIO input / output to prove functionality
Using internal reference:
I first set the device to use the internal 2.5V reference with the buffers disabled. This register set up is shown below:
- Reference Register: 0x3A
This setup gave me conversion data of all [0x7F, 0xFF, 0xFF] on every conversion regardless of the input voltage (.5V - 2V).
Using external reference
I then tried to set the device to use an external reference on the REFP0 and REFN1 pins of 2.5V. I set the register configuration to use external reference (REFP0 / REFN0) and enabled the buffers. This new register setup is shown below:
- Reference Register: 0x30
This setup gave me conversion data in a closely repeating sequence regardless of the input voltage (.5V - 2V). This sequence looks close to the following data:
[0x7F, 0xFF, 0xFF], [0x7F, 0xFF, 0xFF], [0x7F, 0xFF, 0xFF], [0x17, 0x5E, 0xDD], [0x7A, 0x78, 0x91], [0x28, 0xF8, 0xFE], [0x6A, 0x17, 0x78], [0x01, 0x8A, 0x5E], [0x7F, 0xFF, 0xFF]
I saw this same pattern of data even if I connected the external reference set the reference register to use the internal reference. It seems as though the internal reference is not working at all and I don't really have any ideas as to what would be causing the strange pattern of conversion data?
Thanks for any help!