|
static void BufferRxDMAActivate(unsigned int rxBuf, unsigned short parId,unsigned short parLink)
{
EDMA3CCPaRAMEntry paramSet;
/* 复制默认参数集 */
memcpy(¶mSet, &rxDefaultPar, SIZE_PARAMSET - 2);
/* 启用完成中断 */
paramSet.opt |= RX_DMA_INT_ENABLE;
paramSet.destAddr = rxBufPtrL[rxBuf];
paramSet.destBIdx = rxBufPtrR[rxBuf] - rxBufPtrL[rxBuf];
paramSet.destCIdx = 2 + rxBufPtrL[rxBuf] - rxBufPtrR[rxBuf];
paramSet.cCnt = NUM_SAMPLES_PER_AUDIO_BUF;
paramSet.linkAddr = parLink * SIZE_PARAMSET;
EDMA3SetPaRAM(SOC_EDMA30CC_0_REGS, parId, ¶mSet);
}
上面是我的一个项目上用EDMA3传输立体声音频的设置,把左右声道分开。但是其中的destCIdx总看不懂,不明白为什么要这样设置。
其中的2是什么作业。另外在初始化的时候这个数是3。
|
|