ESP32-ADC-sense-battery-voltage 通过ESP32的ADC引脚检测电池电压(并通过均值滤波与软件校准) 注意,若要使用ADC2请留意该警告 本示例芯片型号:ESP32C3(兼容ESP32其它型号芯片【ESP32S2不支持软件校准】,但需要根据idf编程指南ADC部分修改衰减值对应的输入电压范围) 可以通过设置电池最大与最小电压(最小电压需要大于保护板断电电压)换算电池电量百分比,还可以通过设置分压电阻阻值等等灵活检测不同电压(不局限于电池) 使用前请adc接地读取偏差值,设置adc_offset。或使用以下函数将ADC1或ADC2的基准电压输出至IO,然后可以手动测量基准电压以进行校准 esp_err_t adc_vref_to_gpio(adc_unit_t adc_unit, gpio_num_t GPIO) ESP32 ADC 对噪声非常敏感,导致 ADC 读数存在较大差异。根据使用场景,可以将旁路电容(例如100 nF陶瓷电容)连接到正在使用的ADC输入焊盘,以最大限度地降低噪声 核心部分未使用arduino语法封装,方便移植至esp-idf 有任何不明白的地方可以提issue或对照官方文档进行学习 相关文档资料 官方文档 中文参考 英文参考 实验图片 电压精度能达到±0.01V左右 串口显示 万用表显示