您好!
我对多个 F28004x 控制卡之间的 FSI 通信有疑问。 我想使用 DMA 发送和接收8个字的帧,我在主控器件中进行了这些设置:
FSI_setTxFrameType(FSITXA_BASE, FSI_FRAME_TYPE_NWORD_DATA);
FSI_setTxSoftwareFrameSize(FSITXA_BASE, nWords); // nWords = 8
FSI_setTxDataWidth(FSITXA_BASE, nLanes);
FSI_setTxUserDefinedData(FSITXA_BASE, txUserData);
FSI_setTxFrameTag(FSITXA_BASE, txDataFrameTag);
FSI_setRxSoftwareFrameSize(FSIRXA_BASE, nWords); // nWords = 8
FSI_setRxDataWidth(FSIRXA_BASE, nLanes);
我将 DMA 配置为升级 TX 缓冲区。 我对重新设置 RX 和 TX 循环缓冲区有疑问、目前我在 DMA_ISR 中将其复位、但是否有必要执行该操作、或者它将自动重新启动以从第8个字开始、因为我们将帧大小指定为8个字?
如果有必要 的话、我们可以用 CPU 以外的其他方法、使用 DMA 或其他方法来实现它吗?
提前感谢您的回答!