unsigned char Rxdsuc_test()
{
unsigned char noRxd_time = 10;//設置等待10*5ms後,沒有接收到下一個字符時,認為數據已接受完畢。
if(newRxd_flag) //sci串口接收到字符時,newRxd_flag置1;noRxd_flag置0;
{
while(noRxd_time)
{
if(noRxd_flag)
{
delay5ms(1);
if(noRxd_flag)
noRxd_time--;
}
else
{
noRxd_time = 10; //在10*5ms的等待中,一旦接收到下一字符,等待時間重新設為10*5ms。
noRxd_flag =1;
}
}
RxdPoint = 0;
newRxd_flag = 0;
rxdsuc_flag = 1;
return 1; //標志著新數據接收完畢
}
return 0;//表示暫無新數據
}
該函數被用於程序的任一地方,當要接收數據時調用。