Analog-to-digital converters (ADC) RM0440
616/2126 RM0440 Rev 4
Software procedure to re-inject a calibration factor into the ADC
1. Ensure ADEN=1 and ADSTART=0 and JADSTART=0 (ADC enabled and no
conversion is ongoing).
2. Write CALFACT_S and CALFACT_D with the new calibration factors.
3. When a conversion is launched, the calibration factor will be injected into the analog
ADC only if the internal analog calibration factor differs from the one stored in bits
CALFACT_S for single-ended input channel or bits CALFACT_D for differential input
channel.
Figure 90. Updating the ADC calibration factor
Converting single-ended and differential analog inputs with a single ADC
If the ADC is supposed to convert both differential and single-ended inputs, two calibrations
must be performed, one with ADCALDIF=0 and one with ADCALDIF=1. The procedure is
the following:
1. Disable the ADC.
2. Calibrate the ADC in single-ended input mode (with ADCALDIF=0). This updates the
register CALFACT_S[6:0].
3. Calibrate the ADC in differential input modes (with ADCALDIF=1). This updates the
register CALFACT_D[6:0].
4. Enable the ADC, configure the channels and launch the conversions. Each time there
is a switch from a single-ended to a differential inputs channel (and vice-versa), the
calibration will automatically be injected into the analog ADC.
WRITE ADC_CALFACT
ADC state
CALFACT_S[6:0]
F2
F1
Internal
calibration factor[6:0]
Start conversion
(hardware or sofware)
F2
Ready (not converting)
Converting channel
Ready
Converting channel
(Single ended)
(Single ended)
MSv30529V2
Updating calibration
by s/w by h/w