周期性噪声通常源于Wi-Fi的Beacon帧(每100ms左右)或数据突发,其频谱集中在2.4GHz附近,但会通过电源和地平面耦合进ADC。实操建议:1)硬件上,在ADC引脚串联RC低通滤波器(如1kΩ+100nF,截止频率约1.6kHz),并确保Vref去耦电容(10μF+100nF)紧贴芯片;2)软件上,采用过采样+均值,例如连续采样64次取平均,可显著抑制随机噪声,但需注意采样率与Wi-Fi活动同步,可读取esp_wifi_get_ant_gpio()或使用Wi-Fi事件回调(WIFI_EVENT_STA_START)来避开Beacon时段;3)若噪声仍明显,改用ADC2(ESP32的ADC2与Wi-Fi互斥,但可配置为单次模式),或使用DMA连续采样并做数字滤波(如移动平均或IIR低通)。建议先用示波器确认噪声频率,再针对性调整滤波参数。
mcuku 阿沐 · 2026-08-27