您的位置:首页 > 其它

uart——51程序

2016-09-13 18:26 134 查看
void uart_init()
{
SCON = 0x50;		/*设置串口uart的工作方式SCON:
D7      D6      D5     D4     D3    D2     D1   D0
SM0     SM1     SM2    REN    TB8   RB8    TI   RI
*/
TMOD |= 0x20;		//设置定时器的工作方式,用作串口波特率
TH1 = 0xfd;		//设置串口波特率为9600
TR1 = 1;                //打开定时器1中断
}

void uart_send_byte(unsigned char byte)
{
SBUF = byte;
while(!TI);
TI = 0;                 //TI:发送中断标志位
}
void uart_send_str(unsigned char *s)
{
while(*s != '\0')
{
uart_send_byte(*s);
s++;
}
}
void rec_and_send_to_up()
{
static unsigned char src[10];
static unsigned char i;
if(RI)                  //RI:接收中断标志位
{
if(SBUF != 0x20)
{
src[i] = SBUF;
i++;
}
else
{
src[i] = '\0';
uart_send_str(src);
uart_send_byte('\n');
i = 0;
}
RI = 0;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: