Hi,
We are currently using the S32K116 MCU and its ADC in one of our project. We are trying to understand how to deal with the ADC self-calibration and saving the relevant information to flash in order to bypass the self-calibration process for subsequent power ups.
This approach (saving ADC calibration registers to flash) is mentioned in the AN12217 without precisely listing the registers that must be saved.
In the reference manual (p.1122) it mentions the following registers: CLPS, CLP3, CLP2, CLP1, CLP0, CLPX, and CLP9, are updated by the self-calibration process. Our testing revealed that the OFS and G registers might also need to be saved to properly restore calibration; for these registers the reference manual only states:
- for register OFS: "The ADC Offset Correction Register (OFS) contains the calibration-generated offset error correction value (OFS)." (p.1091)
- for register G: "This register value is determined and uploaded by the calibration algorithm." (see p. 1095)
Can you please let us know what is the exact list of registers that need to be saved after the ADC is self-calibrated in order to properly restore the calibration? Do we only need CLPS, CLP3, CLP2, CLP1, CLP0, CLPX, and CLP9? Should we also save OFS and G? Are we missing any?
Thanks!
Hi Nicolas,
I'm sorry for the delayed response.
If these registers OFS. XOFS, YOFS, G are overwritten, you should save and restore them along with CLPS, CLP3, CLP2, CLP1, CLP0, CLPX, and CLP9.
Regards,
Daniel