火急: C语言--串口读取数据时的问题(高分100分)解决以上给分
我在使用C语言写串口读取时,使用中断方式,使用下面函数:
unsigned char read_char(void)
{
unsigned char unch;
if(buffout!=buffin)
{
unch=Buffer[buffout];
buffout++;
if(buffout>=BUFFLEN)
buffout=0;
return (unch);
}
else
return (0xFF);
}
在主函数中用死循环读取:
do
{
RevCharCom1=read_char();
if(RevCharCom1!=0xFF)
{
}
}while(1);
但是我有时,串口返回的是0xFF,这时也被过滤掉;
我把函数类型改成 int read_char(void) ;函数中改为 return(-1)
在读时返回无数个 FF.
怎么解决这个问题呀? 谢谢啦!