我采用接收中断服务函数使能 SciaRegs.SCIFFTX.bit.TXFFIENA = 1; 这里配置的SciaRegs.SCICTL2.bit.TXINTENA = 0; 但是我的发送中断服务函数执行了两遍,SCI配置如下:
SciaRegs.SCICTL2.bit.TXINTENA =0;
SciaRegs.SCICTL2.bit.RXBKINTENA =1;
SciaRegs.SCIFFTX.all=0xC000; //0xC024; //FIFO最多四级缓存FIFO
SciaRegs.SCIFFRX.all=0x0021; //0x0024; receive is not considered;
SciaRegs.SCIFFCT.all=0x00; //0x0 wxm
SciaRegs.SCICTL1.all =0x0023;
SciaRegs.SCIFFTX.bit.TXFIFOXRESET=1; //wxm the tx an rx interrupt will not ocour if no this sentence
SciaRegs.SCIFFRX.bit.RXFIFORESET=1;
发送中断里的清除执行
SciaRegs.SCIFFTX.bit.TXFFINTCLR=1; // Clear SCI Interrupt flag
SciaRegs.SCIFFTX.bit.TXFFIENA = 0;
PieCtrlRegs.PIEACK.all|=0x100;
请问为什么中断进入两次?
这样我写发送 SciaRegs.SCITXBUF=R_buff[i]&0x00ff; 发送8位时,数据错误,只有5位;