通过STM32Cube配置STM32G0系列ADC DMA多通道连续采样时存在的问题

背景

最近在使用STM32G0系列ADC时遇到一些问题,我需要使用ADC的八个通道、使用DMA方式连续不间断的进行采样,通过STM32Cube图形化工具配置时遇到一些问题,特此做个记录说明。

本文开发工具与数据包版本如下:
STM32CubeIDE - V1.9.0
STM32Cube MCU Package for STM32G0 Series - V1.5.1

问题说明与解决方法

通常ADC使用DMA多通道连续采样时部分参数应该设置如下:
在这里插入图片描述
其中 Continuous Conversion Mode 应该为 EnabledDiscontinuous Conversion Mode 应该为 Disbaled 。但是在文章开头的条件下设置时参数会设置为如下:
通过STM32Cube配置STM32G0系列ADC DMA多通道连续采样时存在的问题_第1张图片
并且无法手动在图形界面中进行更改:
在这里插入图片描述
在这里插入图片描述
使用这个参数进行测试时ADC DMA多通道连续采样结果不符合预期。

所以使用时需要手动调整初始化代码:
通过STM32Cube配置STM32G0系列ADC DMA多通道连续采样时存在的问题_第2张图片
调整后工作就正常了。

更多内容可以参考: 《使用HAL库开发STM32:ADC基础使用》

你可能感兴趣的:(RTOS与单片机相关,stm32,单片机,ADC,DMA,连续采样)