我无效和写回都做了分别是在两个中断里面
接收中断做了无效
/****************************************************************************/
/* */
/* 此函数会在接收完成中断里调用 */
/* */
/****************************************************************************/
static void McASPRxDMAComplHandler(void)
[
FrameCnt1++;
unsigned short nxtParToUpdate;
// 更新 lastFullRxBuf 标志一个新的接收 buffer 接收完成
lastFullRxBuf = (lastFullRxBuf + 1) % NUM_BUF;
nxtParToUpdate = PAR_RX_START + parOffRcvd;
parOffRcvd = (parOffRcvd + 1) % NUM_PAR;
CacheInv((unsigned int)&rxBufPtr[lastFullRxBuf], sizeof(rxBuf0));
........
发送中断做了写回
/****************************************************************************/
/* */
/* 此函数会在发送完成中断里调用 */
/* */
/****************************************************************************/
static void McASPTxDMAComplHandler(void)
[
FrameCnt2++;
CacheWB((unsigned int)&txBufPtr[lastSentTxBuf], sizeof(txBuf0));
......
我无效和写回都做了分别是在两个中断里面
接收中断做了无效
/****************************************************************************/
/* */
/* 此函数会在接收完成中断里调用 */
/* */
/****************************************************************************/
static void McASPRxDMAComplHandler(void)
[
FrameCnt1++;
unsigned short nxtParToUpdate;
// 更新 lastFullRxBuf 标志一个新的接收 buffer 接收完成
lastFullRxBuf = (lastFullRxBuf + 1) % NUM_BUF;
nxtParToUpdate = PAR_RX_START + parOffRcvd;
parOffRcvd = (parOffRcvd + 1) % NUM_PAR;
CacheInv((unsigned int)&rxBufPtr[lastFullRxBuf], sizeof(rxBuf0));
........
发送中断做了写回
/****************************************************************************/
/* */
/* 此函数会在发送完成中断里调用 */
/* */
/****************************************************************************/
static void McASPTxDMAComplHandler(void)
[
FrameCnt2++;
CacheWB((unsigned int)&txBufPtr[lastSentTxBuf], sizeof(txBuf0));
......
举报