串口接收到的数据不正确
我用串口调试助手发00 01 02 03,但接收到的是A0 B0 A4 C0等一些乱码,请教各位大侠!!
我的程序是C写的,用keil编译
#include <at89x51.h>
#define uint unsigned int
#define uchar unsigned char
uint i=0;
uchar data astring[10];
void main()
{
TMOD=0x20; //初始化串口
TL1=0xfd;
TH1=0xfd;
SCON=0xd8;
PCON=0x80 ;
TR1=1;
for(i=0;i<10;i++) //接收数据
{
while(RI==0);
RI=0;
astring[i]=SBUF;
}
for(i=0;i<10;i++) //发送数据
{
SBUF=astring[i];
while(TI==0);
TI=0;
}
TR1=0;
}