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.

DSP28035SCI接收问题

使用SCI FIFO中断模式接收数据,数据包每包含8个8位数,每接收到一个数据即产生一个中断,也就是每一个数据包会产生8个中断。上位机最快每隔20ms左右发一包数据。但是接收到的数据的顺序被打乱了,我因此设置了一个包头和包尾,当判断包头和包尾不符合时复位FIFO指针,再重新发,但接收到的数据顺序还是错的。

请问大家有没有遇到这种情况呢?以下是我判断包头或包尾不对时调用的程序,但依然不起作用。

if(sci_rx[0]!=0x55||sci_rx[7]!=0x00)//如果帧头或帧尾不对
{
SciaRegs.SCIFFRX.bit.RXFIFORESET=0;//接收FIFO指针复位
SciaRegs.SCIFFRX.bit.RXFIFORESET=1;//接收FIFO使能
}