分页: 1 / 1

ESP32 ADC 校准库:MicroPython-ADC_Cal

发表于 : 2021年 7月 25日 17:57
shaoziyang
Espressif IDF API参考文件描述了ESP32内置ADC的局限性,并提供了一种(部分)解决方案,通过使用存储在efuse中的芯片特定校准值来提高其精度。它还提供了有用的信息,包括降低噪声和每种模式下建议的输入电压范围。

MicroPython-ADC_Cal是根据这个方法实现的 micropython 库。

使用方法

代码: 全选

    from machine import Pin
    import adc1_cal
    
    ADC_PIN   = 35                # ADC input pin no.
    DIV       = 1                 # div = V_measured / V_input; here: no input divider
    AVERAGING = 10                # no. of samples for averaging (default: 10)
    
    # vref = None -> V_ref calibration value is read from efuse
    ubatt = ADC1Cal(Pin(ADC_PIN, Pin.IN), DIV, None, AVERAGING, "ADC1 Calibrated")
    
    # set ADC result width
    ubatt.width(ADC.WIDTH_10BIT)

    # set attenuation
    ubatt.atten(ADC.ATTN_6DB)

    print('ADC Vref: {:4}mV'.format(ubatt.vref))

    print('Voltage:  {:4.1f}mV'.format(ubatt.voltage))
隐藏内容
你必须登入/注册才可观看隐藏内容