工程师们,你们好,想通过CC3200的DMA实现数据的memory-to-memory传输
传输配置如下:
void SetupAutoDMATransferBuf(void * mono_pcm, void * stereo_pcm)
{
//memset()
UDMASetupTransfer(UDMA_CH0_SW,
UDMA_MODE_AUTO,
CB_TRANSFER_SZ,
UDMA_SIZE_16,
UDMA_ARB_8,
mono_pcm,
UDMA_CHCTL_SRCINC_16,
stereo_pcm,
UDMA_CHCTL_DSTINC_32);
}
并且注册传输完成中断,但在参考代码里发现DMA中断是这样的:
这样应该是注册了一个总中断,但如果注册了多个通道的DMA中断,怎么区分是哪个触发了DMA中断?
总之:我想在多个DMA通道被使用的前提下,想通过某一通道实现memory-to-memory的数据传输,并需要传输完成时做一定的事情,既需要注册传输完成中断。请问我应该怎么做?有没有相关参考例程(udma没有注册中断)?
