初级会员

- 积分
- 116
- 金钱
- 116
- 注册时间
- 2016-3-18
- 在线时间
- 88 小时
|
20金钱
目的:三个AD各用三个通道,共9路(即AD1的C1,C2,C3;AD2的C1,C2,C3;AD3的C1,C2,C3),用触发的方式来进行采集,以AD1作为主AD,按照F4的原理,应该是给AD1一个外部触发,然后第一次触发按照AD1的C1 ,AD2的C1,AD3的C1,AD1的C2,AD2的C2,AD3的C2,AD1的C3,AD2的C3,AD3的C3这个顺序来传输到DMA,一次触发传输9个数据。
DMA设置为normal模式,数据个数为60480个,也就是说,当触发60480/9=6720次后DMA传输完成,进入完成中断。
DMA传输完成后,我进行了数据操作,写入U盘。写入结束后,重新打开DMA开始了新一轮的采集。
这就是我的全部工作流程。
问题:第一批60480个数据可以顺利采集没有问题,从第二批开始,始终采集的数据就成了AD1的C1,没有采集到别的通道的数据。
设置:我设置的是AD是三重常规模式,DMA是模式1,扫描模式ENABLE,continue conversion mode是disable,discontinuous conversion mode是disable,DMAcontinue request是enable,AD的中断是取消的,DMA中断打开,如图所示,请问我的设置上有什么问题吗?为什么实现不了我预计的效果
@正点原子
|
-
前次DMA传输完成后重新启动
-
启动AD
-
中断设置
-
AD设置
最佳答案
查看完整内容[请看2#楼]
问题已经解决,我的整个思路和程序是没有问题的,因为我的触发脉冲数设置的不对,所以导致了没有采集的现象,是另外一个程序的问题,我的研究方向搞错了,花费了很多时间,如果有需要做多重AD多路触发采集的朋友可以借鉴我上面的设置
|