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)

相关推荐
XiHongShi201620 小时前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
优信电子21 小时前
AIT1001 非接触式红外测温模块 STM32 驱动开发实战:从引脚到代码全解析
stm32·嵌入式·温度传感器·红外测温·非接触式测温·ait1001
深圳老胡1 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
wuyk5551 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
Brilliantwxx1 天前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件
youcans_1 天前
【嵌入式软件AI编程】16. Claude Code 与 VS Code 的协同开发
stm32·mcu·嵌入式·ai编程·claude code
Zw-awa1 天前
按键接到 STM32 后:GPIO 输入到底读到了什么
stm32
MarkZhou6241 天前
智能蒸烤双核通信架构拆解:从冗余耦合到分层解耦
stm32·单片机·嵌入式硬件·架构·安卓·安全架构
chem41111 天前
STM32CubeMX Linux 开发环境搭建
stm32·单片机·linux系统
无敌贵点大王2 天前
RTThread学习记录11——RT-Thread 设备模型吃透:UART/ADC/PWM/PIN 到底有什么区别?
c语言·stm32·学习·链表