Cube MX的多通道ADC DMA配置用于matlab的自动代码生成。

网络文章的参考。

  1. ADC-多通道采集(DMA) https://bbs.21ic.com/icview-1596444-1-1.html :数据宽度为字Word,连续转换模式-使能,不连续转换-禁止。
  2. STM32CubeMX教程14 ADC - 多通道DMA转换 https://blog.csdn.net/lc_guo/article/details/135308025 :使用HAL_ADC_Start_DMA()以DMA方式启动ADC采集时需要指定存储的内存首地址,从函数的定义可知其为uint32_t*类型,因此在DMA配置时我们需要选择的数据宽度为字Word, 连续转换模式-禁止,不连续转换-禁止
  3. (5)多通道DMA采集 https://blog.csdn.net/weixin_46461874/article/details/128686185 :数据宽度为字half Word,连续转换模式-禁止,不连续转换-禁止
  4. https://wallace-zhang89.blog.csdn.net/article/details/117048846 :若想使用ADC+DMA的话,必须先使能连续转换模式。Discontinuous Conversion Mode(不连续序列转换模式),配置ADC规则组转换序列的不连续方式。这里的不连续含义是指每次触发进行一个子组(数量)的转换。

总结

多通道ADC DMA配置如下:

扫描模式-使能,原因:多通道

连续转换模式-禁止,原因:不知道

**matlab提示:**Continuous Conversion Mode is currently not supported. Open STM32CubeMX project > Pin & Configuration > Analog > ADC1 > Parameter Settings > Configuration > ADCs_Common_Settings and Set the Continuous Conversion Mode as 'Disabled'.

不连续转换-禁止 ,原因:小组式工作,dma不需要

字长,matlab提示:DMA data width must be half word. Open STM32CubeMX project > Pin & Configuration > System Core > DMA > DMA2 > ADC1 > DMA Request Settings and set Data width to 'Half word'.(matlab2023b)

相关推荐
老k一步步来1 天前
STM32 HAL库CAN通信核心函数详解,参数以及作用
stm32·单片机·嵌入式硬件
wuyk5551 天前
77.嵌入式 C 语言中 enum 枚举的工程化实践:告别魔法数字,提升代码可维护性
c语言·开发语言·stm32·单片机·嵌入式硬件
国产HT1621B1 天前
YL1650 LED驱动芯片详解:从原理到实战应用(附51单片机驱动代码)
stm32·单片机·嵌入式硬件·mcu·fpga开发·lcd驱动
zcmodeltech1 天前
智能矿井沙盘模型多系统协同控制系统设计:基于STM32与Modbus RTU的感知-传输-控制一体化方案
服务器·数据库·分布式·stm32·单片机·嵌入式硬件
LCG元1 天前
STM32硬件SPI驱动OLED SSD1306显示屏全流程实战:从CubeMX配置到中英文显示
stm32·单片机·嵌入式硬件
sukalot1 天前
windows网络适配器驱动开发-双 STA 连接(下)
windows·驱动开发·stm32
zcmodeltech1 天前
智慧农业沙盘模型物联网控制系统设计:基于STM32与Modbus RTU的传感器-执行器闭环方案
服务器·分布式·stm32·嵌入式硬件·物联网·能源
WD137298015572 天前
WD5030L,超高集成度、大电流输出、高效率低发热,限流24V转12V,6A
stm32·单片机·嵌入式硬件·51单片机
爱就是恒久忍耐2 天前
使用VSCode开发STM32 (通用版本)
ide·vscode·stm32