51单片机串口通信

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

上一页
下一页


单片机原理及应用
2. AT89C51串行口:串行接口结构及其功能;
理解串行数据缓冲器SBUF的功能和读写方 法; 熟悉SCON的结构、控制作用和设置方 法; 了解电源控制寄存器PCON,熟悉 SMOD位。
3.
串行口的工作方式: 理解串行通信4种工作
方式的特点和区别;掌握串行工作方式0的应 用; 熟悉串行工作方式1、2、3应用程序的 编制方法。
3. 全双工制式(Full duplex) 全双工制式是指通信双方均设有发送器和接
收器,并且将信道划分为发送信道和接收信道,
两端数据允许同时收发,因此通信效率比前两种 高。全双工制式如图9.7所示。
A 端
发送 接收 接收 发送
B 端
图9.7 全双工制式 主目录 上一页 下一页 结 束
单片机原理及应用
串行通信是数据的各位在同一根数据线上依次 逐位发送或接收。
主目录
上一页
下一页


单片机原理及应用
P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 P2.7 RD 89C51 WR D7 D6 D5 D4 D3 D2 D1 D0 CS RD 8255 WR
发送 TXD
RXD TXD 外设
念,它是指传输数据的速率, 亦称比特率。波特率 的定义是每秒传输二进制数码的位数。如:波特率 为1200bps是指每秒钟能传输1200位二进制数码。 波特率的倒数即为每位数据传输时间。例如:
波特率为1200bps,每位的传输时间为:
T
主目录
d
=
1 1200
= 0. 833 ( ms )
下一页 结 束
同步通信数据传送格式
2. 异步通信(Asynchronous Communication)
在异步通信中,数据通常是以字符或字节为单位
组成数据帧进行传送的。收、发端各有一套彼此独 立,互不同步的通信机构,由于收发数据的帧格式 相同,因此可以相互识别接收到的数据信息。
主目录 上一页 下一页 结 束
单片机原理及应用
单片机原理及应用
串行接口及串行通信技术
主目录
上一页
下一页


单片机原理及应用
教学目标
通过本章教学,要求达到以下目标:
1. 串行通信的基本概念:了解并行/串行通信的
概念;理解串行通信中的异步/同步通信的基 本概念;理解波特率的概念,学会计算波特率 的方法;4了解串行通信的三种制式及校验方 法。
主目录
发送电路不需要双重缓冲结构。
主目录
上一页
下一页


单片机原理及应用
在逻辑上,SBUF只有一个,它既表示发送
寄存器,又表示接收寄存器,具有同一个单元地
址99H。但在物理结构上,则有两个完全独立的 SBUF,一个是发送缓冲寄存器SBUF,另一个是 接收缓冲寄存器SBUF。如果CPU写SBUF,数据 就会被送入发送寄存器准备发送;如果CPU读
主目录
上一页
下一页


单片机原理及应用
2 AT89C51的串行接口
AT89C51内部有一个可编程全双工串行通信
接口。该部件不仅能同时进行数据的发送和接收, 也可作为一个同步移位寄存器使用。 下面将对其内部结构、工作方式以及波特率 进行介绍。
主目录
上一页
下一页


单片机原理及应用
2.1 串行接口的结构及功能
主目录 上一页 下一页 结 束
单片机原理及应用
(3) REN:串行接受允许控制位。该位由软件置位 或复位。当REN=1,允许接收;当REN=0,禁止 接收。 (4) TB8:方式2和方式3中要发送的第9位数据。
号。
主目录
上一页
下一页


单片机原理及应用
(2) 数据位:
在起始位之后,发送端发出(或接收端接收)的是 数据位,数据的位数没有严格的限制,5~8位均 可。由低位到高位逐位传送。 (3) 奇偶校验位: 数据位发送完(接收完)之后,可发送一位用来检
验数据在传送过程中是否出错的奇偶校验位。奇
偶校验是收发双方预先约定好的有限差错检验方
单片机原理及应用
2. 累加和校验 累加和校验是指发送方将所发送的数据块求
和,并将“校验和”附加到数据块末尾。接收方
接收数据时也是先对数据块求和,将所得结果与 发送方的“校验和”进行比较,若两者相同,表 示传送正确,若不同则表示传送出了差错。“校 验和”的加法运算可用逻辑加,也可用算术加。
累加和校验的缺点是无法检验出字节或位序的错
单片机原理及应用
百度文库
1.3 串行通信的制式 在串行通信中,数据是在两个站之间传送的。
按照数据传送方向,串行通信可分为三种制式。
1. 单工制式(Simplex) 单工制式是指甲乙双方通信只能单向传送数 据。单工制式如图9.5所示。
发送器A
图9.5 单工制式 主目录 上一页 下一页 结 束
接收器B
单片机原理及应用
误。
主目录 上一页 下一页 结 束
单片机原理及应用
3. 循环冗余码校验(CRC)
循环冗余码校验的基本原理是将一个数据块 看成一个位数很长的二进制数,然后用一个特定
的数去除它,将余数作校验码附在数据块之后一
起发送。接收端收到该数据块和校验码后,进行
同样的运算来校验传送是否出错。目前CRC已广
泛用于数据存储和数据通信中,并在国际上形成 规范,市面上已有不少现成的CRC软件算法。
图9.9 串行口控制寄存器SCON 主目录 上一页 下一页 结 束
单片机原理及应用
(1)SM0 SM1:串行口工作方式选择位。其状态
组合所对应的工作方式如表9-1所示。
表9-1 串行口工作方式
SM0 SM1 工作方式 功 能说 明 0 0 0 同步移位寄存器输入/输出,波特率固定 为fosc/12 0 1 1 10位异步收发,波特率可变(T1溢出率/n, n=32或16) 1 0 2 11位异步收发,波特率固定为f0sc/n, n=64或32) 1 1 3 11位异步收发,波特率可变(T1溢出率/n, n=32或16)
主目录 上一页 下一页 结 束
单片机原理及应用
SM2,多机通信控制位。
主要用于方式2和方式3。对于接收机 SM2=0,收到RB8(0或1)既可使收到的数据进入 SBUF,并激活RI。串行口以单机发送或接收方式工 作,TI和RI以正常方式被激活并产生中断请求 SM2=1,收到的RB8=0时,收到的信息丢弃,不 激活RI ;若收到的RB8=1时,收到的数据进入 SBUF,并激活RI,进而在中断服务中将数据从SBUF 读走。 方式0时,SM2必须是0。 方式1时,SM2=1时,只有接收到有效停止位时,RI 才激活。
单片机原理及应用
1. 串行数据缓冲器SBUF
SBUF是串行口缓冲寄存器,包括发送寄存
器和接收寄存器,以便能以全双工方式进行通信。 此外,在接收寄存器之前还有移位寄存器,从而
构成了串行接收的双缓冲结构,这样可以避免在
数据接收过程中出现帧重叠错误。发送数据时,
由于CPU是主动的,不会发生帧重叠错误,因此
式之一。有时也可不用奇偶校验。
主目录 上一页 下一页 结 束
单片机原理及应用
(4) 停止位:
字符帧格式的最后部分是停止位,逻辑“1”电平
有效,它可占1/2位、1位或2位。停止位表示传送
一帧信息的结束,也为发送下一帧信息作好准备。
主目录
上一页
下一页


单片机原理及应用
1.2 串行通信的波特率
波特率(Baud Rate)是串行通信中一个重要概
异步通信信息帧格式如图9.4所示。
第n-1字符 帧 奇 偶停 起 校止 始 8位数据 验位 位 第n字符帧 奇 偶 停 校 止 验 位 第n+1字符帧 起 始 位 8位数据
8位数据
空闲位
D7 0/1 1
0 D0 D1 D2 D3 D4 D5 D6 D7 0/1 1
1
1
1
0
D0 D1
图9.4 异步通信帧格式
接收
RXD 89C51
图9.1 并行通信示意图
图9.2 串行通信示意图
目前串行通信在单片机双机、多机以及单片机 与PC机之间的通信等方面得到了广泛应用。
主目录 上一页 下一页 结 束
单片机原理及应用
1.1 异步通信和同步通信
串行通信按同步方式可分为异步通信和同步通
信两种基本通信方式。 1. 同步通信(Synchronous Communication) 同步通信是一种连续传送数据的通信方式,一
上一页
单片机原理及应用
波特率和字符的传输速率不同,若采用图9.4
的数据帧格式,并且数据帧连续传送(无空闲
位),则实际的字符传输速率为1200/11=109.09 帧/秒。 波特率也不同于发送时钟和接收时钟频率。 同步通信的波特率和时钟频率相等,而异步通信
的波特率通常是可变的。
主目录
上一页
下一页


SBUF,则读入的数据一定来自接收缓冲器。即
CPU对SBUF的读写,实际上是分别访问上述两 个不同的寄存器。
主目录 上一页 下一页 结 束
单片机原理及应用
2. 串行控制寄存器SCON 串行控制寄存器SCON用于设置串行口的工
作方式、监视串行口的工作状态、控制发送与接
收的状态等。它是一个既可以字节寻址又可以位 寻址的8位特殊功能寄存器。其格式如图9.9所示。
2. 半双工制式(Half duplex)
半双工制式是指通信双方都具有发送器和接
收器,双方既可发送也可接收,但接收和发送不
能同时进行,即发送时就不能接收,接收时就不 能发送。半双工制式如图9.6所示。
发送 接收 发送 接收
A 端
B 端
图9.6 半双工制式 主目录 上一页 下一页 结 束
单片机原理及应用
主目录
上一页
下一页


单片机原理及应用
位地址 9FH SCON SM0 9EH SM1 9DH 9CH 9BH SM2 REN TB8 9AH RB8 99H TI 98H RI
见表9-1
接收中断标志
发送中断标志
接收数据第9位 发送数据第9位 接收控制 0:禁止
1:允许 1:多机
多机通信 0:双机
1.4 串行通信的校验
串行通信的目的不只是传送数据信息,更重要
的是应确保准确无误地传送。因此必须考虑在通信 过程中对数据差错进行校验,因为差错校验是保证 准确无误地通信的关键。常用差错校验方法有奇偶 校验、累加和校验以及循环冗余码校验等。
主目录
上一页
下一页


单片机原理及应用
1. 奇偶校验 奇偶校验的特点是按字符校验,即在发送每个 字符数据之后都附加一位奇偶校验位(1或0),当设置
数据 时钟
计 算 机 甲
时钟
计 算 机 乙
计 算 机 甲
数据
0 1 1 0 1
数据+时钟
计 算 机 乙
外同步 主目录 上一页 下一页
自同步 结 束
单片机原理及应用
同步通信的数据帧格式如图9.3所示。
同步 字符 数据 数据 字符1 字符2
图9.3

数据字 数 据 校 验 符n-1 字符n 字 符
(校验 字符)
发送 SBUF (99H) 门电路 发送控制器 同 步 时 钟 接收 SBUF (99H) 串行口中 断 ≥1 接收控制器 TI R I
TXD(P3.1)
内 部 总 线
串 行 口 控 制 寄 存 器 (98H)
RXD(P3.0)
输入移位寄存器
图9.8 AT89C51串行口结构框图 主目录 上一页 下一页 结 束
次通信传送多个字符数据,称为一帧信息。数据传
输速率较高,通常可达56000bps或更高,所需传输线 多,成本高,适合于近距离,要求发送时钟和接收 时钟保持严格同步。
主目录 上一页 下一页 结 束
单片机原理及应用
同步通信 发送方时钟与接收方时钟同步。既保持位同 步,也保持字符同步。同步方法:
0 1 1 0 1
为奇校验时,数据中1的个数与校验位1的个数之和
应为奇数;反之则为偶校验。收、发双方应具有一 致的差错检验设置,当接收1帧字符时,对1的个数 进行检验,若奇偶性(收、发双方)一致则说明传输 正确。奇偶校验只能检测到那种影响奇偶位数的错
误,比较低级且速度慢,一般只用在异步通信中。
主目录 上一页 下一页 结 束
异步通信不需同步时钟,字符帧长度不受限制,设备简 单,但传输效率降低(插入了停止位等)
主目录 上一页 下一页 结 束
单片机原理及应用
(1) 起始位:
在没有数据传送时,通信线上处于逻辑“1”状态。
当发送端要发送1个字符数据时,首先发送1个逻 辑“0”信号,这个低电平便是帧格式的起始位。 其作用是向接收端表示发送端开始发送一帧数据。 接收端检测到这个低电平后,就准备接收数据信
主目录
上一页
下一页


单片机原理及应用
4. 多机通信原理:理解多机通信的原理、过程
和编制多机通信应用程序的方法。
主目录
上一页
下一页


单片机原理及应用
1 串行通信基础知识
计算机与外界的信息交换称为通信。通信的基
本方式可分为并行通信和串行通信两种。
所谓并行通信是指数据的各位同时在多根数据
线上发送或接收。
相关文档
最新文档