《单片机612.ppt》由会员分享,可在线阅读,更多相关《单片机612.ppt(61页珍藏版)》请在优知文库上搜索。
1、 MCS-51MCS-51系列单片机片内有一个串行系列单片机片内有一个串行I IO O端口,通过端口,通过引脚引脚RXD(P3.0)RXD(P3.0)和和TXD(P3.1)TXD(P3.1)可与外设电路进行通信。可与外设电路进行通信。为了便于理解为了便于理解MCS-51MCS-51串行口的用法串行口的用法, ,本章:本章:介绍串行通信的一般知识介绍串行通信的一般知识重点讨论重点讨论MCS-51MCS-51串行口的特点及应用串行口的特点及应用 并行通讯:数据的各位同时传送并行通讯:数据的各位同时传送 优点:速度快优点:速度快 缺点:占口线多,缺点:占口线多,距离近距离近,成本高,成本高 串行通讯
2、:指数据的各位是一位一位地按顺序传送串行通讯:指数据的各位是一位一位地按顺序传送 优点:省口线(只需一根口线)优点:省口线(只需一根口线) 成本低,成本低,适于远距离通讯适于远距离通讯 缺点:速度低缺点:速度低 N N位数据:并行通讯用时间位数据:并行通讯用时间T T, 则串行用则串行用=NT=NT6.1 6.1 串行通信概说串行通信概说6.1.1 6.1.1 串行通讯的两种基本方式:异步,同步串行通讯的两种基本方式:异步,同步 1. 1. 异步通讯方式:异步通讯方式:字符是按帧格式进行传送的。字符是按帧格式进行传送的。 每帧的格式每帧的格式: :先是一个起始位先是一个起始位“0 0”;然后是
3、;然后是5 58 8位数据,且规定低位在前,高位在后;位数据,且规定低位在前,高位在后;接下来是奇偶校验位接下来是奇偶校验位( (可略可略) );最后一位是停止位;最后一位是停止位“1 1”。 这种通讯方式这种通讯方式利用每一帧的起、止信号来建立发送与接收之间的同步。利用每一帧的起、止信号来建立发送与接收之间的同步。 特点:特点:每每帧内部位采用固定的时间间隔,但帧与帧之间时间间隔是随机的。帧内部位采用固定的时间间隔,但帧与帧之间时间间隔是随机的。靠每一帧的起始、停止位识别字符传送是正在进行还是已经结束,或是一新字符。靠每一帧的起始、停止位识别字符传送是正在进行还是已经结束,或是一新字符。这也
4、就是这也就是“异步异步”的含义所在。的含义所在。同步时钟脉冲并不传送到接收方,即双方各用自己的时钟源来控制发送与接收。同步时钟脉冲并不传送到接收方,即双方各用自己的时钟源来控制发送与接收。 实现简单,但因额外加同步字符,实现简单,但因额外加同步字符,速度低,适于低速串行通讯。速度低,适于低速串行通讯。2.2.同步通讯方式同步通讯方式 同步通讯方式是一种同步通讯方式是一种连续传送连续传送的方式的方式 在要传送的数据块前加上在要传送的数据块前加上同步字符同步字符SYNSYN,而且数据没有间隙,而且数据没有间隙,如下图,如下图 在同步传送时,为了保证接收正确无误,发送方除了传送数据外,在同步传送时,
5、为了保证接收正确无误,发送方除了传送数据外,还要将还要将时时钟信号同时传送。钟信号同时传送。使用同步通讯方式,可以实现使用同步通讯方式,可以实现高速度、大容量的数据传送。高速度、大容量的数据传送。同步字符数据段校验字符校验字符同步字符数据段校验字符校验字符 波特率是串行通讯中的一个重要指标。波特率是串行通讯中的一个重要指标。它定义为每秒钟传送二进制数码的位它定义为每秒钟传送二进制数码的位数数( (亦称比特数亦称比特数) ),以位秒作为单位。,以位秒作为单位。(b/s)(b/s) 波特率反映了串行通讯的速率,也反映了对传输通道的要求:波特率反映了串行通讯的速率,也反映了对传输通道的要求:波特率越
6、高,要波特率越高,要求传输通道的频带就越宽。求传输通道的频带就越宽。 例如,如果传送的速率为例如,如果传送的速率为120120字符秒,而每个字符包含字符秒,而每个字符包含1010位位(1(1个起始位、个起始位、7 7个数据位、个数据位、1 1位奇偶校验、位奇偶校验、1 1位停止位位停止位) ),则波特率为:,则波特率为:120120字符秒字符秒1010位字符位字符=1200=1200位秒位秒=1200=1200波特波特一般异步通讯的波特率在一般异步通讯的波特率在505096009600波特之间。波特之间。 注:注:波特率与时钟频率并不是一回事。波特率与时钟频率并不是一回事。时钟频率比波特率要高
7、得多,一般时钟频率比波特率要高得多,一般有两种选取的方法:波特率有两种选取的方法:波特率=fosc=fosc6464,或波特率,或波特率=fosc/16=fosc/16。6.1.2 6.1.2 波特率波特率2.2.半双工方式半双工方式 ABAB间间只有一条传输线。只有一条传输线。可双向可双向传输传输,既可,既可A A发发B B收收,也可,也可B B发发A A收收,但但A A、B B不能同时发送,不能同时发送,线路的换向,可增加附加控制线路来实现,线路的换向,可增加附加控制线路来实现,也可软件约定来实现。也可软件约定来实现。3.3.全双工方式全双工方式有两条传输线,无论有两条传输线,无论A A、
8、B B站,收站,收发可发可同时进行。同时进行。A A和和B B都必须有独立的接收器和发送器,都必须有独立的接收器和发送器,1.1.单工方式单工方式在这种方式中只允许一个方向传输数据。在这种方式中只允许一个方向传输数据。 A A发送器,发送器,B B接收器接收器,而不能进行相反方,而不能进行相反方向的数据传输。向的数据传输。6.1.3 6.1.3 串行通讯中数据传送的方向串行通讯中数据传送的方向6.2 MCS516.2 MCS51的串行接口的串行接口串口信号线:串口信号线:P3.0RXD P3.1TXD可与外设进行可与外设进行全双全双工的串行异步通信工的串行异步通信。不通讯时,可做普通。不通讯时
9、,可做普通I/OI/O口用。口用。其串口有二个其串口有二个独立的发送缓冲器和接收缓冲器独立的发送缓冲器和接收缓冲器,发,发送器只写不读,接收器只读不写,且两个缓冲器公用送器只写不读,接收器只读不写,且两个缓冲器公用一个地址一个地址99H(SBUF)99H(SBUF)。串行端口共有串行端口共有2 2个控制寄存器:个控制寄存器:SCONSCON PCONPCON :软件设置,控制串行口:软件设置,控制串行口 定时器定时器T1T1:串口波特率发生器,改变串行通讯定时:串口波特率发生器,改变串行通讯定时用以设置:用以设置:串行端口的工作方式、串行端口的工作方式、接收发送的运行状态、接收发送的运行状态、
10、接收发送数据的特征、接收发送数据的特征、波特率的大小,波特率的大小,运行的中断标志等。运行的中断标志等。6.2.1 6.2.1 串行端口的控制寄存器串行端口的控制寄存器 串行口控制寄存器串行口控制寄存器SCONSCONSM0,SM1:串行口工作方式控制位。串行口工作方式控制位。 SM0 SM1 方式方式 功功 能能 波特率波特率 0 0 0 同步移位寄存器同步移位寄存器 fosc12 0 1 1 10位异步通讯位异步通讯 可变可变 1 0 2 11位异步收发位异步收发 fosc/32或或 fosc/64 1 1 3 11位异步收发位异步收发 可变可变SM2: 仅用于方式仅用于方式2 2和方式和
11、方式3 3的的多机通讯控制位。多机通讯控制位。 当为方式当为方式2 2或方式或方式3 3时:时:TB8TB8是是发送机第九位数据可发送机第九位数据可=1=1,0 0(要程控设置(要程控设置) ) 接收机:接收机:SM2=1SM2=1时,若时,若RB8=1RB8=1,可引起串行接收中断;,可引起串行接收中断; 若若RB8=0RB8=0,不引起串行接收中断。,不引起串行接收中断。 SM2=0SM2=0时,时,RB8=1RB8=1或或=0=0,都可引起行接收中断。,都可引起行接收中断。方式方式0 0中中,SM2SM2必须是必须是0 0。 方式方式1 1中中,SM2=0SM2=0,RB8RB8是接收到
12、的停止位是接收到的停止位 SM2=1,SM2=1,则只有收到有效停止位才激活则只有收到有效停止位才激活RIRI。SCON9FH9EH9DH9CH9BH9AH99H98H98HSM0SM1SM2RENTB8RB8TIRIREN: 串行接收允许位。串行接收允许位。 0-0-禁止接收;禁止接收;1-1-允许接收允许接收TB8: 在方式在方式2 2,3 3中,中,TB8TB8是发送机要发送的第是发送机要发送的第9 9位数据。位数据。RB8: 在方式在方式2 2,3 3中,中,RB8RB8是接送机接收到的第是接送机接收到的第9 9位数据,该数据正好位数据,该数据正好来自发送机的来自发送机的TB8TB8。
13、TI: 发送中断标志位。发送中断标志位。发送前必须用软件清零,发送过程中发送前必须用软件清零,发送过程中TI,发送完,发送完一一 帧数据后,由帧数据后,由硬件自动置硬件自动置TI=1。如要再发送,。如要再发送,必须用软件再清零必须用软件再清零。RI: 接收中断标志位。接收中断标志位。接收前,必须用软件清零,接收过程中接收前,必须用软件清零,接收过程中RI,接收,接收完完 一帧数据后,由片内一帧数据后,由片内硬件自动置硬件自动置RI=1。如要再接收,必须。如要再接收,必须用软件再清零。用软件再清零。注:注:中断入口都是中断入口都是0023H0023H. .由软件区分。由软件区分。 复位时,复位时
14、,(SCON)=0(SCON)=0SCON9FH9EH9DH9CH9BH9AH99H98H98HSM0SM1SM2RENTB8RB8TIRI 电源控制寄存器电源控制寄存器PCON PCON PCON的字节地址为的字节地址为87H87H,无位地址,无位地址,PCONPCON的格式如图的格式如图6.66.6所示。需指出的是,对所示。需指出的是,对80C3180C31和和80328032单片机而言,单片机而言,PCONPCON还有几位有效控制位。还有几位有效控制位。SMOD:波特率加倍位。波特率加倍位。在计算串行方式在计算串行方式1,2,3的波特率时的波特率时: 0-不加倍;不加倍;1-加倍加倍。P
15、CON SMOD-GF1GF0PDIDL掉电方式位掉电方式位空闲方式位空闲方式位6.2.2 6.2.2 串行端口的工作方式串行端口的工作方式1.1.方式方式0:0: 串行口为串行口为8 8位移位寄存器输入输出方式位移位寄存器输入输出方式。多用于外接移位寄多用于外接移位寄存器以扩展存器以扩展I IO O端口。端口。波特率固定为波特率固定为fosc/12fosc/12。其中,。其中,foscfosc为时钟频率。为时钟频率。发送:发送:只要向串行缓冲器只要向串行缓冲器SBUFSBUF写入一字节数据后,写入一字节数据后, 从从RXDRXD引脚逐位输出引脚逐位输出( (从低位到高位从低位到高位) );
16、此时,此时,TXDTXD输出频率为输出频率为fosc/12fosc/12的同步移位脉冲。的同步移位脉冲。 数据发送前,数据发送前,中断标志中断标志TITI必须清零,必须清零,8 8位数据发送完后,位数据发送完后,TITI自动置自动置1 1。 如果再发送,如果再发送,必须用软件将必须用软件将T1T1清零。清零。串行方式串行方式0 0发送发送(MOV SBUF, A)时序时序例:方式发送例:方式发送74LS164: 1,2-串行输入端,串行输入端, -CP时钟脉冲输入端时钟脉冲输入端, CP上升沿时实现移位,上升沿时实现移位,CP,CR时,输出保时,输出保持。持。Q0Q7-并行输出端。并行输出端。 -CR清除端,时,清除端,时,164输出清零输出清零74LS16474LS164串串入并入并出移位寄存器出移位寄存器1324651110131289714P3.1P3.0RXDQ0TXDQ7V+D2CPCLR74LS1648031D1 MOV SCON, #00H; 串口工作在方式串口工作在方式0 MOV A, #12H ;取待输出数据;取待输出数据 CLR TI QQ:MOV SBUF, A