单片微机原理及应用课件 第10章 串行通信及其接口.ppt
《单片微机原理及应用课件 第10章 串行通信及其接口.ppt》由会员分享,可在线阅读,更多相关《单片微机原理及应用课件 第10章 串行通信及其接口.ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第10章章 串行通信及其接口串行通信及其接口10.2串行串行通信基础通信基础10.2MCS-51串行串行通信通信10.3MCS-51串行串行通信工作方式通信工作方式10.1串行串行通信基础通信基础一、串行通信的基本概念一、串行通信的基本概念串串行行通通信信:是是将将数数据据的的各各位位一一位位一一位位地地依依次次传传送送。传传送送距距离离较较远远,适适合合于于计计算算机机之之间间、计计算算机机与与外外部设备之间的远距离通信。部设备之间的远距离通信。并并行行通通信信:指指数数据据各各位位同同时时传传送送。速速度度快快、效效率率高、距离短。高、距离短。串行通信有串行通信有同步通信和异步通信两种方
2、式:同步通信和异步通信两种方式:返回本章首页同步字符同步字符CRC字符字符开始开始终止终止数据块数据块图图9-5同步通信数据格式同步通信数据格式返回本节同同步步通通信信:每每个个数数据据块块开开始始时时,发发送送一一个个或或两两个个同同步步字字符符,使使发发送送和和接接收收双双方方取取得得同同步步,数数据据块块各各字字符符间间取取消消了了起起始始位位和和发发送送位位。如如发发送送的的数数据据之之间间有有间间隔隔时时,用用发发送送同同步步字字符符填填充。充。(较少使用)较少使用)同步字符由用户规定,如:同步字符由用户规定,如:01111110同步传送时,收、发双方要求时钟和频率一致。(较少使用)
3、同步传送时,收、发双方要求时钟和频率一致。(较少使用)图图9-4异步串行通信数据帧格式异步串行通信数据帧格式异异步步通通信信:数数据据在在线线路路上上是是以以一一个个字字(或或字字符符)为为单单位位来来传传送送的的。不不需需严严格格的的同同步步时时钟钟控控制制,也也不不需需数数据据流流的的连连续续性性。在串行通信中常用。在串行通信中常用。数数据据帧帧:包包含含起起始始位位(“0”电电平平),数数据据位位(从从低低位位到到高高位逐位数据传送),奇偶校验位、停止位(用位逐位数据传送),奇偶校验位、停止位(用“1”表示)。表示)。线线路路不不传传送送数数据据时时,应应保保持持为为“1”(保保证证起起
4、始始处处有有一一个下跳沿)。个下跳沿)。单片机的串行通信使用的是异步串行通信单片机的串行通信使用的是异步串行通信,所谓异步就是,所谓异步就是指发送端和接收端使用的不是同一个时钟。异步串行通信通常指发送端和接收端使用的不是同一个时钟。异步串行通信通常以字符(或者字节)为单位组成字符帧传送。字符帧由发送端以字符(或者字节)为单位组成字符帧传送。字符帧由发送端一帧一帧地传送,接收端通过传输线一帧一帧地接收。一帧一帧地传送,接收端通过传输线一帧一帧地接收。在异步通信中,收、发两方必须事先规定两件事:在异步通信中,收、发两方必须事先规定两件事:1.字符帧的帧格式字符帧的帧格式字字符符帧帧由由四四部部分分
5、组组成成,分分别别是是起起始始位位、数数据据位位、奇奇偶偶校校验验位、停止位。如图所示:位、停止位。如图所示:1)起起始始位位:位位于于字字符符帧帧的的开开头头,只只占占一一位位,始始终终位位逻逻辑辑低低电平,表示发送端开始发送一帧数据。电平,表示发送端开始发送一帧数据。2)数数据据位位:紧紧跟跟起起始始位位后后,可可取取5、6、7、8位位,低低位位在在前前,高位在后高位在后。3)奇偶校验位:占一位,用于对字符传送作正确性检查,因此奇偶校)奇偶校验位:占一位,用于对字符传送作正确性检查,因此奇偶校验位是可选择的,共有三种可能,即奇偶校验、偶校验和无校验,由用户根验位是可选择的,共有三种可能,即
6、奇偶校验、偶校验和无校验,由用户根据需要选定。据需要选定。4)停停止止位位:末末尾尾,为为逻逻辑辑“1”高高电电平平,可可取取1、1.5、2位位,表表示示一一帧帧字符传送完毕。字符传送完毕。如:如:ASCII码帧(字符)为码帧(字符)为10位。位。其中:数据其中:数据7位位起始位、校验位、停止位各一位。起始位、校验位、停止位各一位。字符帧格式字符帧格式 2.传送的速率传送的速率串串行行通通信信的的速速率率用用波波特特率率来来表表示示,所所谓谓波波特特率率就就是是指指一一秒秒钟钟传传送送数数据据位位的的个个数数。每每秒秒钟钟传传送送一一个个数数据据位位就就是是1波波特特。即即:1波特波特1bps
7、(位位/秒)秒)。在在串串行行通通信信中中,数数据据位位的的发发送送和和接接收收分分别别由由发发送送时时钟钟脉脉冲冲和和接接收收时时钟钟脉脉冲冲进进行行定定时时控控制制。时时钟钟频频率率高高,则则波波特特率率高高,通通信速度就快;反之,时钟频率低,波特率就低信速度就快;反之,时钟频率低,波特率就低,通信速度就慢。通信速度就慢。如如120个字符(帧)个字符(帧)/秒,每帧数据有秒,每帧数据有10位,则传输速率为位,则传输速率为1200波特率。(波特率。(1200bit/s)接收器接收器图图9-1单工方式单工方式发送器发送器 1.单向数据传送:数据只向一个方向传送单向数据传送:数据只向一个方向传送
8、二、串行通信数据传送方向二、串行通信数据传送方向接收器接收器接收器接收器 发送器发送器发送器发送器数据流数据流图图9-2半双工方式半双工方式2.半半双双向向数数据据传传送送:用用一一根根传传送送线线既既作作输输入入又又作作输输出出,但但通通信信双双方方不不能能同同时时收收、发发数数据据。要要改改变变数数据据传传送送方方向向,必必须须进进行通信双方的收、发设备的开关行通信双方的收、发设备的开关切换切换。发送器发送器接收器接收器数据流数据流接收器接收器发送器发送器图图9-3全双工方式全双工方式3.全全双双向向数数据据传传送送:由由两两根根传传送送线线来来发发送送和和接收数据,双方可同时进行发送和接
9、收。接收数据,双方可同时进行发送和接收。串行数据通信要解决两个关键技术问题,一个是串行数据通信要解决两个关键技术问题,一个是数据传送,另一个是数据转换。所谓数据传送,另一个是数据转换。所谓数据传送数据传送就是指就是指数据以什么形式进行传送。所谓数据以什么形式进行传送。所谓数据转换数据转换就是指单片就是指单片机在接受数据时,如何把接收到的串行数据转化为并机在接受数据时,如何把接收到的串行数据转化为并行数据,单片机在发送数据时,如行数据,单片机在发送数据时,如何把并行数据转换何把并行数据转换为串行数据进行发送。为串行数据进行发送。所有串行接口电路都是以并行数据形式和所有串行接口电路都是以并行数据形
10、式和CPU接接口,以串行数据形式和外部通信接口。口,以串行数据形式和外部通信接口。通用异步接收发送器通用异步接收发送器UART接收器接收器发送器发送器控制部件控制部件串行输入串行输入时钟时钟复位复位并行输入并行输入时钟时钟控制信号控制信号并行输出并行输出数数据据总线总线串行输出(对外)串行输出(对外)状状态态信信息息控制信息控制信息UART基本组成框图基本组成框图UART主要功能:主要功能:1、数据的串化、反串化、数据的串化、反串化数据的串化:将并行数据变为串行数据;(发送器)数据的串化:将并行数据变为串行数据;(发送器)数据的反串化:将串行数据变为并行数据;(接收器)数据的反串化:将串行数据
11、变为并行数据;(接收器)2、格式信息的插入和删除、格式信息的插入和删除格式信息:格式信息:异步通信中的异步通信中的起始位、校验位、停止位等。起始位、校验位、停止位等。串化过程:将格式信息插入和数据一起构成一个完整串化过程:将格式信息插入和数据一起构成一个完整的数据帧。的数据帧。反串化过程:滤出格式信息,保留数据位。反串化过程:滤出格式信息,保留数据位。3、错误检验、错误检验检验数据通信过程是否正确。检验数据通信过程是否正确。10.2MCS-51串行串行通信通信MCS-51单片机将单片机将一个一个“全双工全双工串行通信接口电串行通信接口电路路”集成在集成在单片机内。单片机内。数据转换数据转换串串
12、行行接接口口电电路路为为用用户户提提供供了了两两个个串串行行口口缓缓冲冲寄寄存存器器(SBUF),一一个个称称为为发发送送缓缓存存器器,它它的的用用途途是是接接收收片片内内总总线线送送来来的的数数据据,即即发发送送缓缓冲冲器器只只能能写写不不能能读读。发发送送缓缓冲冲器器中中的的数数据据通通过过TXD引引脚脚向向外外传传送送。另另一一个个称称为为接接收收缓缓冲冲器器,它它的的用用途途是是向向片片内内总总线线发发送送数数据据,即即接接收收缓缓冲冲器器只只能能读读不不能能写写。接接收收缓缓冲冲器器通通过过RXD引引脚脚接接收收数数据据。因因为为这这两两个个缓缓冲冲器器一一个个只只能能写写,一一个个
13、只只能能读读,所所以以共共用用一一个个地地址址99H。串行接口电路如图所示。串行接口电路如图所示。MCS-51串行口寄存器结构串行口寄存器结构串行串行接收的双缓冲结构接收的双缓冲结构移位寄存器移位寄存器数据缓冲器数据缓冲器SBUF一帧数据(一帧数据(8位)接收完,由移位寄存器装入位)接收完,由移位寄存器装入SBUF,立即接收下一帧。要求主机应立即将立即接收下一帧。要求主机应立即将SBUF中中数据取走。否则前一帧数据将丢失。数据取走。否则前一帧数据将丢失。发送是由发送是由CPU操纵的,不会发生帧重叠错误。操纵的,不会发生帧重叠错误。将数据写入将数据写入SBUF,(,(自动)通过移位脉冲一位一自动
14、)通过移位脉冲一位一位地发送出去。位地发送出去。二级二级10.2.1MCS-51单片机串行通信的控制寄存器单片机串行通信的控制寄存器与与串行通信有关的寄存器有三个串行通信有关的寄存器有三个1.串行口控制寄存器(串行口控制寄存器(SCON)SCON是是MCS-51单单片片机机的的一一个个可可位位寻寻址址的的专专用用寄寄存存器器,用用于于串串行行数数据据通通信信的的控控制制。单单元元地地址址为为98H,位位地地址址为为98H9FH。寄寄存存器器的的内内容容及及位位地地址址表表示示如下:如下:位地址位地址9FH9EH9DH9CH9BH9AH99H98H位符号位符号SM0SM1SM2RENTB8RB8
15、TIRI各位的说明如下:各位的说明如下:1)SM0、SM1串行口工作方式选择位串行口工作方式选择位2)SM2允许方式允许方式2、3的多机通信控制位的多机通信控制位在在方方式式2和和3中中,若若SM21且且接接收收到到的的第第九九位位数数据据(RB8)为为1,才才将将接接收收到到的的前前8位位数数据据送送入入接接收收SBUF中中,并并置置位位RI产产生生中中断断请请求求;否否则则丢丢弃弃前前8位位数数据据。若若SM20,则则不不论论第第九九位位数数据据(RB8)为为1还还是是为为0,都将前都将前8位送入接收位送入接收SBUF中,并产生中断请求。中,并产生中断请求。方式方式0时,时,SM2必须置必
16、须置0。多机通信的机制:多机通信的机制:地址帧地址帧数据帧数据帧地址帧地址帧被确认的从机,复位被确认的从机,复位SM2=0,接收接收RB8=0的数据。的数据。RR8=1地址帧地址帧RR8=0数据帧数据帧SM2=1多机方式多机方式SM2=0直通方式直通方式3)REN允许接收位允许接收位(通过软件值位、复位通过软件值位、复位)REN0禁止接收数据禁止接收数据REN1允许接收数据允许接收数据4)TB8发送数据位发送数据位8在在方方式式2、3时时,TB8的的内内容容是是要要发发送送的的第第9位位数数据据(格格式式信信息息)在在多多机机通通信信中中,通通过过TB8状状态态来来表表示示主主机机发发送送的的
17、是是地地址址帧帧(1),还还是是数数据据帧帧(0),其值由用户通过软件来设置。其值由用户通过软件来设置。5)RB8接收数据位接收数据位8(和(和TB8对应)对应)在在方方式式2、3时时,RB8是是存存放放接接收收的的第第9位位数数据据。可可判判断断是是地地址址帧帧(1),还是数据帧(还是数据帧(0)。)。在方式在方式1时,时,RB8是接收的停止位。是接收的停止位。在方式在方式0时,不使用时,不使用RB8AB单机方式单机方式主机主机从机从机2从机从机1从机从机n多机方式多机方式6)TI发送中断标志位发送中断标志位在方式在方式0时,发送完第时,发送完第8位数据后,该位由硬件置位。位数据后,该位由硬
18、件置位。在其它方式下,于发送停止位开始时,由硬件置位。在其它方式下,于发送停止位开始时,由硬件置位。因因此此,TI1表表示示帧帧发发送送结结束束,其其状状态态既既可可供供软软件件查查询使用,也可请求中断。询使用,也可请求中断。TI必须必须由软件清由软件清“0”。7 7)RI接收中断标志位接收中断标志位在方式在方式0时,接收完第时,接收完第8位数据后,该位由硬件置位。位数据后,该位由硬件置位。在在其其它它方方式式下下,于于接接收收到到停停止止位位中中间间时时,该该位位由由硬硬件件置位。置位。因因此此,RI1表表示示帧帧接接收收结结束束,其其状状态态既既可可供供软软件件查查询使用,询使用,也可请求
19、中断。也可请求中断。RI由由必须必须软件清软件清“0”。2.电源控制寄存器(电源控制寄存器(PCON)PCON不不可可位位寻寻址址,字字节节地地址址为为87H。它它主主要要是是为为CHMOS型型单单片片机机80C51的的电电源源控控制制而而设设置置的的专专用用寄寄存存器。其内容如下:器。其内容如下:与串行通信有关的只有与串行通信有关的只有D7位(位(SMOD),),该位为波特率倍增该位为波特率倍增位,当位,当SMOD=1时,串行口波特率增加一倍,当时,串行口波特率增加一倍,当SMOD=0时,串时,串行口波特率为设定值。行口波特率为设定值。当系统复位时,当系统复位时,SMOD=0。位序位序D7D
20、6D5D4D3D2D1D0位符号位符号SMOD/GF1GF0PDIDL3.3.中断允许控制寄存器(中断允许控制寄存器(IEIE)进进行字行字节节操作操作时时,寄存器地址,寄存器地址为为0A8H。按位操作按位操作时时,各位的地,各位的地址址为为0A8H0AFH。寄存器的内容及位地址表示如下:寄存器的内容及位地址表示如下:位地址0AFH0AEH0ADH0ACH0ABH0AAH0A9H0A8H位符号EA/ESET1EX1ET0EX0ES:串口中断允许位串口中断允许位ES=0:禁止串口中断禁止串口中断ES=1:允许串口中断允许串口中断8.3 8.3 MCS-51MCS-51串行通信工作方式串行通信工作
21、方式串行口的工作方式由串行口的工作方式由SM0SM0和和SM1SM1确定,编码和功能如表所示。确定,编码和功能如表所示。方式方式0 0和方式和方式2 2的波特率是固定的,而方式的波特率是固定的,而方式1 1和方式和方式3 3的波特的波特率是可变的,由率是可变的,由T1T1的溢出率决定。的溢出率决定。SM0SM1方式方式功能说明功能说明波特率波特率00方式方式0移位寄存器方式移位寄存器方式fosc/1201方式方式18位位UART可变可变10方式方式29位位UARTfosc/64或者或者fosc/3211方式方式39位位UART可变可变方式方式0发送时序发送时序10.3.1串行工作方式串行工作方
22、式0(移位方式)(移位方式)1.数据输出(发送)数据输出(发送)并口扩展并口扩展P147 当数据写入当数据写入SBUF后,数据从后,数据从RXD(P3.0)端在移位脉冲端在移位脉冲TXD(P3.1fosc/12P3.1fosc/12)的控制下,逐位移入的控制下,逐位移入74LS164,74LS164能完成能完成数据的数据的串并转换串并转换。当当8位数据全部移出后,位数据全部移出后,TI由硬件置位,由硬件置位,发生中断请发生中断请求。若求。若CPU响应中断,则从响应中断,则从0023H单元开始执行串行口中断服务程序,单元开始执行串行口中断服务程序,数据由数据由74LS164并行输出。其接口逻辑如
23、图所示。并行输出。其接口逻辑如图所示。图图为接口逻辑为接口逻辑移移位位数数据据:一一帧帧8位位。低低位位在在前前,高高位位在在后后,没没有有起起始始位位、停止位。停止位。图为图为方式方式0接收时序接收时序2.数据输入(接收)数据输入(接收)要要实实现现接接收收数数据据,必必须须首首先先把把SCON中中的的允允许许接接收收位位REN设设置置为为1。当当REN设设置置为为1时时,数数据据就就在在移移位位脉脉冲冲的的控控制制下下,从从RXD端端输输入入。当当接接收收到到8位位数数据据时时,置置位位接接收收中中断断标标志志位位RI,发发生生中中断断请请求求。其其接接口口逻逻辑辑如如图图所所示示。由由逻
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片微机原理及应用课件 第10章 串行通信及其接口 单片 微机 原理 应用 课件 10 串行 通信 及其 接口
限制150内