《单片机的串行口与应用.ppt》由会员分享,可在线阅读,更多相关《单片机的串行口与应用.ppt(61页珍藏版)》请在优知文库上搜索。
1、第第6章章单片机的串行口单片机的串行口原理及应用原理及应用 第六章 8051单片机的串行口应用2问题 2什么叫什么叫波特率波特率?它反映的是什么?它与时钟频率是相?它反映的是什么?它与时钟频率是相同的吗?同的吗?3. 8051单片机的串行口单片机的串行口有哪几种工作方式有哪几种工作方式?各有什么特点?各有什么特点和功能?和功能?1. 8051单片机与串行口单片机与串行口相关的特殊功能寄存器相关的特殊功能寄存器有哪几个?有哪几个?说明它们各个位的功能意义。说明它们各个位的功能意义。第六章 8051单片机的串行口应用3 并行通信方式与串行通信方式并行通信方式与串行通信方式 并行通信并行通信 在数据
2、传输时,如果一个在数据传输时,如果一个数据数据编码字符的编码字符的所有各位都同时发送所有各位都同时发送、并排传输,又同时被接收,则将这种传送方式称为并排传输,又同时被接收,则将这种传送方式称为并行传送并行传送方式。方式。特点:传送速度快、效率高。数据线多,成本高。特点:传送速度快、效率高。数据线多,成本高。 串行通信串行通信 在数据传输时,数据编码字符的所有各位不是同时发送,而是按在数据传输时,数据编码字符的所有各位不是同时发送,而是按一定顺序,一定顺序,一位接着一位在信道中被发送和接收一位接着一位在信道中被发送和接收,则将这种传送方,则将这种传送方式称为串行传送方式。式称为串行传送方式。特点
3、:成本低,但速度慢。特点:成本低,但速度慢。6.1串行通信方式串行通信方式第六章 8051单片机的串行口应用42 异步传输和同步传输异步传输和同步传输 异步传输异步传输 异步传输以一个字(或称字符)为单位进行数据传输,每个字异步传输以一个字(或称字符)为单位进行数据传输,每个字符都用起始位、停止位包装起来,符都用起始位、停止位包装起来,在字符间允许有长短不一的间隙在字符间允许有长短不一的间隙(空闲位)空闲位)。 一个字符由四个部分组成:起始位、数据位、奇偶校验位和停一个字符由四个部分组成:起始位、数据位、奇偶校验位和停止位。起始位为止位。起始位为“0”信号,信号, 起始位后面紧跟着的是数据位,
4、它一般起始位后面紧跟着的是数据位,它一般是是8位,奇偶校验位只占一位,位,奇偶校验位只占一位, 停止位用来表征字符的结束,它一停止位用来表征字符的结束,它一定是定是“1” ,停止位可以是,停止位可以是1位或位或2位。位。第六章 8051单片机的串行口应用53. 波特率波特率 波特率表示串行通信时波特率表示串行通信时每秒钟传送每秒钟传送”位位” 的数目的数目,比如,比如1s传送传送1bit,就是,就是1波特。即波特。即1波特波特1bit/s (位位/秒秒) 串行通信常用的标准波特率在串行通信常用的标准波特率在RS-232C标准中已有规定,如波特标准中已有规定,如波特率为率为600、1200、24
5、00、4800、9600、19200等等。等等。 假若数据传送速率为假若数据传送速率为120字符字符/s,而每一个字符帧已规定为,而每一个字符帧已规定为10个数个数据位,则传输速率为据位,则传输速率为120101200bit/s,即波特率为,即波特率为1200。 同步传输同步传输 同步传输用来对数据块进行传输,一个数据块中包含着许多连同步传输用来对数据块进行传输,一个数据块中包含着许多连续的字符,续的字符,在字符之间没有空闲在字符之间没有空闲。第六章 8051单片机的串行口应用64 单工方式、半双工方式、全双工方式单工方式、半双工方式、全双工方式 单工方式单工方式 信号信号(不包括联络信号不包
6、括联络信号) 在信道中在信道中只能沿一个方向传送只能沿一个方向传送,而不能,而不能沿相反方向传送的工作方式称为单工方式。沿相反方向传送的工作方式称为单工方式。 半双工方式半双工方式 通信的双方均具有发送和接收信息的能力,信道也具有双向传通信的双方均具有发送和接收信息的能力,信道也具有双向传输性能,但是,输性能,但是,通信的任何一方都不能同时既发送信息又接收信息通信的任何一方都不能同时既发送信息又接收信息,即在指定的时刻,只能沿某一个方向传送信息。这样的传送方式称即在指定的时刻,只能沿某一个方向传送信息。这样的传送方式称为半双工方式。半双工方式大多采用双线制。为半双工方式。半双工方式大多采用双线
7、制。 全双工方式全双工方式 若信号在通信双方之间沿两个方向同时传送,任何一方在若信号在通信双方之间沿两个方向同时传送,任何一方在同一时同一时刻既能发送又能接收信息刻既能发送又能接收信息,这样的方式称为全双工方式。,这样的方式称为全双工方式。 第六章 8051单片机的串行口应用7 80518051通过通过RXDRXD(P3P30 0)引脚、)引脚、TXDTXD(P3P31 1)引脚输入、输出,)引脚输入、输出,与外界通信。与外界通信。内部有一个通用异步接收发送器内部有一个通用异步接收发送器(UART)(UART),及,及波特率波特率发生器发生器。 UARTUART由由同步移位寄存器、接收缓冲器(
8、同步移位寄存器、接收缓冲器(SBUF)和发送缓冲)和发送缓冲器(器(SBUF)组成)组成它主要完成把数据进行串、并行的转换它主要完成把数据进行串、并行的转换。8051串行口基本结构主要由两大部分组成。串行口基本结构主要由两大部分组成。 波特率发生器:波特率发生器: 主要由主要由T1及内部的一些控制开关和分频器所组成。及内部的一些控制开关和分频器所组成。它提供串它提供串行口的时钟信号为行口的时钟信号为 TXCLOCK(发送时钟)和(发送时钟)和 XCLOCK(接(接收时钟)。收时钟)。 串行口的内部串行口的内部6.2串行口的工作方式与控制串行口的工作方式与控制第六章 8051单片机的串行口应用8
9、 8051串行口结构图串行口结构图 UARTUART第六章 8051单片机的串行口应用9 串行口状态控制寄存器串行口状态控制寄存器 SCON 位 地位 地址址 9FH 9EH9DH9CH 9BH9AH 99H 98H位 功位 功能能SM0SM1SM2REN TB8 RB8 TI RI 寄存器寄存器SCON既可字节寻址也可位寻址,字节地址为既可字节寻址也可位寻址,字节地址为98H,位地址为位地址为98H9FH。其格式如下:。其格式如下:工作方式选择工作方式选择位位允许方式允许方式2、3中的多处理机中的多处理机通信位通信位允许串行允许串行接收位接收位方式方式2和方式和方式3中要发送、中要发送、接收
10、的第接收的第9位数据位数据发送、接发送、接收中断标收中断标志位志位第六章 8051单片机的串行口应用10 SM0,SM1串行口工作方式选择位,其功能见表。串行口工作方式选择位,其功能见表。 SM0 SM1方式方式 特特 点点 波波 特特 率率 0 0 方式方式0 8位移位寄存器位移位寄存器 fosc/12 0 1 方式方式1 10位位UART 可变可变 1 0 方式方式2 11位位UART fosc/64或或fosc/32 1 1 方式方式3 11位位UART 可变可变SM2(SCON.5)允许方式允许方式2、3中的多处理机通信位。中的多处理机通信位。 方式方式0时,时,SM20。 方式方式1
11、时,若时,若SM21,只有接收到有效的停止位,接收中断,只有接收到有效的停止位,接收中断RI才置才置1。 方式方式2和方式和方式3时时,若,若SM21,则只有当接收到的,则只有当接收到的第第9位数据(位数据(RB8)为)为1时,时,才将接收到的前才将接收到的前8位位数据送入缓冲器数据送入缓冲器SBUF中,并把中,并把RI置置1、同时向、同时向CPU申请中断;申请中断;如果接收到的第如果接收到的第9位数据(位数据(RB8)为)为0,RI置置0,将接收到的前,将接收到的前8位数据丢弃。位数据丢弃。 而当而当SM20时,则不论接收到的笫九位数据是时,则不论接收到的笫九位数据是0 0 或或1 1 ,都
12、将前,都将前8 8位数据装位数据装入入SBUFSBUF中,并申请中断。中,并申请中断。 第六章 8051单片机的串行口应用11 电源控制寄存器电源控制寄存器 PCON 其中最高位其中最高位SMOD与串行口控制有关,其它位与掉电方式有与串行口控制有关,其它位与掉电方式有关。其格式如下:关。其格式如下: D7 D6 D5 D4 D3 D2 D1 D0SMOD GF1 GF0 PD IDL SMOD(PCON.7)串行通信波特率系数控制位。串行通信波特率系数控制位。 当当SMOD1时,使波特率加倍。复位后,时,使波特率加倍。复位后,SMOD0。 串行数据寄存器串行数据寄存器SBUF 包含在物理上是隔
13、离的两个包含在物理上是隔离的两个8位寄存器:发送数据寄存器和接位寄存器:发送数据寄存器和接收数据寄存器,它们共用一个地址收数据寄存器,它们共用一个地址99H。其格式如下:。其格式如下: D7 D6 D5 D4 D3 D2 D1 D0 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0 读读SBUF(MOV A,SBUF),访问接收数据寄存器;),访问接收数据寄存器;写写SBUF(MOV SBUF,A),访问发送数据寄存器。),访问发送数据寄存器。 第六章 8051单片机的串行口应用121 串行口方式串行口方式0 同步移位寄存器方式同步移位寄存器方式 当当SM00、SM10时,串行口
14、选择方式时,串行口选择方式0。这种工作方式。这种工作方式实质上是一种同步移位寄器方式。实质上是一种同步移位寄器方式。 数据传输波特率固定为(数据传输波特率固定为(112)fosc。 由由RXD(P30)引脚输入或输出数据,)引脚输入或输出数据, 由由TXD(P31)引脚)引脚输出输出同步移位同步移位时钟时钟。接收发送的是接收发送的是8位数据位数据,传输时低位在前。帧格式如,传输时低位在前。帧格式如下:下: D0D1D2D3D4D5D6D7传输方向第六章 8051单片机的串行口应用13串行口工作方式串行口工作方式0工作原理图工作原理图 控制向SBUF输入1或0第六章 8051单片机的串行口应用1
15、4发送发送8位数据写位数据写入入SBUF选通选通D触发触发器置器置1发送启动发送启动8位数据位数据移位输出移位输出左边补左边补0第第9位向位向左均为左均为 0零检测零检测器为器为 0撤消撤消发送发送TI置位置位第六章 8051单片机的串行口应用15接收接收当当REN1且且RI为零为零启动启动接收接收1111 1110写入移位写入移位寄存器寄存器RXD引脚引脚接收一位接收一位信号信号移位寄移位寄存器左存器左移一位移一位右边的右边的0移到最移到最左边左边移位寄存器移位寄存器的内容送入的内容送入SBUF清除接清除接收信号收信号置位置位SCON中的中的RI,发,发出中断申请出中断申请第六章 8051单
16、片机的串行口应用16当当 SM00、SM1l时,串行口选择方式时,串行口选择方式1。 数据传输数据传输波特率由波特率由T1的溢出决定的溢出决定,可用程序设定。,可用程序设定。由由 TXD(P31)引脚发送数据。)引脚发送数据。由由 RXD(P30)引脚接收数据。)引脚接收数据。 发送或接收一帧发送或接收一帧信息为信息为10位位:1位位起始位(起始位(0)、8位数据位位数据位(低位在前低位在前)和和l位位停止位(停止位(1)。帧格式如下:。帧格式如下: 起始D0 D1D2D3D4D5D6D7停止2.串行口方式串行口方式1第六章 8051单片机的串行口应用17发送:方式发送:方式1时,发送的工作原理图如上图所示。时,发送的工作原理图如上图所示。 数据写数据写 SBUF计数器计数器溢出溢出数据为数据为0发送为发送为0TXD输输出出0或门与门D将将1写入写入移位寄存移位寄存器器9位位D0发发送送计数器第计数器第16次溢出次溢出D1发发送送发送第发送第9位位1清除发清除发送信号送信号TI置位第六章 8051单片机的串行口应用18接收接收REN=1 且且RI=0RXD负负跳变跳变计数器复计数器复位