MOV SCON, #0x50; //串口1工作在方式1.
MOV PCON, #0x00; //SMOD=0
MOV TMOD, #0x20; //定时器1当做波特率发生器.
MOV TH1, #0xFD; //初值, 9600 @ 11.0592MHz
MOV TL1, #0xFD;
SETB TR1; // 启动串口1波特率发生器
SETB EA // 开总中断
SETB ES // 开串口1中断
RET
SINT: CLR ES ;禁止串行1中断
JBC TI,bbbb // 判断发送中断
MOV A, SBUF // 接收
CLR RI
MOV SBUF, A // 发送
JNB TI, $ ;等待发送完毕
bbbb: CLR TI ;清发送标志位
SETB ES ;重开中断
RETI ;中断返回
|