2 suai9292 suai9292 于 2015.06.16 22:07 提问

单片机 pc通讯时pc显示的数据总是00

pc和单片机的波特率都是1200。数据位数没有问题,都是8位数据位。测试程序是发送一个字符到pc,程序如下:
#include

void main(){
TMOD=0x10;
EA=1;
ES=1;
TH1=0x00; TL1=0x0e8; //波特率:1200
TR1=1;
SCON=0x40;
TI=0;
SBUF=0x20;

while(!TI);
TI=0;
}

3个回答

Evankaka
Evankaka   Ds   Rxr 2015.06.16 22:20

你先用串口通讯助手发下,看能不能发成功。

caozhy
caozhy   Ds   Rxr 2015.06.16 23:04

检查下停止位、校验位、波特率等设置,还有单片机是否正常,数据线。
先用串口调试程序实验。

zwave
zwave   2015.06.18 13:54

硬件有问题么,SBUF=0x20; 放 while()里 试一试。

Csdn user default icon
上传中...
上传图片
插入图片