首先,它创建了一个名为adc1_handle的变量,其类型为adc_oneshot_unit_handle_t,这个变量用于存储ADC(模数转换器)单元的句柄。紧接着,代码定义了一个名为init_config1的结构体变量,其类型为adc_oneshot_unit_init_cfg_t。这个结构体包含了ADC单元的详细配置信息。在这个特定的示例中,结构体中的unit_id成员...
这段代码片段展示了一个名为adc1_handle的变量,类型为adc_oneshot_unit_handle_t。它被用于存储ADC(模数转换器)单元的句柄。 接下来,代码定义了一个名为init_config1的结构体变量,类型为adc_oneshot_unit_init_cfg_t。这个结构体包含了ADC单元的配置信息。在这个例子中,unit_id成员被设置为ADC_UNIT_1,表示当前...
adc_oneshot_unit_init_cfg_t unit_initer = { .clk_src = ADC_RTC_CLK_SRC_DEFAULT, // 默认时钟源 .ulp_mode = ADC_ULP_MODE_DISABLE, // 不启用ULP .unit_id = ADC_UNIT_1 // 使用ADC1 }; adc_oneshot_new_unit(&unit_initer, &unit_handle); adc_oneshot_chan_cfg_t channel_initer = ...
这段代码片段展示了一个名为adc1_handle的变量,类型为adc_oneshot_unit_handle_t。它被用于存储ADC(模数转换器)单元的句柄。 接下来,代码定义了一个名为init_config1的结构体变量,类型为adc_oneshot_unit_init_cfg_t。这个结构体包含了ADC单元的配置信息。在这个例子中,unit_id成员被设置为ADC_UNIT_1,表示当前...
esp_err_t adc_oneshot_new_unit(const adc_oneshot_unit_init_cfg_t *init_config, adc_oneshot_unit_handle_t *ret_unit); /* 参数: init_config : 配置结构体 ret_unit :返回的ADC操作句柄 返回值: ESP_OK(成功),ESP_ERR_INVALID_ARG(无效参数)、ESP_ERR_NO_MEM(内存不足)、ESP_ERR_NOT_FOUND...
这是一个C语言的语句,它调用了之前定义的heap_caps_calloc函数来分配一块内存,并将这块内存的地址赋值给变量unit。 参数解析: 1:需要分配的元素数量。在这里,我们只分配一个元素,所以这个值是1。 sizeof(adc_oneshot_unit_ctx_t):每个元素的大小。这里,我们使用sizeof操作符来获取adc_oneshot_unit_ctx_t类型...
设置ADC 的初始配置后,使用adc_oneshot_new_unit()准备好的adc_oneshot_unit_init_cfg_t. 如果分配成功,该函数将返回 ADC 单元句柄。 里面的返回值 该函数可能会因参数无效、内存不足等各种错误而失败。具体来说,当要分配的ADC实例已经注册时,该函数将返回ESP_ERR_NOT_FOUND错误。可用 ADC 的数量由 记录SOC_...
设置ADC 的初始配置后,使用adc_oneshot_new_unit()准备好的adc_oneshot_unit_init_cfg_t.如果分配成功,该函数将返回 ADC 单元句柄。 里面的返回值 该函数可能会因参数无效、内存不足等各种错误而失败。具体来说,当要分配的ADC实例已经注册时,该函数将返回ESP_ERR_NOT_FOUND错误。可用 ADC 的数量由 记录SOC_AD...
3.3 AdcHwUnit 然后我们来到AdcHwUnit_0,进行硬件转换单元相关配置。 AdcIdlePrechargeEnable & AdcInputBufferEnable & AdcPrechargeReference预充控制 Aurix的EVADC模块有三种预充,第一种是通道空闲预充,是在通道空闲的时候将其预充到参考电压的一半,通过GxANCFG.IPE控制;第二种是前文提到的Input Buffer预充,通过...
AdcGroupConversionMode Adc组转换模式这里我们是单次转换,选择oneshot,如果有Streaming需求的需要配置为...