51单片机,用12或24MHz的晶振,串口通信时波特率误差是很大的啊!比如24MHz时,单片机定时器实际使用的信号频率是2MHz,用T2定时器做波特率发生器产生9600的波特率,得到的参数是6.51,所以你取65530或者65529时误差都大的惊人,得到的实际波特率是10416和8928。要想得到准确的9600波特率,只能选用11.0592、18.432或者22.1184这样的晶振。