Hi everyone:
I'd like to use EDMA to control the McBSP without RTOS on C6657.
The McBSP is set to configure of the I2S and enable loop-back mode.
Now, I setup the channel 36 (Mcbsp0 RX) and channel 37 (Mcbsp0 TX) of EDMA.
// EDMA Module Initialization CSL_edma3Init(NULL); // EDMA Module Open hModule = CSL_edma3Open(&moduleObj, CSL_TPCC_2, NULL, &EdmaStat); // McBSP_0 transmit Channel Open - Channel 37 for Tx (MCBSP0_XEVT) chParam.regionNum = CSL_EDMA3_REGION_GLOBAL; chSetup.que = CSL_EDMA3_QUE_0; chParam.chaNum = CSL_EDMA3_CHA_37; hChannel37 = CSL_edma3ChannelOpen(&ChObj0, CSL_TPCC_2, &chParam, &EdmaStat); chSetup.paramNum = chParam.chaNum; //CSL_EDMA3_CHA_37; CSL_edma3HwChannelSetupParam(hChannel37, chSetup.paramNum); // McBSP_0 receive Channel Open - Channel 36 for Rx (MCBSP0_REVT) chParam.regionNum = CSL_EDMA3_REGION_GLOBAL; chSetup.que = CSL_EDMA3_QUE_0; chParam.chaNum = CSL_EDMA3_CHA_36; hChannel36 = CSL_edma3ChannelOpen(&ChObj1, CSL_TPCC_2, &chParam, &EdmaStat); chSetup.paramNum = chParam.chaNum; //CSL_EDMA3_CHA_36; CSL_edma3HwChannelSetupParam(hChannel36, chSetup.paramNum);
Only first result (rx buffer) has non-zero value, others are zero value.
I need to reset the C6657 EVM board, and I can got this result again.
How to fix the problem? Thank you.
My Project: