求问关于ADC多通道数据采集的问题

2019-09-03 13:30发布

多通道采集的数据都存放在同一个DMA通道里吗?那么该怎么读取DMA里的数据呢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
来俩不甜的
1楼-- · 2019-09-03 14:53
adc是循环测量的,假设你开启了3个通道,那么dma数组的  [0][1][2]分别对应adc通道[0][1][2],  dma的[3][4][5]也会对应adc的 [0][1][2]
来俩不甜的
2楼-- · 2019-09-03 14:57
dma会把数据存到你指定的内存区域,你看dma 的初始化函数
挖掘机漂移
3楼-- · 2019-09-03 17:30
来俩不甜的 发表于 2017-3-18 09:56
dma会把数据存到你指定的内存区域,你看dma 的初始化函数

看到了,我想问的是好几个通道都存在了dma的一块区域里,读取的时候怎么区分是那个adc通道采集的呢,谢谢啦
挖掘机漂移
4楼-- · 2019-09-03 21:28
来俩不甜的 发表于 2017-3-18 11:15
adc是循环测量的,假设你开启了3个通道,那么dma数组的  [0][1][2]分别对应adc通道[0][1][2],  dma的[3][4] ...

搜嘎,那我设置一个data【10】,读data【0】和data【1】就行了呗,就能读出两个通道的值了吧
yijinxiaoyou
5楼-- · 2019-09-03 21:51
 精彩回答 2  元偷偷看……
yijinxiaoyou
6楼-- · 2019-09-03 23:57
也可以用联合体直接读
typedef union
{
        struct
        {
      adc1[64];
          adc2[64];
          adc3[64];
        }ADC_DATA;
        uint16_t _buff[192];
}DMA_BUFF;

一周热门 更多>