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.

ADS1256EVM without MMBO

Other Parts Discussed in Thread: ADS1258, ADS1256

Dear Chris and TI Community,

I am wondering about using ADS1256EVM without MMB0 board as I did with ADS1258.  Based on my previous experience I have collected the pins that I should use. 

Would you mind check this list below, maybe I miss something important.

For Digital Communication: SPI Clock Speed 2MHz | CPOL = 0 | CPHA = 1 

  • J2.3 - SPI CLK
  • J2.7 - SPI CS
  • J2.11 - SPI DI
  • J2.13 - SPI DO
  • J2.15 - DRDY

Power Suppy:

  • J5.3 - +5VA
  • J5.5 - DGND
  • J5.6 - AGND
  • J5.9 +3.3VD

Switches:

  • S1 Switch - Left
  • S2 Switch - Left
  • S3 Switch  - UP - OnBoard Low Common-Mode
  • S4 Switch - Left - OnBoard 

Jumpers:

  • J6 - Right
  • J8 - Down for Manual CS

Finally I can communicate with the device successfully. 

Questions:

Calculate Voltage value from ADS1256EVM. 

  1. Calculate the 2Vref/(((PGA^23) - 1)) : I am using EVM, so the Vref is constant 2.5V. Is it correct? I did not find any information how to read Vref from ADS1256. (ADS1258 has a feature to get Vref, thats why I am confused.) Anyway, when I build my own PCB I can not guarantee the 2.5V, so how to correct this?
  2. On the page 24 in the datasheet, Equation 3 shows how to get the output format in Binary Two's format. Vref here is the same constant 2.5V and alpha, beta values are located on the datasheet as a look-up-table value. OFC and FSC come from the self-calibration process and read out from the right register position. OFC0-2 | SFC0-2
    OFC should remain in Bin2's format during the calculation?
  3. Convert the 2. step (Bin2's) code to real value and multiply by the 1. step data, then the result will be Voltage unit. 

Would you mind take a look at the sequence above? 

Thank you in advance!

Cheers,

  • Hi Daniel,

    Your connections look okay! (I think you may have meant J3.x instead of J5.x for the power supply connections). Also, I'm only looking at the ADS1256EVM schematic, so I cannot verify the relative switch positions very well. However, I don't see any problems here!

    Regarding your questions:

    Daniel Vamos said:
    Calculate the 2Vref/(((PGA^23) - 1)) : I am using EVM, so the Vref is constant 2.5V. Is it correct? I did not find any information how to read Vref from ADS1256. (ADS1258 has a feature to get Vref, thats why I am confused.) Anyway, when I build my own PCB I can not guarantee the 2.5V, so how to correct this?

    Yes, Vref on the ADS1256EVM is about 2.5V. I say "about" because reference voltages have an initial accuracy and they can drift over temperature.

    There is not an internal function to measure the reference voltage, like there is on the ADS1258, but this is not required. Instead, you would perform an offset and gain calibration to correct for the error because a change in Vref causes a gain error when you perform this calculation. I mentioned offset calibration because it is always required before gain calibration.

    Note: LSB Size = (Full-scale range) / (# ADC Codes) = (4*Vref / PGA) / (2^24).
    (The +1 LSB size of ADS1256 is ever so slightly off in Table 16 of the data sheet.)

     

    Daniel Vamos said:
    On the page 24 in the datasheet, Equation 3 shows how to get the output format in Binary Two's format. Vref here is the same constant 2.5V and alpha, beta values are located on the datasheet as a look-up-table value. OFC and FSC come from the self-calibration process and read out from the right register position. OFC0-2 | SFC0-2
    OFC should remain in Bin2's format during the calculation?

    The ADS1256 output data is always in binary two's format!

    Equation 3 is meant to show how the calibration calculations are performed by the ADS1256. The scaling of the calibration coefficients is a little different for the ADS1256, compared to other ADCs. OFC is a two's compliment signed number, while FSC is an unsigned number.

     

    Daniel Vamos said:
    Convert the 2. step (Bin2's) code to real value and multiply by the 1. step data, then the result will be Voltage unit.

    Since the ADC code is a 24-bit two's compliment number, you would simply sign extend this number to fit into a 32-bit data type (long int).
    Then, you only need to multiply the ADC code ("codes") by the LSB size ("volts/code"), to convert the result to a voltage.


     

    Best Regards,
    Chris

  • Dear Chris,

    Thank you very much for your detailed answer. Most of my questions are answered, except one.

    How to calculate the LSB for the ADS1256EVM if Vref is 2.5V?
    Here is your equation: (4*Vref / PGA) / (2^24). and the equation from the datasheet: 2Vref/(((PGA^23) - 1))

    EDIT: OMG they are the same! :)

    The truth is its 8PM here and Its time to relax!

    Thank you for your help again!

  • Why is so important to read and write the calibration values?
    As I understand, I don't really take care about calibration values itself. The important is to DO the calibration, so the ADS1256 output codes will be valid and output codes will be compensated automatically by OFC and SFC register values.

    So he Equ. 3 says the Offset and Gain calibration is done by the ADS1256 itself. I have to do only is a multiplication by LSB and use the Bin2's formula.
  • Hi Daniel,

    The equations above are nearly the same, except for the "-1" term. You see, a 24-bit ADC has 2^24 codes, but there is no code for +FS. The maximum code "7FFFFF" represents "+FS - 1 LSB".

    Regarding reading and writing the calibration registers... you are correct that the ADC will take care of these values for you when you use the ADC's calibration commands. However, it is common that you may want to run multiple calibrations across temperature and store the results to use when the ambient temperature changes, OR perhaps you may need to use a voltage other than +FS for the gain calibration and need to manually calculate the correct calibration coefficients to use.

    I hope that helps, have a good evening!
    Chris