【单片机课程设计】第09章 MCS-51单片机的串行接口.ppt
《【单片机课程设计】第09章 MCS-51单片机的串行接口.ppt》由会员分享,可在线阅读,更多相关《【单片机课程设计】第09章 MCS-51单片机的串行接口.ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、KMU FWJ第第 9 章章 MCS-51单片机的串行接口单片机的串行接口串行通信基础串行通信基础MCS-51MCS-51单片机的串行口单片机的串行口MCS-51MCS-51串行口的应用串行口的应用单片机的多机通信单片机的多机通信1 1KMU FWJ设备设备1 1计算机计算机A ACPUCPU网络设备网络设备A A.信息交换称为通信信息交换称为通信设备设备2 2计算机计算机B BI/OI/O设备设备网络设备网络设备B B.两个或多个实体之间两个或多个实体之间的信息交换称为通信。的信息交换称为通信。在计算机中在计算机中基本的通信方式可分为并行通信与串行通信两种基本的通信方式可分为并行通信与串行通
2、信两种:并行通信是指利用多根传输线将多位数据同时进行传送和接收。并行通信是指利用多根传输线将多位数据同时进行传送和接收。串行通信是指利用一条传输线将数据一位一位地按顺序分别传输。串行通信是指利用一条传输线将数据一位一位地按顺序分别传输。并行传输并行传输串行传输串行传输9.1 串行通信基础串行通信基础2 2KMU FWJ为保证通信能顺利进行,发送方和接收方必须要共同遵守一些为保证通信能顺利进行,发送方和接收方必须要共同遵守一些基本通信规程。这些规程包括:收发双方的同步方式、传输控制基本通信规程。这些规程包括:收发双方的同步方式、传输控制步骤、差错检验方式、数据编码、数据传输速度、通信报文格式步骤
3、、差错检验方式、数据编码、数据传输速度、通信报文格式及控制字符的定义等。通信规程在计算机网络中称为协议及控制字符的定义等。通信规程在计算机网络中称为协议(Protocol)。)。在串行通通信中按串行数据的同步方式,串行通信规程有两类:在串行通通信中按串行数据的同步方式,串行通信规程有两类:同步(同步(SYNC)通信)通信:使用同步字符同步:使用同步字符同步异步(异步(ASYNC)通信)通信:利用字符的再同步:利用字符的再同步9.1.1 串行通信规程串行通信规程3 3KMU FWJ在异步通信中,数据通常是以字符(或字节)为单位组成字符帧传送的。在异步通信中,数据通常是以字符(或字节)为单位组成字
4、符帧传送的。发送端和接收端依靠字符帧格式和波特率来协调数据的发送和接收,发送端和接收端依靠字符帧格式和波特率来协调数据的发送和接收,字符帧(字符帧(Character Frame):):字符帧由起始位、数据位、奇偶校验位、停止位和空闲位等五部分组成。字符帧由起始位、数据位、奇偶校验位、停止位和空闲位等五部分组成。波特率波特率(band rate):波特率的定义为每秒钟传送二进制数码的位数(也称比特数),单位通常波特率的定义为每秒钟传送二进制数码的位数(也称比特数),单位通常为为bpsbps(bit per secondbit per second),即位),即位/秒。秒。无空闲位字符帧无空闲位
5、字符帧有空闲位字符帧有空闲位字符帧1异步通信(异步通信(Asynchronous Communication)规程)规程4 4KMU FWJ2同步通信(同步通信(Synchronous Communication)规程)规程同步通信是一种连续串行传送数据的通信方式,以帧为传输单位,一次通同步通信是一种连续串行传送数据的通信方式,以帧为传输单位,一次通信只传送一帧信息。根据控制规程分为:面向字符及面向比特两种。信只传送一帧信息。根据控制规程分为:面向字符及面向比特两种。面向字符型的数据格式面向字符型的数据格式双同步双同步单同步单同步外同步外同步外同步:外同步:专用同步线路同步专用同步线路同步内同
6、步:内同步:数据帧内同步字符同步数据帧内同步字符同步5 5KMU FWJ面向比特型的数据格式面向比特型的数据格式根据同步数据链路控制规程(根据同步数据链路控制规程(SDLC),面向比特型的数据一),面向比特型的数据一帧为单位传输,每帧由六个部分组成。帧为单位传输,每帧由六个部分组成。第一部分:开始标志第一部分:开始标志7EH;第二部分:一个字节的地址场;第二部分:一个字节的地址场;第三部分:一个字节的控制场;第三部分:一个字节的控制场;第四部分:需要传送的数据,数据都是位(第四部分:需要传送的数据,数据都是位(bit)的集合;)的集合;第五部分:两个字节的循环校验码第五部分:两个字节的循环校验
7、码CRC;第六部分:结束标志第六部分:结束标志7EH。面向比特型同步通信数据格式面向比特型同步通信数据格式6 6KMU FWJ1 异步接收异步接收/发送器(发送器(UART)具有异步通信功能的串行接口硬件,称之为异步接收具有异步通信功能的串行接口硬件,称之为异步接收/发送器,发送器,简称为简称为UART(Universal Asynchronous Receiver Transmitter)。)。2 串行通信的制式串行通信的制式1)单工()单工(Simplex)方式:)方式:单向传输单向传输2)半双工()半双工(Half Duplex):):分时双向传输分时双向传输3)全双工()全双工(Ful
8、l Duplex)方式:)方式:同时时双向传输同时时双向传输9.1.2 串行通信的制式串行通信的制式7 7KMU FWJ调制与解调调制与解调9.1.3 串行通信中的调制解调器串行通信中的调制解调器可远距离传输可远距离传输无法进行远距离传输无法进行远距离传输8 8KMU FWJ各种调制方法各种调制方法9 9KMU FWJMCS-51内部有一个的可编程全双工串行通信接口,具有内部有一个的可编程全双工串行通信接口,具有UART的全部功能。的全部功能。9.2 MCS-51单片机的串行口单片机的串行口9.2.1 串行口的结构串行口的结构1 发送和接收电路发送和接收电路1010KMU FWJ2 串行口控制
9、寄存器串行口控制寄存器 SCON 和和PCON串行口控制寄存器串行口控制寄存器SCON .SM0、SM1:为串行口方式选择位,用于控制串行口的工作方式。为串行口方式选择位,用于控制串行口的工作方式。0 0 方式方式0:8位移位寄存器位移位寄存器I/O,波特率固定为,波特率固定为 fosc/12 0 1 方式方式1:8位位UART(1+8+1位位),波特率可变波特率可变,按公式计算按公式计算 1 0 方式方式2:9位位UART(1+8+1+1位位),波特率固定,波特率固定=fosc/32或或fosc/64 1 1 方式方式3:9位位UART(1+8+1+1位位),波特率可变,按公式计算,波特率可
10、变,按公式计算1111KMU FWJ.SM2:允许方式允许方式2和方式和方式3进行多机通信控制位。进行多机通信控制位。在方式在方式0或方式或方式1下,下,SM2不用,应设置为不用,应设置为0。在方式在方式2或方式或方式3下,下,若若SM2=0,串行口以单机发送或接收方式工作,串行口以单机发送或接收方式工作,TI和和RI以正常方式被以正常方式被激活,但不会引起中断请求;激活,但不会引起中断请求;若若SM2=1,接收到第,接收到第9位数据位数据(RB8)为为1时激活时激活RI,并向,并向CPU请求中断。请求中断。.REN:允许串行接收控制位。允许串行接收控制位。REN=0,禁止接收;,禁止接收;R
11、EN=1,允许接收。,允许接收。.TB8:是工作在方式是工作在方式2和方式和方式3时要发送数据的第时要发送数据的第9位。位。.RB8:是工作在方式是工作在方式2和方式和方式3时,接收到的第时,接收到的第9位数据位数据.TI:发送结束中断标志位,用于指示一帧数据发送完否发送结束中断标志位,用于指示一帧数据发送完否,CPU置位,用置位,用户复位。户复位。.RI:接收中断标志位,用于指示一帧信息是否接收完。接收中断标志位,用于指示一帧信息是否接收完。CPU置位,用户复置位,用户复位。位。1212KMU FWJ电源控制寄存器电源控制寄存器PCON.SMOD:串行口波特系数控制位。在方式串行口波特系数控
12、制位。在方式1、2和和3时下,当时下,当SMOD=1时,通时,通信波特率可以提高一倍。信波特率可以提高一倍。GF1,GF0:用户可自行定义使用的通用标志位用户可自行定义使用的通用标志位PD:掉电控制位掉电控制位 0:常规方式;:常规方式;1:掉电方式。:掉电方式。振荡器停振;片内振荡器停振;片内RAM和和SRF不变;程序停止;只有复位能退出掉电状态。不变;程序停止;只有复位能退出掉电状态。IDL:待机控制位待机控制位 0:常规方式;:常规方式;1:待机方式。:待机方式。振荡器继续振荡;中断,定时器,串口有效;片内振荡器继续振荡;中断,定时器,串口有效;片内RAM和和SRF不变;程序不变;程序停
13、顿。停顿。中断或复位能退出待机,继续执行程序。中断或复位能退出待机,继续执行程序。1313KMU FWJ9.2.2 串行口的工作方式串行口的工作方式1 方式方式0(SM1=SM0=0)8位移位寄存器位移位寄存器I/O接收:接收:串行数据由串行数据由RXDRXD逐位移入逐位移入SBUFSBUF中中,高位高位先进先进;TXDTXD输出移位时钟,频率输出移位时钟,频率=fosc/12=fosc/12;每接收每接收 8 8位数据位数据RIRI就自动置就自动置1 1;需要用户复位需要用户复位RI。编程:编程:JNB RIJNB RI,$CLR RI CLR RI MOV A,SBUFMOV A,SBUF
14、接收前接收前,务必先置位务必先置位 REN=1 REN=1 允许接收数据。允许接收数据。发送:发送:SBUFSBUF中的串行数据由中的串行数据由RXDRXD逐位移出;逐位移出;TXDTXD输出移位时钟,频率输出移位时钟,频率=fosc/12=fosc/12;每送出每送出8 8位数据位数据 TITI就自动置就自动置1 1;需要用户复位;需要用户复位TITI。编程:编程:MOV SBUFMOV SBUF,A A JNB TI JNB TI,$CLR TI CLR TI1414KMU FWJ2 方式方式1(SM0=0,SM1=1)8位异步通信接口位异步通信接口接收:接收:置置REN=1REN=1后,
15、当确认起始位有效后,开始接收本帧其余后,当确认起始位有效后,开始接收本帧其余数据。在接收到第数据。在接收到第9 9数据位数据位(即停止位即停止位)时,必须同时满足两个条时,必须同时满足两个条件:件:RI=0RI=0和和SM2=0SM2=0或接收到的停止位为或接收到的停止位为1 1,才能把接收到的,才能把接收到的8 8位字位字符存入符存入SBUFSBUF中,把停止位送入中,把停止位送入RB8RB8中,并使中,并使RI=1RI=1,若上述条件不,若上述条件不满足,则这次收到的数据就被丢弃,不装入满足,则这次收到的数据就被丢弃,不装入SBUFSBUF中。中。接收中断标志接收中断标志RIRI必须由用户
16、清零。必须由用户清零。条件条件1 1:RI=0RI=0,SM2=0SM2=0,应保证,应保证SBUFSBUF为空为空条件条件2 2:SM2=0SM2=0或接收到的停止位为或接收到的停止位为1 1,保证接收到保证接收到一帧一帧数据数据1位起始位,位起始位,8位数据位,位数据位,1位停止位。位停止位。波特率可变。波特率可变。发送:发送:CPUCPU执行一条执行一条SBUFSBUF写入写入指令指令MOV SBUF,AMOV SBUF,A后,启动串行口后,启动串行口开始发送数据。波特率由定时器开始发送数据。波特率由定时器T1T1控制,发送完一帧数据时,发控制,发送完一帧数据时,发送完一帧信息后,发送电
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机课程设计 【单片机课程设计】第09章 MCS-51单片机的串行接口 单片机 课程设计 09 MCS 51 串行 接口
限制150内