51单片机接收PC字符串的问题
Dear 各位大虾,
目前在设计系统的时候,使用单片机,但是可以接收给单个字符,不可以接收完整的字符串。
求助诸位看下。
先谢过。
系统描述如下:
使用万利的ME-52HP仿真器,使用MedWin编译。
使用SSCOM3.2作为电脑端串口数据的收发软件。
晶振11.0592,波特率9600。
问题描述如下:
目前可以单片机可以通过串口正确收发单个字符。
但是在接收字符串的时候,只能接收字符串的第一个字符,其余的字符都接收不到。
使用的是SSCOM3.2作为电脑端的串口收发送软件。
如下为串口接收字符串的中断程序:
unsinged char InStr[16]={'a','b','c','d','e','f'}
void UartInStr() interrupt 4
{
unsinged char *Str;
unsinged int i;
i=0;
while(RI==0);
RI=0;
InStr[i]=SBUF;
while(InStr[i++]!=0x00)
{
while(RI==0);
RI=0;
InStr[i]=SBUF;
}
}
}