你串口的初始化有误,主要在定时器赋初值那里,应该这样才能得到2400的波特率(晶振14.7456MHz)
void InitUART(void)
{
TMOD = 0x20;//定时器T1工作方式2
SCON = 0x50;//允许接收
TH1 = 0xF0;
TL1 = TH1;
PCON = 0x00;
EA = 1;
ES = 1;
TR1 = 1;
}
那是 你单片机 的波特率 设置错误,根本就不是设置在2400,检查一下 设置波特率 部分
计算有误, 与单片机的 晶振频率有关。
11500波特率?好奇挂的波特率!你的PC软件有问题吧!