如何使用ADC驱动
ADC HAL驱动使用方法如下:
- 声明一个adc_handle_t句柄结构体,例如:adc_handle_t adc_handle。
- 重写hal_adc_msp_init() API以初始化ADC底层资源:
- 配置ADC引脚:调用hal_msio_init()配置MSIO模式为MSIO_MODE_ANALOG(模拟方式),并指定需要配置为模拟IO的MSIO引脚。
- 如果开发者要使用DMA流程(hal_adc_start_dma()),则需配置DMA:
- ADC通道只需要声明一条DMA通道。
- 为ADC通道声明DMA句柄结构体,例如:dma_handle_t hdma。
- 配置DMA句柄中的参数,例如数据交互通道。
- 将初始的DMA句柄关联到adc_handle变量中的p_dma指针。
- 配置DMA的中断优先级、使能DMA的NVIC中断。
- 配置adc_handle句柄的init结构体中的参考电压等参数。
- 调用hal_adc_init() API初始化ADC寄存器。
说明:
如果参考电压选择外部参考源(ADC_REF_SRC_IOx,x可以是0 ~ 3),参考源输入电压取值范围是0.7 ~ 1.9 V。