项目五串行通信系统 任务5-2串行口系统应用

上位机通过串行口发送信息到单片机,控制LED。

8f93ab83d0f4419aa0f8abbfac55a2a1.png

/*************************
项目名称:项目五串行通信系统
任务名称:任务5-2串行口系统应用
任务描述:上位机通过串行口发送信息到单片机,控制LED
*************************/
#include<reg51.h>
int dat;//存放接收到的控制信息

/****************串行发送*****************/
void receive()
{
	while(RI==0);//等待接收1帧数据
	dat=SBUF;//读取字节数据(上位机发来的控制信息)
	RI=0;//允许下一次发送
}

/******************串行通信初始化***************/
void init_uart()//init初始化,uart异步串行口
{
	SCON=0X50;//串行口工作方式1:9位1帧,允许接收
	TMOD=0X20;//T1定时器工作方式2
	PCON=0X00;//波特率不倍增
	TH1=0xfd;//波特率节奏器,数三下产生波特率,9600bps,fosc=11.0592MHz
	TL1=0xfd;
	RI=0;//清除接收标志
	TR1=1;//启动定时器T1,开始数数,产生波特率
}

/*******************主函数****************/

void main()
{
	init_uart();
	while(1)
	{
		receive();//接收上位机控制信息
		if(dat=='o')
			P1=0x00;//开灯
		if(dat=='n')
			P1=0xff;//关灯
	}
}

f13a6e9e8bda4d7e932bf3553cb24e39.png

通过键盘输入o n控制灯亮灭。

593bdd71799345d2933b2d617327b37f.png

 

若想看见自己的输入可以:在virtual terminal中左键选择Echo Typed Character 

f218c8bfc86d41e48e527b7bcdcfd748.png

1c80265695064f1dad8467b81c85c211.png

 ca12015d91d44fd6a17bd958ba209ca4.png

0c99e76dac0a485ab231938ff74366f2.png

接收数据

 

 

 

 

 


/*************************
项目名称:项目五串行通信系统
任务名称:任务5-2串行口系统应用
任务描述:上位机通过串行口发送信息到单片机,控制LED
*************************/
#include<reg51.h>
int dat;//存放接收到的控制信息

/****************串行发送*****************/
void receive()
{
	while(RI==0);//等待接收1帧数据
	dat=SBUF;//读取字节数据(上位机发来的控制信息)
	RI=0;//允许下一次发送
}

/******************串行通信初始化***************/
void init_uart()//init初始化,uart异步串行口
{
	SCON=0X50;//串行口工作方式1:9位1帧,允许接收
	TMOD=0X20;//T1定时器工作方式2
	PCON=0X00;//波特率不倍增
	TH1=0xfd;//波特率节奏器,数三下产生波特率,9600bps,fosc=11.0592MHz
	TL1=0xfd;
	RI=0;//清除接收标志
	TR1=1;//启动定时器T1,开始数数,产生波特率
}

/*******************主函数****************/

void main()
{
	init_uart();
	while(1)
	{
		receive();//接收上位机控制信息
		P1=dat;//用接收的数据控制led 0x00 0xff
	}
}

2df365b4165f48908f3caebf7e10deba.png

3518525802134ef8950b14a8a0358f53.png2bf2e4fb34364c7ebb977a8ddfb64818.png

 7ad85e91ca96423fb08561d3217f7ed4.png13ae3749ab26459e8f9b092189f58f06.png 9d64064ea4464ccfb9a5d5a20ec03395.pngdd2042b1522d40cbb11ea60c39661f41.png

c3179a7906c244989523c81b3173c8d9.png6e8f4cba239a4d8382ad7e69c7713e03.png

a21fe0f2a9b540d9bb48f6b7903c0cb5.png

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

快乐的甲方

你的鼓励是我博文创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值