打印

还是关于ADC+DMA使用的问题?

[复制链接]
2086|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
re张风|  楼主 | 2012-4-15 11:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的目的:
      设置ADC1的某一个输入通道进行数据采集,使用DMA控制ADC的采集个数,当设定的采集个数完成后,产生DMA中断并停止DMA传输,在中断中关闭ADC采集、数据输出、数据采集完的标志设置。
设置环境是:
      设置ADC:工作为连续模式,关闭扫描方式,规则通道序列长度为1,使能DMA
      设置DMA:由设备传输到存贮器,设备地址不+1,存贮器地址+1,传输个数为16(测试时的数据),设置并打开DMA中断,并设置为传输完成后产生中断

测试结果:
     1、 使能DMA循环模式,禁止存贮器到存贮器模式,能进中断。
     2、 禁止DMA循环模式,使能存贮器到存贮器模式,就不能进中断了
现在的问题是:
      a、我还没有搞中,在结果1中,所产生的中断是每传输一个ADC数据就产生还是将我所设定的16个全部传输完后(我希望的结果是传完后产生)
      b、在结果2中,是什么原因没有进中断?

在坛子里搜了,有很多相关的ADC+DMA的,但就是没有我想知道的这些问题。代码比较占位置,如需要再上。谢谢
沙发
re张风|  楼主 | 2012-4-16 17:14 | 只看该作者
:'(还不知道原因。香版主

使用特权

评论回复
板凳
yixin1937| | 2012-4-16 17:29 | 只看该作者
第一个问题~16个全部传输完后进入中断~
第二个问题~DMA循环模式中应该有开启中断的选项~
我没有用过stm32自身的库~所以具体什么原因不太清楚~

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:走,向前走,再走,继续走! http://www.uectr.com

51

主题

525

帖子

1

粉丝