基于串口通信的单片机仿真开发Word文档下载推荐.docx

上传人:b****3 文档编号:15890535 上传时间:2022-11-16 格式:DOCX 页数:19 大小:163.07KB
下载 相关 举报
基于串口通信的单片机仿真开发Word文档下载推荐.docx_第1页
第1页 / 共19页
基于串口通信的单片机仿真开发Word文档下载推荐.docx_第2页
第2页 / 共19页
基于串口通信的单片机仿真开发Word文档下载推荐.docx_第3页
第3页 / 共19页
基于串口通信的单片机仿真开发Word文档下载推荐.docx_第4页
第4页 / 共19页
基于串口通信的单片机仿真开发Word文档下载推荐.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

基于串口通信的单片机仿真开发Word文档下载推荐.docx

《基于串口通信的单片机仿真开发Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于串口通信的单片机仿真开发Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。

基于串口通信的单片机仿真开发Word文档下载推荐.docx

2.2串口通信概述4

2.2.1串行通信基础4

2.2.2串行接口的基本特点6

3系统程序设计9

3.1系统的通信协议9

3.2编程实现串行通信9

3.2.1程序流程图9

3.2.2完整程序代码10

4仿真及硬件实现16

4.1系统设计的框架16

4.2系统仿真电路16

4.3系统仿真结果17

5心得体会19

参考文献20

1绪论

通信有并行通信和串行通信两种方式。

在多微机系统以及现代测控系统中信息的交换多采用串行通信方式。

串行通信(SerialCommunications)的概念非常简单,串口按位(bit)发送和接收字节。

尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。

它很简单并且能够实现远距离通信。

比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;

而对于串口而言,长度可达1200米。

串行通信相关概念:

a,波特率:

这是一个衡量通信速度的参数。

它表示每秒钟传送的bit的个数。

  

b,数据位:

这是衡量通信中实际数据位的参数。

c,停止位:

用于表示单个包的最后一位。

典型的值为1,1.5和2位。

d,奇偶校验位:

在串口通信中一种简单的检错方式,有四种检错方式:

偶、奇、高和低。

串行通信的特点:

传输线少,长距离传送时成本低,且可以利用电话网等现成的设备,但数据的传送控制比并行通信复杂。

2设计原理

2.1STC89C52单片机简介

2.1.1STC89C52单片机时序

STC89C52单片机的一个执器周期由6个状态(s1—s6)组成,每个状态又持续2个震荡周期,分为P1和P2两个节拍。

这样,一个机器周期由12个振荡周期组成。

若采用12MHz的晶体振荡器,则每个机器周期为1us,每个状态周期为1/6us;

在一数情况下,算术和逻辑操作发生在N期间,而内部寄存器到寄存器的传输发生在P2期间。

对于单周期指令,当指令操作码读人指令寄存器时,使从S1P2开始执行指令。

如果是双字节指令,则在同一机器周期的s4读人第二字节。

若为单字节指令,则在51期间仍进行读,但所读入的字节操作码被忽略,且程序计数据也不加1。

在加结束时完成指令操作。

多数STC89C52指令周期为1—2个机器周期,只有乘法和除法指令需要两个以上机器周期的指令,它们需4个机器周期。

2.1.2STC89C52单片机引脚介绍

STC89C52单片机的40个引脚中有2个专用于主电源引脚,2个外接晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。

下面按引脚功能分为4个部分叙述个引脚的功能。

(1)电源引脚Vcc和Vss

Vcc(40脚):

接+5V电源正端;

Vss(20脚):

接+5V电源正端。

(2)外接晶振引脚XTAL1和XTAL2

XTAL1(19脚):

接外部石英晶体的一端。

在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;

对于CHOMS单片机,该引脚作为外部振荡信号的输入端。

XTAL2(18脚):

接外部晶体的另一端。

在单片机内部,接至片内振荡器的反相放大器的输出端。

当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。

对于CHMOS芯片,该引脚悬空不接。

(3)控制信号或与其它电源复用引脚

控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。

(A).RST/VPD(9脚):

RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。

当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。

当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。

(B).ALE/P(30脚):

当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低

(C).PSEN(29脚):

片外程序存储器读选通输出端,低电平有效。

当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。

当访问外部数据存储器期间,PESN信号将不出现。

(D).EA/Vpp(31脚):

EA为访问外部程序储器控制信号,低电平有效。

当EA端保持高电平时,单片机访问片内程序存储器4KB(MS—52子系列为8KB)。

若超出该范围时,自动转去执行外部程序存储器的程序。

当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。

对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源Vpp。

(4)输入/输出(I/O)引脚P0口、P1口、P2口及P3口

(A).P0口(39脚~22脚):

P0.0~P0.7统称为P0口。

当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。

当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。

它分时提供8位双向数据总线。

对于片内含有EPROM的单片机,当EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。

(B).P1口(1脚~8脚):

P1.0~P1.7统称为P1口,可作为准双向I/O接口使用。

对于MCS—52子系列单片机,P1.0和P1.1还有第2功能:

P1.0口用作定时器/计数器2的计数脉冲输入端T2;

P1.1用作定时器/计数器2的外部控制端T2EX。

对于EPROM编程和进行程序校验时,P0口接收输入的低8位地址。

(C).P2口(21脚~28脚):

P2.0~P2.7统称为P2口,一般可作为准双向I/O接口。

当接有外部程序存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于高8位地址总线送出高8位地址。

对于EPROM编程和进行程序校验时,P2口接收输入的8位地址。

(D).P3口(10脚~17脚):

P3.0~P3.7统称为P3口。

它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。

P3口的第2功能见下表:

引脚

第2功能

P3.0

RXD(串行口输入端0)

P3.1

TXD(串行口输出端)

P3.2

INT0(部中断0请求输入端,低电平有效)

P3.3

INT1(中断1请求输入端,低电平有效)

P3.4

T0(时器/计数器0计数脉冲端)

P3.5

T1(时器/计数器1数脉冲端)

P3.6

WR(部数据存储器写选通信号输出端,低电平有效)

P3.7

RD(部数据存储器读选通信号输出端,低电平有效)

2.2串口通信概述

串口通信(SerialCommunications)的概念非常简单,串口按位(bit)发送和接收字节。

2.2.1串行通信基础

(一)异步通信中的字符帧

字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位等四部分组成。

在串行通信中,发送端一帧一帧发送信息,接收端一帧一帧接收信息。

两相邻字符帧之间可以无空闲位,也可以由若干空闲位,自行定义。

图3-1表示每一帧的结构:

8位数据

起始位奇偶校验停止位

D0

D1

D2

D3

D4

D5

D6

D7

0/1

1

第n字符帧(共11位)

图2-1帧结构

(二)波特率

定义是每秒传送二进制数码的位数,单位是bps(位/秒),用于表征数据传输的速度,波特率越高,数据传输速度越快。

而实际的字符传输速率是以帧/秒来衡量。

(三)通信制式

1、单工

单工是指数据传输仅能沿一个方向,不能实现反向传输。

2、半双工

半双工是指数据传输可以沿两个方向,但需要分时进行。

3、全双工

全双工是指数据可以同时进行双向传输。

 

图2-2通信制式

2.2.2串行接口的基本特点

(一)串行端口工作方式

MCS-51单片机的串行端口有4种基本工作方式,通过编程设置,可以使其工作在任一方式,以满足不同场合的需要。

其中,方式0主要用于外接移位寄存器,以扩展单片机的I/O电路;

工作方式1多用于双机之间或与外设电路的通信;

方式2、3除有方式1的功能外,还可以作多机通信,以构成分布式多微机系统。

图2-3串口工作方式

串行端口有两个控制寄存器SCON、PCON,用于设置工作方式、发送或接收的状态、特征位、数据传送波特率[每秒传送的位数]以及作为中断标志等。

图2-4SCON寄存器位定义

串行端口有一个数据寄存器SBUF,在特殊功能寄存器中的字节地址为99H,该寄存器为发送和接收所共用。

串行端口的波特率可以用程序来控制。

在不同工作方式中,由时钟振荡频率的分频值或由定时器T1的定时溢出时间确定,使用十分方便灵活。

串口控制寄存器输入在(REN)=1时,串行口采样RXD引脚,当采样到1至O的跳变时,确认是串行发送来的一帧数据的开始位0,从而开始接收一帧数据。

只有当8位数据接收完,并检测到高电平停止位后,只有满足①(R1)=0;

②(SM2)=0或接收到的第9位数据为1时,停止位才进入RB8,8位数据才能进入接收寄存器,并由硬件置位中断标志RI;

否则信息丢失。

所以在方式1接收时,应先用软件清零RI和SM2标志。

一、方式0

方式0时,串行口为同步移位寄存器的输入输出方式。

主要用于扩展并行输入或输出口。

数据由RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。

发送和接收均为8位数据,低位在先,高位在后。

波特率固定为fosc/12。

二、方式1

方式1是10位数据的异步通信口。

TXD为数据发送引脚,RXD为数据接收引脚,传送一帧数据的格式如图所示。

其中1位起始位,8位数据位,1位停止位。

三、方式2和方式3

方式2或方式3时为11位数据的异步通信口。

TXD为数据发送引脚,RXD为数据接收引脚。

(二)串行口的通信波特率

串行口的通信波特率恰好反映串行口传输数据的速率。

通信波特率的选用,不仅和所选通信设备、传输距离有关,还受传输线状况所制约。

通过软件可对单片机串行口编程为四种工作方式,其中方式0和方式2的波特率是固

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

当前位置:首页 > 初中教育 > 政史地

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

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