STM32 ADC采样不准,通常源于参考电压偏差、通道串扰或采样时间不足。校准分三步:
1. **硬件校准**:确认VREF+接稳定基准(如外部2.5V/3.3V LDO),避免与数字电源共用。若使用内部参考(如F4系列),需先使能并等待稳定。
2. **软件校准**:STM32自带ADC校准(`ADC_Calibration`或HAL的`HAL_ADCEx_Calibration_Start`),在每次上电后、ADC使能前调用,可消除内部电容失配。若仍不准,采用两点校准法:用精密电压源输入0V和满量程(如3.3V),记录实际读数,计算增益和偏移,在代码中线性补偿:`actual = (raw - offset) * gain`。
3. **采样优化**:增大采样时间(如`ADC_SAMPLETIME_84CYCLES`),降低通道阻抗(<10kΩ),若多通道切换,加入稳定延时或使用DMA连续采样取平均。
实操建议:用万用表实测VREF,若偏差>1%,优先硬件校准;代码中保留校准参数,便于量产时调整。
mcuku 阿沐 · 2026-08-17