if(temp[0]!=48)
{
sendchar(temp[0]);
}
sendchar(temp[1]);
sendchar(temp[2]);
sendchar('.');
sendchar(temp[3]);
delay_ms(1);
sendchar(0x0a);
sendchar(0x0d);
这是主函数循环里的程序。
void uart_init()
{
TMOD=0X20; //设置计数器工作方式2
SCON=0X50; //设置为工作方式1
//PCON=0X80; //波特率加倍
ES=1; //打开接收中断
EA=1; //打开总中断
TH1=0XFD; //计数器初始值设置
TL1=0XFD;
TR1=1; //打开计数器
}
void sendstr(u8 *str)
{
while(*str!='\0')
{
SBUF=*str;
while(!TI);
TI=0;
str++;
}
}
void sendchar(u8 chr)
{
SBUF=chr;
while(!TI);
TI=0;
}
这是初始化的一些程序
然后运行后是这样:
只会重复发送第一个字符。