#include <reg52.h>
sbit led = P1^1;
void ConfigUART(unsigned int baud);
void main()
{
ConfigUART(9600); //配置波特率为9600
while (1)
{
while (!RI); //等待接收完成
RI = 0; //清零接收中断标志位
SBUF = SBUF; //接收到的数据+1后,发送回去
if(SBUF == 01){
led = 1;
}
else
{
led = 0;
}
// SBUF = '0x61';
while (!TI); //等待发送完成
TI = 0; //清零发送中断标志位
}
}
/* 串口配置函数,baud-通信波特率 */
void ConfigUART(unsigned int baud)
{
SCON = 0x50; //配置串口为模式1
TMOD &= 0x0F; //清零T1的控制位
TMOD |= 0x20; //配置T1为模式2
TH1 = 256 - (11059200/12/32)/baud; //计算T1重载值
TL1 = TH1; //初值等于重载值
ET1 = 0; //禁止T1中断
TR1 = 1; //启动T1
}
51单片机的串口通讯
最新推荐文章于 2024-06-29 19:05:11 发布