大佬们求教一个关于ADC使用DMA的问题

2019-07-20 08:53发布

怎么开启ADC的DMA传输功能?ADC使用DMA是配置完直接这样开启吗?
pdata是搬运后的数据源还是ADC读取的数据源?
如果是搬运后的数据地址那么ADC的数据DMA会自动读取吗到pdata内存目的地址吗?
ADCSTARTDMA.png
下面两组函数,第一组是ADC的DMA传输完成回调函数,第二组是DMA里面的传输完成回调函数,这两组在ADC配置DMA里面怎么用,应该用哪组?
ADCIR.png ADCIRC.png
DMAI.png DMAIRC.png
折腾了很久啦,没有找到ADC配置DMA的正确步骤,求大神赐教,不胜感激!!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
进无止境6A
1楼-- · 2019-07-21 02:53
王建峰 发表于 2018-3-27 20:59
要是你只是用DMA控制数据从ADC到存储器,不用回调函数啊!ADC连续扫描模式 + DMA循环传送 能满足你的需求不 ...

我照这样配置,不行啊,怎么验证数据是否传输成功?
王建峰
2楼-- · 2019-07-21 07:44
 精彩回答 2  元偷偷看……
正点原子
3楼-- · 2019-07-21 13:24
进无止境6A
4楼-- · 2019-07-21 13:41
王建峰 发表于 2018-3-28 20:51
在主函数里将保存在内存里的AD转换量printf打印出来查看就好,就像给你发的那个例程那样。有结果就代表传 ...

我参考了例程,并没有发现什么,
dma循环模式,然后在传输完成中断里面打印值,结果只能持续打印ch出adc第一次的值,不知道哪里出错了,
adc调试过了一直在工作,只是我虽然设置一秒触发一次采样,但是调试过程中它是一直在转换DR里面看的,这有问题吗?
进无止境6A
5楼-- · 2019-07-21 18:21
 精彩回答 2  元偷偷看……
王建峰
6楼-- · 2019-07-21 19:40
本帖最后由 王建峰 于 2018-4-1 07:54 编辑
进无止境6A 发表于 2018-3-31 22:51
谢谢啊

你的问题解决了没?我前几天也在调ADC,已经调好了。ADC1+DMA 4通道连续扫描模式:链接 https://pan.baidu.com/s/1FlrjU-elNEGKvqAj1_hGlA 。你可以参考下配置,看看你的代码哪里出错。

一周热门 更多>