第三十六课 MCS-51串口通讯基础知识讲解<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
概述:
1、有一个可编程全双工串行通信接口(UART) (Universal Asychronous Receiver/Transmitter )
2、管脚:TXD(P3.1)、RXD(P3.0)
3、可同时发送、接收数据(Transmit/Receive)
4、有四种工作方式,帧格式有8、10、11位。
5、波特率(Baud rate)可设置
波特率:每秒钟传送二进制数码的位数,也叫比特数,单位为b/s,即位/秒。
一、MCS-51串行接口寄存器:
1、SBUF——串行口数据缓冲器
共两个:一个发送寄存器SBUF,一个接收SBUF,二者共用一个地址99H。
2、SCON——串行口控制寄存器
3、PCON——电源及波特率选择寄存器
(1)控制寄存器SCON:
?对各位的说明如下:
1、SM0、SM1:串行方式选择位,其定义如上图所示。
2、SM2:多机通信控制位,用于方式2和方式3中。在方式2和方式3处于接收方式时,若SM2=1, 且接收到的第9位数据RB8为0时,不激活RI;若SM2=1,且RB8=1时,则置RI=1。在方式2、3处于接收或发送方式时,若SM2=0,不论接收到的第9位RB8为0还是为1,TI、RI都以正常方式被激活。在方式1处于接收时,若SM2=1,则只有收到有效的停止位后,RI置1。在方式0中,SM2应为0。
3、REN:允许串行接收位。它由软件置位或清零。REN=1时,允许接收;REN=0时,禁止接收。在实训8中,由于乙机用于接收数据,因此使用位操作指令SETB REN,允许乙机接收。 TB8:发送数据的第9位。在方式2和方式3中,由软件置位或复位,可做奇偶校验位。在多机通信中,可作为区别地址帧或数据帧的标识位,一般约定地址帧时,TB8为1,数据帧时,TB8为0。
4、RB8:接收数据的第9位。功能同TB8。
5、TI:发送中断标志位。在方式0中,发送完8位数据后,由硬件置位;在其它方式中,在发送停止位之初由硬件置位。因此,TI是发送完一帧数据的标志,可以用指令JBC TI,rel来查询是否发送结束。实训中采用的就是这种方法。TI=1时,也可向CPU申请中断,响应中断后,必须由软件清除TI。
6、RI:接收中断标志位。在方式0中,接收完8位数据后,由硬件置位;在其它方式中,在接收停止位的中间由硬件置位。同TI一样,也可以通过JBC RI,rel来查询是否接收完一帧数据。RI=1时,也可申请中断,响应中断后,必须由软件清除RI。
?串行方式的定义:
(二)电源及波特率选择寄存器PCON
串行口四种工作方式应用比较:(方式的选择由SM1、SM0实现。)
(三)重点讲解方式1:
方式1串行口为波特率可调的10位通用异步接口UART。每发送或接收的一帧信息中,包括1位起始位0,8位数据位和1位停止位1。
方式1时序:
一帧数据为10位:1位起始位、8位数据位和1位停止位。
方式一的波特率有下面公式得出:
(其中x为定时器1的初值,fosc 为振荡频率SMOD为电源及波特率选择寄存器PCON的最高位)
文章评论(0条评论)
登录后参与讨论