第六章单片机串行口及应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理及应用

第六章

单片机串行口及应用

P2 6.1 MCS-51 单片机串行接口

6.1.1 基本概念

1.串行通信与并行通信

并行通信:数据的各位同时进行传送的通信方式。并行通信的优点是传送速度快,缺点是需要的传输线多,不适宜远距离通信。并行通信通过并行口实现。

串行通信:数据逐位按顺序传送的通信方式。串行通信的优点是只需要一对传输线,特别适用于远距离通

信。其缺点是传送速度低。串行通信通过串行口实现。

2.异步通信和同步通信

(1)异步通信

在异步通信中,数据以字符为单位进行传送,一个字符也叫一帧信息。每帧数据数用一起始位(低电平)表

示传送字符的开始,接着由数据的低位开始逐位传送。

最后以一个停止位(高电平)表示该字符结束。

异步通信字符帧的格式 无空闲位字符帧:

带空闲位字符帧:

P3

D7

0/1

D1D0

D1

D2

D3D4

D5

D6

D7

0/1

D0

1

1

停止位

起始位停止位

起始位第n-1字符

第n+1字符

第n 字符帧8个数据位

校验位停止

位起始位D0

第n+1字符D0

D1

D2

D3D4

D5

D6

D7

0/1

1

1

起始位第n-1字符

第n 字符帧

8个数据位

1

1

1

空闲位空闲位校验位

(2) 同步通信

同步通信是一种连续串行传送数据的通信方式。每次通信连读传送若干个数据字符。在数据传送前,发送方先发送1个或2个同步符作起始标志,接收方不断采样传输线,确认接收到同步符后便开始接收后面的数据。数据紧跟同步符之后,个数不受限制,每个数据不需起始位和停止位,数据之间无间隙。所以同步通信的传输速率要比异步通信高,可达56000bps。为使发送方和接收方的时钟保持严格同步,要求发送方除发送数据外,还要同时发送时钟脉冲到接收端。

同步字符1同步字符2

数据1数据2数据3数据……

同步字符

数据1数据2数据3数据……

3. 串行通信的传送方式

串行通信的传送方式有三种。

(1)单工方式:只允许数据向一个方向传送。

(2)半双工方式:允许数据双向传送,但同一时刻只能一方发送,另一方接收。

(3)全双工方式:允许数据同时双向传送,全双工方式其发送和接收是各自独立的通道。

发送器

接收器

A 站

B 站

发送器

发送器

接收器接收器

A 站

B 站

发送器接收器

接收器发送器A 站

B 站

4. 波特率和发送/接收时钟

(1)波特率

波特率的定义为每秒钟传送二进制代码的位数。

单位是位/秒(bps)。波特率是串行通信的重要指标,用于表征数据的传输速度。每位的传送时间为波特率的倒数。即Td=1/波特率。

(2)发送/接收时钟

在异步传送方式中,发送/接收时钟频率为波特率的n倍,n取16或64,通常取16。即每位的传送时间Td=nTc,(Tc为发送/接收时钟周期)。也就是每传送1位需要16个时钟周期。这样做目的是更准确地给数据位定位。

收发双方传送波特率必须保持一致,否则传送过程就会发生错位。

6.1.2 串行口结构

串行口主要由发送缓冲器、发送控制器、输出控制门、接收缓冲器,接收控制器、输入侈位寄存器等组成。

内部数据总线

发送

端口

接收

端口

≥1

写SBUF

读SBUF

SBUF (发送)

发送控制器

接收控制器

SBUF (接收)接收移位寄存器

TXD

P3.1

RXD

P3.0

DB

DB

TI

RI

P7

P8 6.1.3 串行口控制

1.串行口控制寄存器SCON

SCON 格式:

D7D0

SM0SM1SM2REN TB8RB8TI RI(98H)

各位的含义和下:

SM0、SM1:串行口工作方式选择位。

SM0 SM1

0 0方式0,同步移位寄存器方式,传送波特率为fosc/12。

0 1 方式1,10位异步收发,传送波特率可变。

1 0 方式2,11位异步收发,传送波特率为fosc/32或fosc/64。

1 1 方式3,11位异步收发,传送波特率可变。

P9 SCON (续)

SM2:多机通信控制位。单片机串行口的4种工作方式中,只有方式2或方式3(11位异步通信)才可用于多机通信。在进行多机通信时,若接收机的SM2置1,则它只能接收地址帧,而不能接收数据帧。只有SM2=0时才能接收数据帧。有关通信原理将在后面介绍。

REN:允许接收控制位。

REN=1时,允许串行口接收数据。

REN=0时,禁止串行口接收数据。

TB8:是方式2和方式3发送数据的第9位。发送数据前,预先将第9位写入TB8中。

RB8:是方式2和方式3接收数据的第9位。接收数据时,将接收到的数据第9位存入RB8中。

TI:发送中断标志位。发送完一帧数据后,由硬件置位TI,同时向CPU发出中断请求。

RI:接收中断标志位。当一帧数据接收完并能进入输入SBUF,则置位RI,同时向CPU发出中断请求。

相关文档
最新文档