MCS-51单片机的串行通信.ppt
《MCS-51单片机的串行通信.ppt》由会员分享,可在线阅读,更多相关《MCS-51单片机的串行通信.ppt(82页珍藏版)》请在三一办公上搜索。
1、6、MCS-51单片机的串行通信,教 学 目 的,掌握串行通信基础知识。了解常用的串行通信总线标准。掌握MCS-51单片机的串行通信的基本原理。,学习 重点 和 难点,MCS-51单片机串行通信的基本原理。单片机串行通信的应用。,串行通信主要内容,1)串行通信概述,2)常用的串行通信总线 略,3)MCS-51的串行接口,4)MCS-51单片机之间的通信,本节小结,应用举例,1)串行通信概述,单片机除了需要控制外围器件完成特定的功能外,在很多应用中还要完成单片机与单片机之间、单片机和外围器件之间、单片机与计算机之间的数据交换和指令的传输,称为单片机的通信。,1)串行通信概述,在计算机系统中,CP
2、U与外部通信的基本方式有两种:A、并行通信 数据的各位同时传送。B、串行通信 数据一位一位顺序传送。下面分别看看这两种通信方式的特点,并行通信的特点:各数据位同时传送,传送速度快、效率高。但有多少数据位就需要有多少根数据线,因此传送成本高。在集成电路芯片的内部、同一插件板上各部件之间、同一机箱内各插件板之间等的数据传送都是并行的。并行数据传送的距离通常小于30米。,串行通信的特点:数据传送按位顺序进行,最少只需一根传输线即可完成,成本低,但速度慢。计算机与远程终端或终端与终端之间的数据传送通常都是串行的。串行数据传送的距离可以从几米到几千公里。串行通信又有同步通信和异步通信两种基本方式。,基本
3、 通信方式 示意图,下面分别看看串行通信的异步通信和同步通信,A.异步通信方式(Asynchronous Communication)在异步通信中,数据通常是以字符(或字节)为单位组成字符帧传送的。字符帧由发送端一帧一帧地发送,通过传输线被接收设备一帧一帧地接收。发送端和接收端可以有各自的时钟来控制数据的发送和接收。两个时钟源彼此独立,互不同步。,A.异步通信方式(Asynchronous Communication)在异步通信中,接收端是依靠字符帧格式来判断发送端是何时开始发送及何时结束发送。如下:不发送数据时,发送线为高电平(逻辑“1”);当接收端检测到传输线上发送过来的低电平逻辑“0”(
4、字符帧起始位)时,就知道发送端已开始发送;每当接收端接收到字符帧中的停止位时,就知道一帧字符信息己发送完毕。,(1)字符帧(Character Frame)字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位四部分组成。各部分结构和功能如下:起始位:位于字符帧开头,占一位,为逻辑“0”,用于向接收设备表示发送端开始发送一帧信息 数据位:紧跟起始位之后,用户根据情况可取5位、6位、7位或8位,低位在前高位在后。若所传数据为ASCII字符,则常取7位。,(1)字符帧(Character Frame)奇偶校验位:位于数据位后,仅占一位,表征串行通信中采用奇校验还是偶校验,由用户根据需要决定。停止位
5、:位于字符帧末尾,为逻辑“1”(高电平),通常可取1位、1.5位或2位,用于向接收端表示一帧字符信息已发送完毕,也为发送下一帧字符作准备。,(1)字符帧(Character Frame)-空闲位 在串行通信中,发送端一帧一帧发送信息,接收端一帧一帧接收信息。两相邻字符帧之间可以无空闲位,也可以有若干空闲位,这由用户根据需要决定。,异步通信的字符帧格式,异步通信,下页为同步通信的知识,(2)波特率(baud rate)波特率的定义为每秒钟传送二进制数码的位数(亦称比特数),单位是bit/s,即位/秒。波特率是串行通信的重要指标,用于表征数据传输的速度。波特率越高,数据传输速度越快,但和字符的实际
6、传输速率不同。字符的实际传输速率是指每秒内所传字符帧的帧数,和字符帧格式有关。看下面的例子,例如:波特率为1200 bit/s的通信系统,若采用上 图(a)的字符帧,则字符的实际传输速率为 1200/11=109.09帧/秒 若改用上图(b)的字符帧,则字符的实际传输速率为 1200/14=85.71帧/秒,(2)波特率(baud rate)每位的传输时间定义为波特率的倒数。例如:波特率为1200 bit/s的通信系统,其每位的传输时间应为:波特率还和信道的频带有关。波特率越高,信道频带越宽。因此,波特率也是衡量通道频宽的重要指标,通常,异步通信的波特率在50bit/s9600bit/s之间。
7、波特率不同于发送时钟和接收时钟,它通常是时钟频率的1/16或1/64。,异步通信-小结,图2.18 串行异步传送的字符格式(a)字符格式;(b)有空闲位的字符格式,在串行异步传送中,通信双方必须事先约定:(1)字符格式。双方要事先约定字符的编码形式、奇偶校验形式及起始位和停止位的规定。例如用ASCII码通信,有效数据为7位,加一个奇偶校验位、一个起始位和一个停止位共10位。当然停止位也可以大于1位。(2)波特率(Baud rate)。要求发送端与接收端的波特率必须一致。异步串行通信的传送速率一般为509600波特,常用于计算机到CRT终端和字符打印机之间的通信等。,下面看看同步通信,2.同步通
8、信(Synchronous Communication)同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧和异步通信中的字符帧不同,通常有若干个数据字符,如下图所示。,同步字符帧由同步字符、数据字符和校验字符三部分组成。,同步通信的字符帧格式,同步字符位于帧结构开头,用于确认数据字符的开始(接收端不断对传输线采样,并把采到的字符和双方约定的同步字符比较,只有比较成功后才会把后面接收到的字符加以存储);,同步通信的字符帧格式,数据字符在同步字符之后,个数不受限制,由所需传输的数据块长度决定;校验字符有12个,位于帧结构末尾,用于接收端对接收到的数据字符的正确性的校验。
9、,同步通信的字符帧格式,2.同步通信(Synchronous Communication)在同步通信中,同步字符可以采用统一标准符式,也可由用户约定。在单同步字符帧结构中,同步字符常采用ASCII码中规定的SYN(即16H)代码;在双同步字符帧结构中,同步字符一般采用国际通用标准代码EB90H。,同步通信的字符帧格式,2.异步通信与同步通信的特点异步通信的优点是不需要传送同步脉冲,字符帧长度也不受限制,故所需设备简单。异步通信的缺点是字符帧中因包含有起始位和停止位而降低了有效数据的传输速率。同步通信的优点是传输速率较高,通常可达56000bit/s或更高。同步通信的缺点是要求发送时钟和接收时钟
10、保持严格同步,故发送时钟除应和发送波特率保持一致外,还要求把它同时传送到接收端去。,串行通信的制式,在串行通信中,数据是在两个站之间传送的。按照数据传送方向,串行通信可分为以下三种传送方式:,单工方式:通信线的一端接发送器,另一端接接收器,它们形成单向连接,只允许数据按照一个固定的方向传送。数据只能单方向传送。,半双工方式:系统中的每个通信设备都由一个发送器和一个接收器组成,通过收发开关接到通信线上。数据能够实现双方向传送,但任何时刻只能由其中的一方发送数据,另一方接收数据。其收发开关并不是实际的物理开关,而是由软件控制的电子开关,通信线两端通过半双工协议进行功能切换。,半双工方式:,全双工方
11、式:系统的每端都含有发送器和接收器,数据可以同时在两个方向上传送。,尽管许多串行通信接口电路具有全双工功能,但在实际应用中,大多数情况下只工作于半双工方式,即两个工作站通常并不同时收发。这种用法并无害处,虽然没有充分发挥效率,但简单、实用。,2)常用的串行通信总线,3)MCS-51的串行接口,80C51串行口的结构,*,(99H),(99H),有两个物理上独立的接收、发送缓冲器SBUF,它们占用同一地址99H;接收器是双缓冲结构;发送缓冲器,因为发送时CPU是主动的,不会产生重叠错误。,串行发送时,通过“MOV SBUF,A”写指令,把A的内容送入发送缓冲寄存器SBUF,再由TxD引脚一位一位
12、地向外发送。,(99H),(99H),串行接收时,接收端从RxD一位一位地接收数据,直到收到一个完整的字符数据后通知CPU,再通过“MOV A,SBUF”读指令,CPU从接收缓冲寄存器SBUF读出数据。发送和接收可采用中断方式。,(99H),(99H),SCON 是一个特殊功能寄存器,用以设定串行口的工作方式、接收/发送控制以及设置状态标志:,80C51串行口的控制寄存器,SM0和SM1为工作方式选择位,可选择四种工作方式:,同步,SM2,多机通信控制位,主要用于方式2和方式3。当接收机的SM2=1时可以利用收到的RB8来控制是否激活RI(RB80时不激活RI,收到的信息丢弃;RB81时收到的
13、数据进入SBUF,并激活RI,进而在中断服务中将数据从SBUF读走)。当SM2=0时,不论收到的RB8为0和1,均可以使收到的数据进入SBUF,并激活RI(即此时RB8不具有控制RI激活的功能)。通过控制SM2,可以实现多机通信。在方式0时,SM2必须是0。在方式1时,若SM2=1,则只有接收到有效停止位时,RI才置1。,REN,允许串行接收位。由软件置REN=1,则启动串行口接收数据;若软件置REN=0,则禁止接收。,TB8,在方式2或方式3中,是发送数据的第九位,可以用软件规定其作用。可以用作数据的奇偶校验位,或在多机通信中,作为地址帧/数据帧的标志位。TB8=0表示发送地址帧。在方式0和
14、方式1中,该位未用。RB8,在方式2或方式3中,是接收到数据的第九位,作为奇偶校验位或地址帧/数据帧的标志位。在方式1时,若SM2=0,则RB8是接收到的停止位。,TI,发送中断标志位。在方式0时,当串行发送第8位数据结束时,或在其它方式,串行发送停止位的开始时,由内部硬件使TI置1,向CPU发中断申请。在中断服务程序中,必须用软件将其清0,取消此中断申请。RI,接收中断标志位。在方式0时,当串行接收第8位数据结束时,或在其它方式,串行接收停止位的中间时,由内部硬件使RI置1,向CPU发中断申请。也必须在中断服务程序中,用软件将其清0,取消此中断申请。,PCON中只有一位SMOD与串行口工作有
15、关:,SMOD(PCON.7)波特率倍增位。在串行口方式1、方式2、方式3时,波特率与SMOD有关,当SMOD=1时,波特率提高一倍。复位时,SMOD=0。,(99H),(99H),SMOD(PCON.7)波特率倍增位。在串行口方式1、方式2、方式3时,波特率与SMOD有关,当SMOD=1时,波特率提高一倍。复位时,SMOD=0。,下面具体看看串行口的工作方式,80C51串行口的工作方式,一、方式0 方式0时,串行口为同步移位寄存器的输入输出方式。主要用于扩展并行输入或输出口。数据由RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。发送和接收均为8位数据,低位在先,高
16、位在后。波特率固定为fosc/12。,8位串入并出的移位寄存器,方式0发送和接收电路,下面具体看看,1、方式0输出:,(P3.0),(P3.1),低位在先,高位在后。波特率固定为fosc/12,8位串入并出的移位寄存器,方式0发送和接收电路,串行数据通过RXD引脚输出,而在TXD引脚输出移位时钟,作移位脉冲输出端。,1、方式0输出:,(P3.0),(P3.1),低位在先,高位在后。波特率固定为fosc/12,8位串入并出的移位寄存器,方式0发送和接收电路,当一个数据写入串行口数据缓冲器时,就开始发送。在此期间,发送控制器送出移位信号,使发送移位寄存器的内容右移一位。直至最高位(D7位)数字移出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MCS 51 单片机 串行 通信
链接地址:https://www.31ppt.com/p-6512340.html