#include "reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;
u8 num;
void delay(u16 i)
{
while(i--);
}
void usartinit()
{
TMOD=0X20; //工作方式2 高四位T1;低四位T0 GATE C/T M1 MO GATE C/T M1 MO 00100000
TH1=0Xfd; //波特率9600
TL1=0Xfd; //波特率9600
TR1=1; //打开定时器
SCON=0X50; //寄存器模式 SM0=0,SM1=1方式1,REN=1,串口允许接收位,01010000
}
void main()
{
usartinit(); //调用子函数
while(1) //让它循环
{
SBUF=num; //数据发送到num中 控制发送的
}
while(!TI); //发送完通过while循环判断,
TI=0; //只有发送完,我们才通过软件清零
num++;
delay(50000);
}
/* while(!RI) //控制接收的
{
num=SBUF;
RI=0;
}
}
}
*/
串口通讯发送和接收
最新推荐文章于 2024-09-09 15:33:30 发布