Other Parts Discussed in Thread: TMDSEVM6657
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:
