由于ADC的基准电压为1.1V所以,ESP32的ADC在无衰减的情况下,能测量的电压范围为100mV至950mV,要读取高于基准电压的电压,就需要使用atten参数指定输入衰减。其有效值(近似线性测量范围)为: ADC.ATTN_0DB:无衰减(100mV - 950mV) ADC.ATTN_2_5DB:2.5dB 衰减(100mV - 1250mV) ADC.ATTN_6DB:6dB 衰减(150mV -...
.atten = ADC_ATTEN_DB_11,.channel = channel2,.unit = ADC_UNIT_1,.bit_width = ADC_WIDTH_...
ADC_ATTEN_DB_11 = 1. 2. 3. 4. 5. 6. 7. 8. 对于ADC2,通过 adc2_config_channel_atten() 配置衰减. 每次读取时都会配置 ADC2 的读取宽度。 函数定义: esp_err_t adc2_config_channel_atten(adc2_channel_t channel, adc_atten_t atten); 参数说明: adc2_channel_t channel:配置 ADC 的通道,这...
.atten = ADC_ATTEN_DB_11, .channel = channel2, .unit = ADC_UNIT_1, .bit_width = ADC_WIDTH_12Bit }; adc_digi_configuration_t digi_cfg = { .conv_limit_en = false, .conv_limit_num = 512, .pattern_num = 2, .sample_freq_hz = freq, //换算成采样频率 .conv_mode = ADC_CONV...
ADC_ATTEN_DB_6,输入电压0-2.2V ADC_ATTEN_DB_11,输入电压0-3.3V channel:配置ADC通道,adc1_...
ESP32-S3的ADC模块的分辨率为12位,所以AD转换后的值范围为0~4095。由于ESP32-S3的工作电压为3.3V,...
atten = ADC_ATTEN_DB_11; adc_pattern[i].channel = ch; adc_pattern[i].unit = unit; adc_pattern[i].bit_width = SOC_ADC_DIGI_MAX_BITWIDTH;ESP_LOGI(TAG, "adc_pattern[%d].atten is :%x", i, adc_pattern[i].atten); ESP_LOGI(TAG, "adc_pattern[%d].channel is :%x", i, adc_...
#define ADC_ATTEN ADC_ATTEN_DB_11 #define ADC_CONV_MODE ADC_CONV_SINGLE_UNIT_1 #define ADC_OUTPUT_TYPE ADC_DIGI_OUTPUT_FORMAT_TYPE2 Std_ReturnType continuous_adc_init(adc_continuous_handle_t *out_handle) { Std_ReturnType ret = E_OK; ...
{ esp_adc_cal_characteristics_t adc_chars; esp_adc_cal_value_t val_type = esp_adc_cal_characterize(ADC_UNIT_2, ADC_ATTEN_DB_11, ADC_WIDTH_BIT_12, 1100, &adc_chars); uint32_t v = esp_adc_cal_raw_to_voltage(analogRead(14), &adc_chars); float battery_voltage = ((float)v /...
11dB衰减(ADC_ATTEN_DB_11):150~2450 mV 为了更准确测量2450mV以上电压,参考《ESP32在电池供电时用ULP监测电池电压》一文,应用相关校正代码。在adc1_example_main.c文件中,已内置出厂校准,确保计算结果准确性。构建项目步骤如下:使用get_idf命令获取IDF,设置目标为esp32,进行菜单配置,并执行...