cancel
Showing results for 
Search instead for 
Did you mean: 

why calibration ADC and DAC is important in stm32f4?

macam1
Associate III

 

Hello, I am using ADC and DAC for sensing in my device, and I am using the STM32F405RGT6. I want to perform calibration, but I cannot use

 

"HAL_ADCEx_Calibration_Start(&hadc1, ADC_SINGLE_ENDED);"

 

. I tried using this code:

c
Copy code
 

 

SET_BIT(ADC1->CR2, ADC_CR2_CAL); 
(READ_BIT(ADC1->CR2, ADC_CR2_CAL) != 0);

 

 

But it resulted in an error because I don't fully understand it. Is there a solution for this? I just want to perform calibration. If I'm using a potentiometer, do I need to use a jumper?

I also want to ask why calibration is important, and what happens if calibration is not performed? Please help me.

10 REPLIES 10

I skimmed over the ADC description, but if I remember correctly, the ADCs of the F0x MCUs had the same threshold feature.
Anyway, this threshold is an "internal" register, comparing the conversion result against some value you define, and create a binary yes/no output. The same accuracy issues apply, since it relates to the very same device.

Calibration involves by definition a reference environment, and determining the deviations.
In the simplest case, this could be a calibrated multimeter.
Many companies (like mine) pay a not insignificant sum for an annual calibration of their measuring equipment. Regulations in certain industry sectors require this