单片机第七章串行口精选PPT.ppt
《单片机第七章串行口精选PPT.ppt》由会员分享,可在线阅读,更多相关《单片机第七章串行口精选PPT.ppt(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机第七章串行口第1页,此课件共95页哦1串行传送方式和并行传送方式串行传送方式和并行传送方式1)串行传送方式:)串行传送方式:单位信息的各位一位一位地按顺序依次传送。单位信息的各位一位一位地按顺序依次传送。串行传送方式的物理信道为串行总线。串行传送方式的物理信道为串行总线。串行数据传送方式的特点是成本低,但速度慢。串行数据传送方式的特点是成本低,但速度慢。2 2)并行传送方式:)并行传送方式:单位信息(同常为一个字节)的各位数据同时传送。所传送数单位信息(同常为一个字节)的各位数据同时传送。所传送数据的各位同时发送或接收。据的各位同时发送或接收。第2页,此课件共95页哦2单工方式、单工方式
2、、半双工方式、半双工方式、全双工方式全双工方式第3页,此课件共95页哦异步传输和同步传输异步传输和同步传输异步传输异步传输以以字字符符为为单单位位进进行行数数据据传传输输,每每个个字字符符都都用用起起始始位位、停停止止位位包包装起来,组成一帧数据。装起来,组成一帧数据。收收、发发方方采采用用各各自自独独立立的的时时钟钟,发发送送和和接接收收没没有有同同步步时时钟钟同同步步,传传送送过过程程中中字字符符之之间间允允许许有有长长短短不不一一的的间间隔隔。传传送送中中数数据据帧帧之之间间的的空空闲闲时时间间插插入入停停止止位位。当当接接收收设设备备检检测测到到数数据据信信号号线线有有起起始始位位到到
3、来来,才才开开始始接接收收数数据据。异异步步通通信信的的传传送送速速率率较较慢慢,但但硬硬件件的的要要求较低。求较低。第4页,此课件共95页哦同步传输同步传输发发送送和和接接收收同同步步进进行行,从从而而实实现现数数据据的的不不间间断断传传送送。为为了了实实现现同同步步,发发送送设设备备与与接接收收设设备备之之间间不不仅仅连连有有数数据据线线,还还连连接接同同步步时时钟钟信信号号线线,由由主主设设备备发发出出同同步步时时钟钟信信号号,以以达达到到发发送送与接收同步进行。与接收同步进行。每每个个数数据据块块的的开开头头以以同同步步字字符符加加以以指指示示,使使发发送送与与接接收收双双方方取得同步
4、。数据块的各字符之间没有起始位和停止位,取得同步。数据块的各字符之间没有起始位和停止位,由由于于同同步步通通信信可可以以实实现现数数据据的的不不间间断断传传送送,所所以以传传送送速速率率较较快快,但但硬件要求能够发送同步时钟信号和能够发送、检测同步字符等功能。硬件要求能够发送同步时钟信号和能够发送、检测同步字符等功能。第5页,此课件共95页哦波特率波特率波波特特率率表表示示每每秒秒钟钟传传送送离离散散事事件件的的个个数数,或或每每秒秒信信号号电电平平的的变变化化次数,单位为次数,单位为band(波特波特)。比比特特率率指指每每秒秒传传送送二二进进制制数数据据的的位位数数,单单位位为为比比特特/
5、秒秒(bit/s或或bps)。)。二进制的情况下,波特率与比特率数值相等。二进制的情况下,波特率与比特率数值相等。假假若若数数据据传传送送速速率率为为120字字符符/s,而而每每一一个个字字符符帧帧已已规规定定为为10个个数数据据位位,则则传传输输速速率率为为120101200bit/s,即即波波特特率率为为1200。每每一一位位数数据据传传送送的的时时间间为为波波特特率率的的倒倒数数:T=112000.833ms第6页,此课件共95页哦7.280C51串行口及控制串行口及控制7.2.1 80C517.2.1 80C51串行口结构串行口结构 80C51中中的的串串行行口口是是一一个个全全双双工
6、工的的异异步步串串行行通通信信接接口口,它它可可作作UART(通通用用异异步步接接收收和和发发送送器器)用用,也也可可作作同同步步移移位位寄存器用。寄存器用。所所谓谓全全双双工工的的异异步步串串行行通通信信接接口口,是是说说该该接接口口可可以以同同时进行接收和发送数据。时进行接收和发送数据。80C51串行口基本结构如串行口基本结构如图图71所示。主要由两大部分所示。主要由两大部分组成。组成。第7页,此课件共95页哦波特率发生器:波特率发生器:它提供串行口的时钟信号:发送时钟和它提供串行口的时钟信号:发送时钟和接接收时钟收时钟串行口的内部串行口的内部串行数据缓冲寄存器串行数据缓冲寄存器SBUF有
7、有接接收收缓缓冲冲器器SBUF和和发发送送缓缓冲冲器器SBUF,在在物物理理上上是是隔隔离的,但是占用同一个地址离的,但是占用同一个地址(99H)。串行口控制寄存器串行口控制寄存器SCON串行数据输入输出引脚串行数据输入输出引脚通常,接收方式下,串行数据从通常,接收方式下,串行数据从RXD(P3.0)引脚输入)引脚输入通常,发送方式下,串行数据通过通常,发送方式下,串行数据通过TXD(P3.1)引脚输出。引脚输出。第8页,此课件共95页哦串行口控制逻辑串行口控制逻辑接收来自波特率发生器的时钟信号接收来自波特率发生器的时钟信号TXCLOCK(发送时钟)和(发送时钟)和RXCLOCK(接收时钟)(
8、接收时钟)控制内部的输入移位寄存器将外部的串行数据转控制内部的输入移位寄存器将外部的串行数据转换为并行数据;换为并行数据;控制内部的输出移位寄存器将内部的并行数据转换为串控制内部的输出移位寄存器将内部的并行数据转换为串行数据输出;行数据输出;控制串行中断(控制串行中断(RI和和TI)。)。第9页,此课件共95页哦7.2.280C51串行口控制串行口控制 串行口状态控制寄存器串行口状态控制寄存器SCON字节地址为字节地址为98H,位地址为,位地址为98H9FH。其格式如下:。其格式如下:位位地地址址 9FH 9EH9DH9CH 9BH9AH99H 98H位位功功能能SM0SM1SM2REN TB
9、8 RB8 TI RI第10页,此课件共95页哦SM0,SM1串行口工作方式选择位。功能见串行口工作方式选择位。功能见表表71SM2(SCON.5)方式方式2、3中的多机通信控制位。中的多机通信控制位。u方式方式0时,时,SM20。u方方式式1时时,若若SM2l,只只有有接接收收到到有有效效的的停停止止位位,接接收收中中断断RI才置才置1。第11页,此课件共95页哦u方式方式2和方式和方式3时,时,1)若)若SM21,则只有当接收到的第,则只有当接收到的第9位数据(位数据(RB8)为)为1时,才将接收到数据送入缓冲器时,才将接收到数据送入缓冲器SBUF中,并把中,并把RI置置1、同时、同时向向
10、CPU申请中断;申请中断;如果接收到的第如果接收到的第9位数据(位数据(RB8)为)为0,RI置置0,将接收,将接收到的数据丢弃。到的数据丢弃。2 2)当)当SM20时,则不论接收到的笫时,则不论接收到的笫9 9位数据是位数据是0 0 或或1 1,都将接收的数据装入都将接收的数据装入SBUFSBUF中,并申请中断。中,并申请中断。第12页,此课件共95页哦REN允许串行接收位。允许串行接收位。REN1时时,允允许许串串行行接接收收;REN0时时,禁禁止止串串行行接接收收。用用软件置位清除。软件置位清除。TB8方式方式2和方式和方式3中要发送的第中要发送的第9位数据。位数据。在通信协议中,常规定
11、在通信协议中,常规定TB8作为奇偶校验位。作为奇偶校验位。在在80C51多多机机通通信信中中,TB8=0用用来来表表示示数数据据帧帧;TB8=1表示是地址帧。表示是地址帧。用软件置位清除。用软件置位清除。第13页,此课件共95页哦RB8(SCON.2)方式方式2和方式和方式3中接收到的第中接收到的第9位数据。位数据。方式方式1中接收到的是停止位。方式中接收到的是停止位。方式0中不使用这一位。中不使用这一位。TI(SCON1)发送中断标志位。发送中断标志位。方式方式0中,在发送第中,在发送第8位末尾置位;位末尾置位;在其它方式时,在发送停止位开始时设置。在其它方式时,在发送停止位开始时设置。由硬
12、件置位,用软件清除。由硬件置位,用软件清除。RI(SCON0)接收中断标志位。接收中断标志位。方方式式0中中,在在接接收收第第8位位末末尾尾置置位位;在在其其它它方方式式时时,在在接收停止位中间设置。接收停止位中间设置。由硬件置位,用软件清除。由硬件置位,用软件清除。第14页,此课件共95页哦电源控制寄存器电源控制寄存器PCON其其中中最最高高位位SMOD与与串串行行口口控控制制有有关关,其其它它位位与与掉掉电电方式有关。其格式如下:方式有关。其格式如下:D7 D6 D5 D4 D3 D2 D1 D0SMOD GF1 GF0 PDIDLSMOD(PCON.7)串行通信波特率系数控制位。串行通信
13、波特率系数控制位。当当SMOD1时,使波特率加倍。时,使波特率加倍。复位后,复位后,SMOD0。第15页,此课件共95页哦串行数据寄存器串行数据寄存器SBUF包含在物理上是隔离的两个包含在物理上是隔离的两个8位寄存器:位寄存器:发发送送数数据据寄寄存存器器和和接接收收数数据据寄寄存存器器,它它们们共共用用一一个个地地址址99H。读读SBUF(MOVA,SBUF),访问接收数据寄存器;),访问接收数据寄存器;写写SBUF(MOVSBUF,A),访问发送数据寄存器。),访问发送数据寄存器。第16页,此课件共95页哦7.3串行口的工作方式串行口的工作方式 在串行口控制寄存器在串行口控制寄存器SCON
14、中,中,SM0和和SM1位决定串位决定串行口的工作方式。行口的工作方式。80C51串行口共有四种工作方式。串行口共有四种工作方式。第17页,此课件共95页哦7.3.1串行口方式串行口方式0同步移位寄存器方式同步移位寄存器方式 当当SM00、SM10时时,串串行行口口选选择择方方式式0。这这种种工作方式实质上是一种同步移位寄器方式。工作方式实质上是一种同步移位寄器方式。数据传输波特率固定为(数据传输波特率固定为(112)fosc。由由RXD(P30)引脚输入或输出数据,)引脚输入或输出数据,由由TXD(P31)引脚输出同步移位时钟。)引脚输出同步移位时钟。接收发送的是接收发送的是8位数据,传输时
15、低位在前。位数据,传输时低位在前。第18页,此课件共95页哦发送发送当当执执行行任任何何一一条条写写SBUF的的指指令令(MOVSBUF,A)时时,就就启启动串行数据的发送。动串行数据的发送。串串行行口口以以fosc/12的的波波特特率率将将要要发发送送的的8位位数数据据由由RXD(P3.0)引引脚脚串串行行移移位位输输出出;移移位位脉脉冲冲由由TXD(P3l)输输出出。每每个个移移位位时时钟对应一个输出的数据位。钟对应一个输出的数据位。8位数据发送完毕,位数据发送完毕,使发送中断标志使发送中断标志TI置位,申请中断。置位,申请中断。至此,完成了一帧数据发送的全过程。至此,完成了一帧数据发送的
16、全过程。若若CPU响应中断,则执行从响应中断,则执行从0023H开始的串行口发送中断服开始的串行口发送中断服务程序。务程序。第19页,此课件共95页哦接收接收当软件设置当软件设置REN1且且RI位清除时,就会启动一次接收过程。位清除时,就会启动一次接收过程。TXD引引脚脚输输出出移移位位脉脉冲冲。同同时时由由RXD引引脚脚以以fosc/12的的波波特特率率接接收收输入信号。输入信号。当当接接收收到到8位位数数据据时时,将将数数据据送送入入接接收收缓缓冲冲器器SBUF,并并置置位位SCON中中的的RI,发发出出中中断断申申请请,通通知知CPU取取走走数数据据。完完成一帧数据的接收过程。成一帧数据
17、的接收过程。若若CPU响响应应中中断断,则则执执行行从从0023H开开始始的的串串行行口口接接收收中中断断服务程序服务程序第20页,此课件共95页哦7.3.2串行口方式串行口方式1当当SM00、SM1l时,串行口选择方式时,串行口选择方式1。数据传输波特率由数据传输波特率由T1的溢出决定,可用程序设定。的溢出决定,可用程序设定。由由TXD(P31)引脚发送数据。)引脚发送数据。由由RXD(P30)引脚接收数据。)引脚接收数据。发送或接收一帧信息为发送或接收一帧信息为10位:位:1位起始位(位起始位(0)、)、8位数据位数据位位(低位在前低位在前)和和l位停止位(位停止位(1)。帧格式如下:)。
18、帧格式如下:起起始始D0 D1D2D3D4D5D6D7停停止止第21页,此课件共95页哦发送:发送:当当执执行行任任何何一一条条写写SBUF的的指指令令时时,就就启启动动串串行行数数据据的发送。的发送。数数据据以以指指定定的的波波特特率率从从TXD引引脚脚输输出出(1位位起起始始位位,8位位数数据据位位,1位位停停止止位位),发发送送完完一一帧帧数数据据后后把把TI置置1,申申请请中中断断,通通知知CPU发发送送下下一一帧帧数数据据。在在未未发发送送下下一一帧帧数数据据时时,TXD引引脚始终为高电平。脚始终为高电平。第22页,此课件共95页哦接收接收当当REN1且清除且清除RI后,若在后,若在
19、RXD引脚上检测到一个引脚上检测到一个1到到0的负跳变,开始接收一帧数据。的负跳变,开始接收一帧数据。串行口以指定的波特率,从串行口以指定的波特率,从RXD引脚串行输入引脚串行输入8位数据位数据(低位在前)、(低位在前)、1位停止位。位停止位。当数据接收完毕,必须满足一定条件时,才能将当数据接收完毕,必须满足一定条件时,才能将8位数据位数据送入接收缓冲器送入接收缓冲器SBUF保存,并置位保存,并置位RI,申请中断;否则不,申请中断;否则不可恢复地丢失接收到的数据,也不置位可恢复地丢失接收到的数据,也不置位RI。第23页,此课件共95页哦两两个个条条件件均均满满足足时时,将将数数据据送送入入接接
20、收收数数据据缓缓冲冲器器SBUF和和停停止止位送入位送入RB8,将,将RI置置1。RI0即即上上一一帧帧数数据据接接收收完完成成时时发发出出的的中中断断请请求求已已被被响响应应,SBUF中数据已被取走。中数据已被取走。SM20或接收到的停止位或接收到的停止位1。若若以以上上两两个个条条件件有有一一个个不不满满足足,将将不不可可恢恢复复地地丢丢失失接接收收到的这一帧信息。到的这一帧信息。第24页,此课件共95页哦7.3.3串行口方式串行口方式2和和39位位UART 当当SM01、SM10时,串行口选择方式时,串行口选择方式2;当当SM11、SM01时,串行口选择方式时,串行口选择方式3。由由TX
21、D(P3l)引脚发送数据。)引脚发送数据。由由RXD(P30)引脚接收数据。)引脚接收数据。发送或接收一帧信息为发送或接收一帧信息为11位:位:1位位起起始始位位(0)、8位位数数据据位位(低低位位在在前前)、1位位可可编编程程位位和和1位位停止位(停止位(l)。)。发发送送时时TB8提提供供第第9位位数数据据,TB8可可软软件件设设置置为为1或或0,接接收收时时第第9位数据进入位数据进入SCON寄存器的寄存器的RB8位。位。第25页,此课件共95页哦帧格式如下:帧格式如下:起起始始D0D1D2D3D4D5D6D7D8 停 止发送发送发送前,先根据通信协议由软件设置发送前,先根据通信协议由软件
22、设置TB8,然后将要发送,然后将要发送的数据写入的数据写入SBUF,就启动串行数据的发送。就启动串行数据的发送。发送移位寄存器将数据由低位到高位顺序输出至发送移位寄存器将数据由低位到高位顺序输出至TXD引脚。引脚。发送完一帧数据后,发送完一帧数据后,TI置位。置位。方式方式2的波特率是固定的,为振荡器频率的的波特率是固定的,为振荡器频率的1/32或或1/64。方式方式3 3的波特率和方式的波特率和方式1 1相同,由定时器相同,由定时器/计数器的溢出率决定。计数器的溢出率决定。第26页,此课件共95页哦接收接收当当RENl且且清清除除RI后后,若若在在RXD引引脚脚上上检检测测到到一一个个l到到
23、0的跳变,立即启动一次接收。的跳变,立即启动一次接收。当以下两个条件都满足时:当以下两个条件都满足时:RI0;SM20或接收到的第或接收到的第9位位1。把接收到的把接收到的9位数据送入接收数据缓冲器位数据送入接收数据缓冲器SBUF和和RB8,而且置位,而且置位RI。若以上两个条件中有一个不满足,将不可恢复地丢若以上两个条件中有一个不满足,将不可恢复地丢失接收到的这一帧信息。失接收到的这一帧信息。第27页,此课件共95页哦7.4多处理机通信方式多处理机通信方式 主从式多机通信系统如主从式多机通信系统如图图7 76 6:当从机发送、主机接收时,可:当从机发送、主机接收时,可以很容易实现一对一通信;
24、当主机发送、从机接收时,必须通以很容易实现一对一通信;当主机发送、从机接收时,必须通过相应的控制,才能实现一对一通信;当两个从机之间相互通过相应的控制,才能实现一对一通信;当两个从机之间相互通信时,必须通过主机完成。下面分析当主机发送、从机接收时,信时,必须通过主机完成。下面分析当主机发送、从机接收时,如何实现一对一通信。如何实现一对一通信。首先,通信前作一些约定,给每个从机一个固定的地址,首先,通信前作一些约定,给每个从机一个固定的地址,主机发送时,先发送要通信的从机地址,再发送数据。设主机发送时,先发送要通信的从机地址,再发送数据。设计中采用方式计中采用方式2 2或或3 3的的1111位异
25、步通信方式,第位异步通信方式,第9 9位作为标志位,位作为标志位,1 1地址信息;地址信息;0 0数据信息。数据信息。第28页,此课件共95页哦多机通信过程如下:多机通信过程如下:1初始化阶段:设置所有从机为方式初始化阶段:设置所有从机为方式2或或3接接收,并设置收,并设置SM2=1,允许串行口中断。允许串行口中断。2通信阶段通信阶段1)主机发送要通信的从机地址,第)主机发送要通信的从机地址,第9位为位为1;由于所有的从机的;由于所有的从机的SM2=1,则所有从,则所有从机都接收,并置位机都接收,并置位RI=12)所有从机响应中断,在中断服务程序中,所有从机响应中断,在中断服务程序中,首先判断
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 第七 串行口 精选 PPT
限制150内