adc循环模式,通过dma传输数据,一次传输完成后如何再开始下一次啊

2019-07-20 14:01发布

我设置adc通过dma模式传输数据,想通过定时器控制每隔一段时间开启一次传输,但是发现进入debug里面,数组的数据无法刷新,但是adc寄存器的数据一直都在刷新,也就是说adc的数据无法通过dma传输,如何我重新初始化adc,结果就可以了,数组的数字可以刷新了。 总之就是想问在adc循环模式,通过dma传输数据的情况下,一次传输完成后如何再开始下一次啊,都需要配置什么啊,还是需要调用哪个函数。把adc什么的全重新初始化一次太占用资源了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
中二电子测控汪
2019-07-21 05:34
噗,错了,没注意看你的要求,你需要设置软件触发,只需要在需要ad转换的时候开启,你可以开启扫描和循环模式(此时你的软件触发只需要开启一次),然后注意设置dma的缓存大小,建议设置为n*50(因为你n个通道分别转换50次) 在获取每个ad值赋值给数组,每50个求平均,然后赋给一个一位数组(个数由通道数决定),

一周热门 更多>