F28335 DMA设置代码的理解

2019-07-15 19:14发布

各位大哥,能帮小弟看一下有关DMA的设置这段不。


DMACH1BurstConfig(16,1,1);
DMACH1TransferConfig(63,-16,0);
DMACH1WrapConfig(66,0,66,16);
    DMACH1ModeConfig(DMA_SEQ1INT,PERINT_ENABLE,ONESHOT_ENABLE,CONT_DISABLE,SYNC_DISABLE,SYNC_SRC,OVRFLOW_DISABLE,SIXTEEN_BIT,CHINT_END,CHINT_ENABLE);


这样设置的话不是意味着要在ADC采样的结果寄存器,转移64次数据才产生一个DMA中断吗?
我的理解是如果AD采样频率是64HZ的话,DMA的中断频率差不多是1HZ。
然而我不论是设置采样频率为2000HZ还是2HZ,DMA产生中断的频率都没有变化。


不知道是我理解有错还是什么原因,恳请各位指导。谢谢。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
zhangleiii
1楼-- · 2019-07-16 00:12
首先你的DMACH1BurstConfig(16,1,1)就有问题,后面地址偏移时肯定会出问题,你改成DMACH1BurstConfig(15,1,1);还有这一句DMACH1ModeConfig(DMA_SEQ1INT,PERINT_ENABLE,ONESHOT_ENABLE,CONT_DISABLE,SYNC_DISABLE,SYNC_SRC,OVRFLOW_DISABLE,SIXTEEN_BIT,CHINT_END,CHINT_ENABLE);这个ONESHOT_ENABLE要改成disable 最佳答案
北京烤鸭
2楼-- · 2019-07-16 05:19
 精彩回答 2  元偷偷看……

一周热门 更多>