A和B都是单片机,B的程序是固定死的不可以修改主。A给B发送数据。B会根据A发送的指今,返回不同的数据,有 00 90 38 FF 还有90 41 FF 90 51 FF还有90 41 FF 90 51 FF 90 50 0X 0X 0X 0X FF (_X代表从0-F)
在不同的返回数据里面只有最后一组的 90 50 0X 0X 0X 0X FF这些要保留下来,我在串口中断中做如下的接收判断,可以是只能接50,50以后的数据不能接收。请教如何判断并且把这些数保存到数组当中。
void ser() interrupt 4
{
uchar temp,j;
RI=0;
temp=SBUF;
if(temp==0x50)
{
buf[j++]=SBUF;
if(j==5)
{
j=0;
ES=0;
}
}
}
这是我的串口接收程序。这样只能接收50.不能接收50以后的。
|