TI中文支持网
TI专业的中文技术问题搜集分享网站

使用csl函数实现的C6670 EDMA无法搬移数据!

您好:

       附件中是我使用CSL函数实现C6670EDMA3的程序,但是在ccs5上运行完后查看内存,数据没有搬移成功,我检查了寄存器配置,中断设置等,没有发现哪里不对呀,到底是为什么数据无法搬移成功呢?求指导,谢谢!

      PS:程序是我仿照6678的EDMA3的测试写的,不知道数据搬移不成功是不是和这个有关系!!

Zhan Xiang:

看起来你只配置了ping/pong的PaRAM, 没有配置对应通道的PaRAM,你可以查查看。

chen lisa:

回复 Zhan Xiang:

谢谢Zhan Xiang的回答,不过我有点不懂:

    我的理解是:1)我配置了数据的源地址和目的地址;

                2)设置了中断;

                3)最后触发了通道传输数据。

这样的过程理解有什么偏差吗?

  我不懂的:

   1)在文档中我只看到了PaRAM的设置,并没有区分是通道的PaRAM还是ping/pong的PaRAM,这两个有什么区别呢  (各自分工是干嘛的呢)?

   2)要是要配置通道的PaRAM该怎么配置呢,可否举个例子呢?

非常感谢!!

Ellie Jiang:

回复 chen lisa:

您好,我运行了您的程序,查看内存数据搬运是成功了的哦。不知?

Ellie Jiang:

回复 chen lisa:

配置Param那些,可以看看ccsv5->help contents里有关CSL-API 里面EDMA3 Functions的介绍;

一般像您程序里面的这两句配置

   /* Map the DMA Channel to PARAM Block 2. */

   CSL_edma3MapDMAChannelToParamBlock (hModule, channelNum, 2);

   /* Obtain a handle to parameter set 2 */

   hParamPing = CSL_edma3GetParamHandle(hChannel, 2, &status);

赞(0)
未经允许不得转载:TI中文支持网 » 使用csl函数实现的C6670 EDMA无法搬移数据!
分享到: 更多 (0)