| 
 
| 为什么用"串口调试程序"以十六进制发送"a",但是返回的是"8A". 
 下面是程序:
 
 unsigned char b;
 void rs_dmx() interrupt 4 using 1
 {
 b=SBUF;
 RI=0; //RI:接收中断标识位(SCON.8)
 SBUF=b;
 while(TI==0);TI=0; //TI:发送中断标识位(SCON.7)
 delayms(1);
 }
 
 int main()
 {
 
 SCON=0x50;  //串行口控制寄存器
 TMOD=0x20;// 定时器/计数器方式控制字
 TCON=0x40;
 TH1=0xFD;
 TL1=0xFD;
 TI=0;
 RI=0;
 TR1=1;
 EA=1;//CPU 中断开放标志
 ES=1;//串行口中断允许位
 
 while(1);
 }
 | 
 |