单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx

上传人:b****6 文档编号:16064494 上传时间:2022-11-18 格式:DOCX 页数:14 大小:264.52KB
下载 相关 举报
单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx_第1页
第1页 / 共14页
单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx_第2页
第2页 / 共14页
单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx_第3页
第3页 / 共14页
单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx_第4页
第4页 / 共14页
单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx

《单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx》由会员分享,可在线阅读,更多相关《单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。

单片机与PC通信proteus与虚拟串口驱动软件以及串口调试助手的仿真Word文件下载.docx

2

2:

Iplantogototheconcert.

3

3:

Whatareyoudoingnextweek?

4

4:

I'

mthinkofgoingtomygrandma'

s.

其他字符

5:

Pleaseselectacharacter'

1'

'

2'

3'

or'

4'

!

一、proteus仿真图:

(此proteus仿真图可免费下载,下载网址:

1、

图1.1

2、注意:

(1)51单片机属性的时钟频率(clockfrequency)必为11.0592mhz,否则无法仿真。

请按下图设置AT89SC52

图1.2

3、在仿真图中P1即(元件名称:

COMPIN)模块为集成电平转换的串行通信接口(如下图)

(1)

图1.3

(2)设置参数如下

图1.4

4、虚拟串口驱动设置

在右侧选择端口一:

“COM3”端口二:

“COM4”,然后按“添加端口”,

此时左侧的Virtualports下出现:

图1.5

表示添加了COM3,COM4一对虚拟串行口,且已连接,故我们把单片机和PC选择COM3和COM4。

(如图1.4中的physicalport选项:

COM4;

图中:

串口号COM3)。

接着再在右侧选择端口一:

“COM1”端口二:

“COM2”,则为下图,

图1.6

虚拟串口驱动设置完毕

5、串口调试助手设置

如图1.7

图1.7

6、

(1)将“程序”在Keil软件中编译生成“HEX”文件,加载到仿真图中的AT89C52中,启动仿真

图1.9

(2)按下图1.7中串口调试助手的“连接”按钮,在串口调试助手的”发送窗口”,依次输入1、2、3、4和5,发送后可以看到单片机返回的字符串一次显示在接收窗口。

如下图所示

实验程序

#include<

reg52.h>

stdio.h>

intrins.h>

Absacc.h>

string.h>

ctype.h>

#definebyteunsignedchar

#defineucharunsignedchar

#definewordunsignedint

#defineuintunsignedint

#defineulongunsignedlong

#defineBYTEunsignedchar

#defineWORDunsignedint

#defineTRUE1

#defineFALSE0

voidtime(unsignedintucMs);

voidinitUart(void);

voidsendString(uchar*ucString);

voidmain(void)

{

time

(1);

initUart();

IE=0x90;

while(TRUE){}

}

voidinitUart(void)

{

SCON=0x50;

//选择串口工作方式,打开接收允许

RCAP2H=(65536-(3456/96))>

>

8;

RCAP2L=(65536-(3456/96))%256;

T2CON=0x34;

//启动定时器T1

}

voidserial0_int(void)interrupt4

{

ucharrChar;

ucharcodestr1[]="

"

;

ucharcodestr2[]="

Iplantogototheconcert."

ucharcodestr3[]="

ucharcodestr4[]="

s."

ucharcodestrdefault[]="

EA=0;

RI=0;

rChar=SBUF;

P2=rChar;

switch(rChar)

case'

:

SBUF='

while(TI==0){}TI=0;

SBUF='

'

sendString(str1);

break;

SBUF='

sendString(str2);

SBUF='

sendString(str3);

SBUF='

sendString(str4);

default:

d'

sendString(strdefault);

break;

}

EA=1;

voidsendString(uchar*ucString)

uchari,stringLength=strlen(ucString);

REN=0;

for(i=0;

i<

stringLength;

i++)

SBUF=ucString[i];

while(TI==0);

TI=0;

}

SBUF=0x0d;

while(TI==0);

SBUF=0x0a;

REN=1;

voiddelay_5us(void)

_nop_();

voiddelay_50us(void)

{

unsignedchari;

4;

i++);

delay_5us();

}

voiddelay_100us(void)

delay_50us();

voidtime(unsignedintucMs)

unsignedcharj;

while(ucMs>

0)

for(j=0;

j<

10;

j++);

delay_100us();

ucMs--;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1