第7章 AT89S51串行口及串行通信技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第7章 AT89S51串行口及串行通信技术
前几章所涉及的数据传送方式都是并行传送,如AT89S51和外接8位数据的并行传送。这时外设和单片机间的距离都很短,若很长的话,要实行并行的形式显然要用很多的电缆线,这在布线和经济上都不是适合的。因此,本章引入串行传送方式,只用一根数据线传送数据的位信号,同时加上一些通信控制信号线,以满足远距离数据传送的需要,如因特网终端和客户端之间的数据通信。在相同条件下,串行传送速度比并行慢,串行是在牺牲速度的基础上节省成本的。本章的知识点如下:
1.了解数据通信中的并行/串行、同步/异步、单工/双工以及波特率的概念。
2.掌握为什么双机通信时要有通信协议以及通信协议的主要内容。
3.了解AT89S51串行接口的基本结构。
4.理解串行接口控制寄存器SCON 各个位的含义。
5.掌握串行接口的4种工作方式及其实际应用,掌握不同工作方式下的波特率计算方法。
6.理解串行接口中断的概念。
7.了解AT89S51与PC 机间的硬件系统及设计。
重点:
1.不同工作方式下的波特率计算。
2.串口收/发数据的协议及流程。
3.串口4种工作方式的应用。
难点:
1.AT89S51串行接口的基本结构。
2.MAX232和PC 机的通信。
7.1 串行通信基本知识 本节介绍串行通信的基本介绍,同时介绍通信中常用到的“波特率”的概念,为以下各节学习作基础。 7.1.1 数据通信
1. 通信:计算机的CPU 与外设间的信息交换,计算机与计算机间的信息交换。
2. 分类及各方式的特点
(1) 并行通信
定义:数据的各位同时进行传送(发送或接收)的通信方式。
特点:优点——传送速度快;缺点——数据多少位就要多少根传送线,对于位数多,传送远的通信不合适。
(2) 串行通信
定义:数据是一位一位按顺序传送的通信方式。
特点:优点——只需一对传输线(如电话线),大大降低了传送成本,适合于远距离通信;缺点——传送速度相对较慢。 闽江学院电子系 薛小铃
对AT89S51单片机,它可以利用P3.0(RXD)和P3.1(TXD)实现串行通信。 并行通信和串行通信方式的连接方法如图7-1所示。
图7-1 两种通信方式的连接方法
7.1.2 串行通信的传输方式 串行通信的传输方向通常有如下三种: 单工:数据在发送器→接收器间单方向的传送。 半双工:两端的通信设备都具有发送器和接收器,数据可以向两端的任一方向传送,但是,在同一时刻每端只允许一个方向传送数据(相反设备有效),要么甲站发送乙站接收,要么甲站接收而乙站发送。 全双工:数据可以双向传送,两端间具有独立的通信回路,可以同时接收和传送。 串行通信中,数据传输方式如图7-2所示。 图7-2 串行通信传输方式
7.1.3 异步通信和同步通信
串行通信有两种基本通信方式:同步通信和异步通信。
1. 异步通信
在异步通信中,数据是一帧一帧(包括一个字符代码或一字节数据)传送的,89S51
89S51闽江学院电子系 薛小铃
每一帧的数据格式如图7-3所示。
图7-3 异步通信数据格式
在帧格式中,一个字符由四个部分组成:起始位、数据位、奇偶校验位和停止位。首先是一个起始为(0),然后是5位--8位数据,接下来是奇偶校验位(可省略),最后是停止位(1)。
(1) 起始位:位于开头,只占一位,用逻辑口通知接收设备发送端开始发送一帧信息,若不传送字符帧,始终保持为1。
(2) 数据位:紧跟起始位之后,可以是5位、6位、7位或8位数据,且低位在前,高位在后。传送ASCII 字符,则常取7位。
(3) 奇偶校验位:位于数据位之后,只占一位,用于有限差错检测,通信双方要约定一定的校验方式,起始位和奇偶校验位包含逻辑1的个数为偶数,则为偶校验,否则为奇校验。也可用这一位(1/0)来确定这一帧中的字符所代表信息的性质(地址/数据等)。该位可以省略。
(4) 停止位:位于末尾,为逻辑1高电平,通常可取1位、1.5位或2位,表示一帧字符已发送完毕,也为下一帧字符做准备。只要接收到“0”,就意味下一帧字符的开始。
若发送一字符帧完之后,并不马上发送下一帧,那么这两帧字符间就要用“1”隔开,称为空闲位。图7-2(b)就表示了这一特性。
2. 同步通信
同步通信是一种连续按顺序串行传送数据的通信方式,一次通信只传送一帧信息,和异步通信中的字符帧不同,一帧的信息是连续的数据信息。同步传送时,字符与字符之间没有间隙,也不用起始位和停止位,仅在数据块开始时用同步字符SYNC 来指示,其数据格式如图7-4所示,图的上半部分是双同步字符帧结构,图的下半部分是单同步字符帧结构。
闽江学院电子系 薛小铃
图7-4 同步通信数据格式
同步字符的插入可以是单同步字符方式或双同步字符方式,如图7-4所示,然后是连续的数据块。同步字符可以由用户约定,当然也可以采用ASCII 码中规定的SYNC 代码,即16H。在国际标准中,通常用“EB90H”作为双同步字符。按同步方式通信时,先发送同步字符,接收方检测到同步字符后,即准备接收数据。
在同步传送时,要求用时钟来实现发送端与接收端之间的同步。为了保证接收正确无误,发送方除了传送数据外,还要同时传送时钟信号。
同步传送可以提高传输速率(达56kb/s 或更高),但硬件比较复杂。
3. 波特率(Baud rate )
波特率即数据传送速率,表示每秒钟传送二进制代码的位数,其单位是b/s 。它亦称为比特数bps (bit per second )。
波特率是串行通信的重要指标,表示数据传输的速度,如异步通信中,数据传送速率120字符帧/s ,一个字符帧包含10b ,则
波特率=120字符帧/s*10b/字符帧=1200b/s
说明:
(1) 每位代码的传输时间T d 为波特率的倒数。如以上例子的 (2) 字符帧的传送速率是指每秒钟所传字符帧的帧数。如一个字符帧为10b ,另一个为11b ,则字符帧的传送速率分别为1200/10=120帧/s ,1200/11=109.09帧/s 。可见,波特率相同字符帧的传送速率并一定相同,它和帧格式有关。 7.1.4 串行通信过程 1. 串←→并转换 解决的问题:把要发送的并行数据串行化,把接收的数据并行化。
原则:低位在前,高位在后。
具体转换原理如图7-5和图7-6所示。 闽江学院电子
系 薛小铃