Why does 'G0 ADC Calibration in Cube/HAL perform averaging in software?
The STM32G0 ADC calibration in Cube/HAL performs 8 iterations of the calibration process, each time reading out the calibration factor and accumulating it, then dividing by 8 (i.e. taking their average) and writing it back to the calibration factor holder register.
Nothing like this is present in HAL/Cube of other STM32 where ADC incorporates an explicit calibration, e.g. STM32F1 or STM32L4.
This of course raises questions.
Is this procedure necessary for achieving ADC parameters specified in the DS?
Or is it an optional method to achieve *better* parameters than those?
In any case, why is this not documented, neither in DS/RM, nor in any AN?
JW

