你这个不乱才怪,建议接收使用串口中断,发送使用普通函数即可,同时发送时候屏蔽中断。
发送或接收拾要通过判断TI或RI是否置位,若置位,则用软件清零,不置位则等待即while(!TI);TI=0;或while(!RI);RI=0;
建议把改重载率波特率调低试试
可以到我文库里看下关于上位机与下位机通信的过程,另外不知道你单片机晶振是多少,如果是12M就错了,波特率9600要11.0592M。
你把接收设置为中断,发送设置为查询,试试