28335的DMA 地址增量问题求助

2019-07-27 23:04发布

volatile Uint16 DMABuf1[1024];
volatile Uint16 DMABuf2[1024];

DMACH1AddrConfig(DMADest,DMASource);
DMACH1BurstConfig(31,2,2);      
DMACH1TransferConfig(31,2,2);
上边这种情况下,传输时选择的是32位的数据,地址是增加2  数据正常。

但是下边传输也显示正确结果 :传输数据选择的是16位
DMACH1BurstConfig(31,1,1);      
DMACH1TransferConfig(31,1,1);

不理解,请高手指教
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
shangshiao5
1楼-- · 2019-07-28 04:43
在线等,有兴趣的课一起讨论
dieqiong94
2楼-- · 2019-07-28 06:44
楼主你去仔细看看da就知道了,这里他一个字就是16位,你32位传输只是数据线上是32位传,不管你是16位传还是32位传,你一个burst里的word数都是算的是16位有多少个,1024(16位)=32transfer*32burst, 只要你决定要用32transfer,后面的burst肯定是32,后面的1,1和2,2的区别就是地址增量是1和2的区别,两者当然都是正确的,只不过传输时间不一样而已
zhangmangui
3楼-- · 2019-07-28 10:47
 精彩回答 2  元偷偷看……
zhangmangui
4楼-- · 2019-07-28 16:38
shangshiao5 发表于 2015-5-10 10:59
在线等,有兴趣的课一起讨论

TMS320F28335 DMA
edishen
5楼-- · 2019-07-28 20:01
dieqiong94 发表于 2015-5-13 18:38
楼主你去仔细看看da就知道了,这里他一个字就是16位,你32位传输只是数据线上是32位传,不管你是16位传还是 ...

回答很详细,学习啦

一周热门 更多>