|
发送"她是谁"出现乱码,发送"我是谁"就能正常接收,同样的代码,波特率也没错,不知道什么原因,有哪位老师能帮我解释一下吗?下面是我的代码
#include <STC12C5A60S2.H>
void delay500ms(void)
{
unsigned char i,j,k;
for(i=81;i>0;i--) //注意后面没有分号
for(j=202;j>0;j--) //注意后面没有分号
for(k=81;k>0;k--); //注意后面有分号
}
void Uart1_Init(void);
void sendByte(unsigned char dat);
void sendstring(unsigned char *str);
void main()
{
Uart1_Init();
while(1)
{
sendstring("她是谁");
delay500ms();
}
}
void Uart1_Init(void) //2400bps@12.000MHz
{
PCON &= 0x7F; //??????
SCON = 0x50; //8???,?????
AUXR &= 0xBF; //?????12T??
AUXR &= 0xFE; //??1?????1???????
TMOD &= 0x0F; //???????
TMOD |= 0x20; //???????
TL1 = 0xF3; //???????
TH1 = 0xF3; //???????
ET1 = 0; //???????
TR1 = 1; //???1????
}
void sendByte(unsigned char dat)
{
SBUF = dat;
while(!TI);
TI = 0;
}
void sendstring(unsigned char *str)
{
while(*str!='\0')
{
sendByte(*str);
str++;
}
}
|
|