请问,MCASP通过DMA发送,是不是不管发送几路都只用一个DMA通道?
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.
您好,Tony Tang
我使用了 C6748 和 8DA Audio CODECs,想根据官方mcasp例程,修改为2路AXRn输出。
关于McASP和DMA我进行如下操作,但不成功。修改前一路AXR有输出,修改后都没输出。您看有什么问题。
static struct EDMA3CCPaRAMEntry const txDefaultPar =
{
(unsigned int)(EDMA3CC_OPT_DAM | (0x02 << 8u)), /* Opt field */
(unsigned int)loopBuf, /* source address */
(unsigned short)(BYTES_PER_SAMPLE), /* aCnt */ // 这里修改为 aCnt * 2
(unsigned short)(NUM_SAMPLES_LOOP_BUF), /* bCnt */
(unsigned int) SOC_MCASP_0_DATA_REGS, /* dest address */
(short) (BYTES_PER_SAMPLE), /* source bIdx */
(short)(0), /* dest bIdx */
(unsigned short)(PAR_TX_START * SIZE_PARAMSET), /* link address */
(unsigned short)(0), /* bCnt reload value */
(short)(0), /* source cIdx */
(short)(0), /* dest cIdx */
(unsigned short)1 /* cCnt */
};
static void McASPI2SConfigure(void){
...
McASPSerializerTxSet(SOC_MCASP_0_CTRL_REGS, MCASP_XSER_TX);
McASPSerializerTxSet(SOC_MCASP_0_CTRL_REGS, 12);
McASPPinDirOutputSet(SOC_MCASP_0_CTRL_REGS, MCASP_PIN_AXR(MCASP_XSER_TX) | MCASP_PIN_AXR(12));
...
}
发送数组大小修改 *2