单片机 串口通信实验

目录

实验内容

实验设备

实验电路

程序代码

串口设置


实验内容

晶振12MHz,波特率1200, 程序启动后单片机主动发出Hello Server, PC使用串口助手应答单片机,当单片机收到PC发来的数据AAH后,将30H-3FH的16个字节发送给PC,当51收到E0H时就发40H-5FH的32个字节数据,若单片机收到其他数据后,则不做任何修改返回PC。

实验设备

   1、硬件:PC

        单片机实验箱

   2、软件:Kiel uVision4

        串口助手

        虚拟串口(VSPD)

实验电路

 

 程序代码

#include"reg51.h"
#include"intrins.h"
typedef unsigned int uint;
typedef unsigned char uchar;
uchar a[12]="Hello Server";
uint i=0;
uchar date;
uint x;
uchar *p=0x30;
uchar *q=0x40;

void main()
{
	SCON=0x50;         //SM1=1;REN=1
	EA=ES=1;
	TMOD=0x20;  
	TH1=0xE6;  
	TL1=0xE6; 
	TR1=1;
	SBUF=a[i]; 
	while(1);
}

void usart() interrupt 4 
{
	if(TI) 
	{
		TI=0;
		if(i<12)
		{
			i++;
			SBUF=a[i];
		}
	}
	else
	{ 
		RI=0;
		if(SBUF==0xAA) 
		{
			for(x=0;x<16;x++)
			{
				SBUF=p;
				p++;
				while(!TI);
				TI=0;
			}
			p=0x30;
		}	
		else if(SBUF==0xE0) 
		{
			for(x=0;x<32;x++)
			{
				SBUF=q;
				q++;
				while(!TI);
				TI=0;
			}
			q=0x40;
		}
		else
		{
			date=SBUF; 
			SBUF=date;
		}
	}
}

 串口设置

下载地址

下载运行 vspd.exe 安装,安装好后,将vspdctl.dll 文件放入工程目录中,覆盖原有文件。

打开vspd.exe进行串口设置。

 创建完成,打开XCOM,设置串口选择,运行电路。

 OK,大家加油!

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值