|
本帖最后由 dontium 于 2015-1-23 13:23 编辑
使用sci进行中断接受电视的数据时,每次对方发送7个字节,波特率115.2kbps,于是我在设置了接受7个字节后中断,中断程序如下:
interrupt void sciaRxFifoIsr(void)
{
Uint16 i;
for(i=0;i<7;i++)
{
rdataA=SciaRegs.SCIRXBUF.bit.RXDT ;
}
SciaRegs.SCIFFRX.bit.RXFFOVRCLR=1; SciaRegs.SCIFFRX.bit.RXFFINTCLR=1; PieCtrlRegs.PIEACK.all|=0x100;
}
结果收集到的数据都是一个字节,为什么?????
sci初试设置如下
void scia_fifo_init()
{
SciaRegs.SCICCR.all =0x0007;
SciaRegs.SCICTL1.all =0x0001;
SciaRegs.SCICTL2.bit.RXBKINTENA =1;
SciaRegs.SCIHBAUD = 0;
SciaRegs.SCILBAUD = 0x28;
SciaRegs.SCIFFRX.all=0x0028;
SciaRegs.SCIFFCT.all=0x00;
SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset
SciaRegs.SCIFFRX.bit.RXFIFORESET=1;
}
请各位老师同仁相告,谢谢!
|
|