Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
3 years, 6 months ago.
ADC Calibration on STM32F103
I am using an STM32F103 to read the temperature signal from an LM35. I've read all the posts about likely errors involved with ADC inputs in noisy environments. My problem is that I need to use the STM self-calibration feature because I am getting an offset of about 50mV.
I can do it using the CMSIS function ADC_StartCalibration(), and it works incredibly well, down to a difference of only around 10 mV compared to my DVM. The problem is that 'mbed' moved away from CMSIS and replaced it all with the new HAL drivers from STM - this happened about version 95 of the mbed libraries. The only way I can access the CMSIS function is to deliberately use an early version of the mbed libraries. This will surely go wrong one day as I add more to the project.
My question is a general one - how exactly do I get access to the new HAL libraries which implement things like StartCalibration(). I know the name of the function [HAL_ADCEx_Calibration_Start(&ADC_1)] but I don't know how to call it.
The performance of the ADC is very poor without this self-calibration.