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.

ADS1282: FSC and OSC value at start of calibration

Part Number: ADS1282


Tool/software:

Hello,

I am using the ADS1282 and need a calibration sequence. I already asked questions about the sequence in the past (does offset calibration need to be before gain calibration, etc). I realise now I forgot 2 questions, but the previous thread is locked.

1) Do we need to reset the OFC and FSC value to their initial value (0 and 1.0) before starting the sequence, or do the OFSCAL and GANCAL command automatically uses the initial values to avoid compounding gains/offsets? For example, if the gain is manually configured at 0.5 before GANCAL and I apply a FSR input value (+2.5V with PGA = 1), what will the calculated gain be? I expect it to either be 1.0 if the OFC/FSC registers are ignored during calibration, or 2.0 if they are not ignored during calibration (so that 0.5 * 2.0 = 1.0). But if the calculated gain of 2.0 is applied, it will produce erroneous results, because it is only valid in conjunction with the 0.5 gain used at the start of calibration (overwritten to 2.0 after the GANCAL command).

2) What happens if the calibration parameter generates a value outside of the allowed range? For example, if I have a +2.5V with PGA=1 input, it is within range throughout the processing chain. But if FSC is set for a gain of 2.0, it will become out of range in the calibration block.

        - From the block diagram, is it right to say that the MFLAG would not be asserted?

        - Would the redundant LSB flag the issue?

        - If the answer to point 1 is that FSC/OFC are NOT ignored during calibration, what would happen in this case? The input range is respected, but the scaling causes issues by exceeding output encoding width. Does this encoding width issue affect the calibration logic?

Thank you for your support,

Vincent

  • Hi Vincent,

    Offset Calibration ignores the previous values of the OFC and FSC registers when doing the offset calibration.  Gain calibration ignores the value in the FSC, but includes the value in OFC, which is why the offset calibration should be done first, followed by the gain calibration.  

    No, when using the OFSCAL and GANCAL commands, you do not need to reset the OFC and FSC values to 0 and 1.

    If the calibration parameters are not correct for some reason, then the output will likely be +/-FS, depending on the math.  When reading conversion results, the ADS1282 subtracts the value in OFC from the conversion result first, and then it multiplies the result by the FSC value.  If you manually enter values into the OFC and FSC registers, you can see the effects on the output data.

    If the output data is +/-FS due to bad calibration values, this will not set the MFLAG as long as the modulator output is still within normal operation range.  However, the LSB will be set to 1 when the output value is clipped to +FS and the LSB will be cleared to 0 when the output value is clipped to -FS, since this function is only dependent on the final output result.

    Regards,
    Keith Nicholas
    Precision ADC Applications

  • Thank you Keith, this is answers my question perfectly. Your answer brings me a follow-up question:

    Can the LSB flag be used as the sole clipping detection? You have established that the MFLAG does not flag clipping caused by the calibration of the raw data, which makes sense.

    But what happens if the modulator saturates (MFLAG is set), but the calibration brings back the result between ±FS? Will the LSB flag the error or do we need to monitor the LSB and the MFLAG?

    Thank you!
    Vincent

  • Hi Vincent,

    The MFLAG is hardware only and can only be monitored on the MFLAG pin of the device.  The LSB of the conversion result does not depend on the state of the MFLAG; only on the calculated output value adjusted by the OFC and FSC values.  If you want to check for modulator saturation, then you will need to monitor the MFLAG pin on the ADS1282 with an available input pin on your MCU.

    Regards,
    Keith