MCU专家 发表于 2025-6-2 23:43:57

如何解决ADC采样值跳变?

如何解决ADC采样值跳变?
根本原因与解决方案
问题根源检测方法整改措施
电源噪声(>50mV)示波器FFT分析添加π型滤波电路(10Ω+10μF+0.1μF)
参考电压不稳监控Vref引脚纹波独立REF5025基准源(温漂3ppm/℃)
信号源阻抗过高测量输入阻抗加电压跟随器(OPA2188)

代码级优化:c


复制


下载





// 过采样+中值滤波uint16_t adc_stable_read(void) {uint16_t samples[32;for(int i=0; i<32; i++) {    samples[i = HAL_ADC_GetValue(&hadc);    HAL_Delay(1);// 间隔采样避开关电源噪声}qsort(samples, 32, sizeof(uint16_t), compare);return samples[16;// 取中值}

页: [1]
查看完整版本: 如何解决ADC采样值跳变?