This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C5517的MCBSP的DMA的发送字节地址是0x6004吗?

这两天使用DMA为MCBSP搬运数据,在使用检测模式(非中断)时,调试通了发送与接收。接着使用DMA来接收数据,也接收正常。但是使用DMA发送数据,结果是没有触发DMA中断,可以理解为DMA没有进行搬运数据。

为此,我进行了下面的测试:

1、将发送的目的地址从MCBSP的发送寄存器改成一个内存地址,其结果是目的地址只接收到一个数据,意味着搬了一个数据后不再进行搬运数据。(这个可以理解,DMA同步MCBSP发送,MCBSP没有进行发送,所以没有搬移第二个数据)

2、同样将发送的目的地址从MCBSP的发送寄存器改成一个内存地址,同时使用检测模式进行MCBSP数据发送(这个发送是正常的),其结果是DMA触发中断。(可以说明DMA和MCBSP的发送进行了同步)

3、将发送的目的地址又改回为MCBSP的0x6004时,同时使用检测模式进行MCBSP数据发送(这个发送是正常的),其结果是DMA也触发中断。

由以上三个测试,我感觉是DMA没有将数据正确搬运到MCBSP的发送寄存器上。但是

且MCBSP的cpu发送寄存器为0x4004,距起始地址偏移的4,故DMA的发送字节地址应该是0x6004吧。(我用的16位发送)

但是为什么搬运数据没有到MCBSP的发送寄存器里呢?

平台EVM5517开发板。