[MM32软件] 灵动 MM32 多路ADC-DMA配置

[复制链接]
 楼主| 发表于 2024-12-28 21:30 | 显示全部楼层 |阅读模式
一、问题
最近在使用灵动微的MM32,当用多路ADC-DMA时,出现了一些问题,所以在此记录一下
总结下来,处理了下面几个问题(这里的问题是拿到最新的SDK包,参考example没办法解决的)

多路通道对应的DMA内存不明确,例如CH0对应DMA的第二个字节,CH1却对应第一字节
多个通道数值接近
二、解决方法
使用任意通道

  1. <p>1    ADC_ANY_NUM_Config(ADC1,3);//一共4通道</p><p>2    ADC1->ANYCR |=  ADC_ANY_CR_CHANY_MDEN;//开启任意通道</p><p>        </p><p>3<span style="white-space:pre">        </span>///设置通道的顺序</p><p>4    ADC_ANY_CH_Config(ADC1,0,ADC_Channel_0);</p><p>5    ADC_ANY_CH_Config(ADC1,1,ADC_Channel_1);</p><p>6    ADC_ANY_CH_Config(ADC1,2,ADC_Channel_2);</p><p>7    ADC_ANY_CH_Config(ADC1,3,ADC_Channel_Vrefint);</p>


这个问题,是因为引脚悬空导致了,举个例子,若PA1有确切电平, PA2 PA3
悬空,则PA2 PA3得到的数据会跟随PA1变化,只有一点点区别(细微差别)

发表于 2024-12-29 10:20 | 显示全部楼层
引脚最好不要悬空设计
您需要登录后才可以回帖 登录 | 注册

本版积分规则

296

主题

2472

帖子

6

粉丝
快速回复 返回顶部 返回列表