3. 模拟-数字转换器
BiBoard(ESP32)可变增益ADC的应用
BiBoard ADC使用说明
ESP32模块34,35,36和39脚仅支持输入,在BiBoard上我们将其配置成模拟输入端口,方便开发者们连接4个足底传感器。
BiBoard模拟输入模-数转换器(ADC)的用法和基础的Arduino UNO相同,但是精度更高(12位,UNO为10位),同时增加了可编程增益放大器,可以让ADC工作在最佳的范围内。
当输入1V电压信号时,如果按照普通配置为12bit访问,参考电压等于电源电压(3.3V):对应的输出为0~1241,ADC很大一部分量程会被浪费掉,造成数据不精确。当我们配置成可编程增益的时候,就可以让1V的输入信号填满几乎整个ADC量程,精度和分辨率大大提高。
我们的例程使用4个输入,分别配置成:0/2.5/6/11分贝的放大增益,需要注意的是ESP32 Arduino默认配置的是11分贝的放大增益。
我们使用“analogSetPinAttenuation(PIN_NAME, attenuation)”来配置单个输入引脚的增益,也可以使用“analogSetAttenuation(attenuation)”来配置全部模拟输入引脚的增益。
实际测试,当输入1V标准电压时,ADC的数值分别为:3850/2890/2025/1050。在今后的制作中,可以通过改变ADC的增益改变ADC的量程,而不需要麻烦的更换基准电压源了。
Last updated