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.

ADS114S08B: Confused about configuring PGA_EN bit

Part Number: ADS114S08B


Hello,
We are using the ADS114S08B ADC in our design. We are using an external reference and we are trying to setup for unipolar mode of ADC operation. We are getting converted values as if it was reporting in Bipolar mode.
We are not sure how to interpret some instructions in the manual.
Table 19 for the PGA_EN says:
PGA enable
Enables or bypasses the PGA.
00 : PGA is powered down and bypassed. Enables single-ended
measurements with unipolar supply (Set gain = 1(1)) (default)
01 : PGA enabled (gain = 1 to 128)
10 : Reserved
11 : Reserved
But in section 10.1.4 it says:
Therefore, set the PGA_EN bits to 10 in the gain setting register (03h) to
measure single-ended signals when a unipolar analog supply is used (AVSS = 0 V). Only a gain of 1 is possible in this configuration.
Is the value in PGA_EN to be set to 10, which is reserved, or do we write 00?
An additional question: are the return values always signed and thus BiPolar values?
Thank you,
Steve
  • Hi Steve,

    Welcome to the E2E forum!  Let's answer the last question first.  The output code is always binary 2's complement.  So 0xFFFF is actually decimal code -1.  So values close or at 0 input may see some codes that are below 0.

    For the discussion in section 10.1.4 there is an apparent typo that will need to get corrected.  You should never write a reserved setting to the device.  Always refer to the register map table instead of the text when in doubt about settings.  So for your use case you want to set the register bits to 00.

    Best regards,

    Bob B

  • Thank you very much, Bob.

    As is often the case, one answer leads to another question.

    Given the output is in 2's complement, it seems we should be using 32,767 as a scale factor rather than 65535.  Correct?

  • Hi Steve, 

    There are a total of 65535 bits with positive full-scale at 0x7FFF (32767 codes) and negative full-scale at 0x8000.  However, as the conversion result is binary 2's complement you may see some negative codes as I had explained earlier that may result from a small negative offset or noise around a 0 input.  This gives a full-scale range of +/-VREF/PGA GAIN.  If the PGA GAIN is 1, then the full-scale range is +/-VREF.

    Regardless the value of one code (LSB) relative to full-scale range will always remain the same even with a single-ended measurement.  You would just utilize the positive range.  LSB = FSR / (2^16 - 1).  If you only use 1/2 of the full-scale range, which is equivalent to +FS, you would be correct in that the total number of codes reduce where the LSB = +FS / (2^15 - 1).  So the calculation result remains the same for the value of one code in the end.

    I hope that I have not caused more confusion in the end with this explanation.  In the end if you only measure half of the full-scale range the maximum codes will also be 1/2 but the value of a single code remains the same.

    Best regards,

    Bob B

  • Thank you.  You've been a great help, Bob.