单片机原理及应用-第7章-串口课件.ppt

上传人:飞****2 文档编号:72000393 上传时间:2023-02-08 格式:PPT 页数:50 大小:587KB
返回 下载 相关 举报
单片机原理及应用-第7章-串口课件.ppt_第1页
第1页 / 共50页
单片机原理及应用-第7章-串口课件.ppt_第2页
第2页 / 共50页
点击查看更多>>
资源描述

《单片机原理及应用-第7章-串口课件.ppt》由会员分享,可在线阅读,更多相关《单片机原理及应用-第7章-串口课件.ppt(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第七章 MCS-51单片机的串行接口MCS-51系列单片机的串行通信接口可以方便地实现与其他单片机之系列单片机的串行通信接口可以方便地实现与其他单片机之间、与间、与PC机之间的串行通信,也可用通信接口实现键盘输入、机之间的串行通信,也可用通信接口实现键盘输入、LED显示显示及其他的控制。及其他的控制。主要内容:主要内容:1.串行通信概述串行通信概述2.MCS-51单片机串行通信接口的结构单片机串行通信接口的结构3.MCS-51单片机串行通信的工作原理及其工作方式单片机串行通信的工作原理及其工作方式4.MCS-51单片机串行接口应用编程单片机串行接口应用编程重点:重点:MCS-51单片机串行接口

2、的工作原理及工作方式单片机串行接口的工作原理及工作方式 MCS-51单片机串行接口应用程序设计方法单片机串行接口应用程序设计方法第七章 MCS-51单片机的串行接口课本课本137页页第七章 MCS-51单片机的串行接口第一节第一节 串行通信概述串行通信概述 1.并行通信并行通信传送的数据的各位同时发送,并排传输,同时被接收。传送的数据的各位同时发送,并排传输,同时被接收。优点是传送速度快,缺点是传输线多。优点是传送速度快,缺点是传输线多。通信线路费用较高,并行传送适用于近距离、传送速度高的场合。通信线路费用较高,并行传送适用于近距离、传送速度高的场合。并行传送方式的物理信道为并行内总线或外总线

3、并行传送方式的物理信道为并行内总线或外总线 计算机1 GND 计算机2 GND并行通信2串行通信串行通信传送数据的各位按分时顺序一位一位地传送(即一位传送数据的各位按分时顺序一位一位地传送(即一位一位的发送和接收)。优点是传输线少,传送通道费用低,故适合长距一位的发送和接收)。优点是传输线少,传送通道费用低,故适合长距离数据传送。缺点是传送速度较低。离数据传送。缺点是传送速度较低。串行传送方式的物理信道为串行总线串行传送方式的物理信道为串行总线 计算机1 GND 计算机2 GND发送接收串行通信一一.传送方式传送方式:串行通信与并行通信:串行通信与并行通信八个人站成一排一起通过八个人站成一排一

4、起通过八个人站成一纵队一一通过八个人站成一纵队一一通过第七章 MCS-51单片机的串行接口 1.单单工工方方式式通通信信双双方方只只有有一一条条单单向向传传输输线线,只只允允许许数数据据由由一一方方发发送送,另一方接收。另一方接收。2.半半双双工工方方式式通通信信双双方方只只有有一一条条双双向向传传输输线线,允允许许数数据据双双向向传传送送,但但每每时时刻刻上上只只能能有有一一方方发发送送,另另一一方方接接收收,这这是是一一种种能能够够切切换换传传送送方方向向的的单单工方式工方式3.全双工方式全双工方式通信双方有两条传输线,允许数据同时双向传送,其通通信双方有两条传输线,允许数据同时双向传送,

5、其通信设备应具有完全独立的收发功能。信设备应具有完全独立的收发功能。二、串行通信的数据传送方向(串行通信制式)二、串行通信的数据传送方向(串行通信制式)第七章 MCS-51单片机的串行接口串串行行方方式式是是将将传传输输数数据据的的每每个个字字符符一一位位一一位位顺顺序序地地传传送送,按按位位组组成成字字符符。为为了了发发送送、接接收收信信息息,双双方方必必须须协协调调工工作作。要要保保证证发发送送的的信信号号正正确确被被接接收收必必须须采采用用同同步步技技术术。常常用用的的同同步步技技术术从从原原理理上上可可分分成成两两种种:同同步步串串行行传传输输(也称同步字符同步方式)和异步串行传输(也

6、称起止同步方式)。(也称同步字符同步方式)和异步串行传输(也称起止同步方式)。1异步通信方式异步通信方式异步传输以字符为单位进行数据传输,每个字符用起始位、停止位包起来。异步传输以字符为单位进行数据传输,每个字符用起始位、停止位包起来。异异步步方方式式实实现现简简单单,在在微微型型计计算算机机中中大大量量使使用用异异步步串串行行I/O方方式式,为为了了避避免免连连续续传传送送过过程程中中的的误误差差积积累累,每每个个字字符符都都要要独独立立确确定定起起始始和和结结束束(即即每每个字符都要重新同步个字符都要重新同步),字符和字符间还可能有长度不定的空闲时间。,字符和字符间还可能有长度不定的空闲时

7、间。有约定的帧格式;有约定的帧格式;发送与接收之间的同发送与接收之间的同步是利用每一帧的起、步是利用每一帧的起、止信号来建立的;止信号来建立的;双方用各自的时钟控双方用各自的时钟控制发送与接收制发送与接收三、三、串行通信的分类(串行通信的分类(串行通信的分类(串行通信的分类(同步通信和异步通信)同步通信和异步通信)第七章 MCS-51单片机的串行接口2.同步通信方式同步通信方式同同步步传传输输是是对对数数据据块块进进行行传传输输,数数据据块块中中包包含含许许多多连连续续的的字字符符,字字符间没有空闲。符间没有空闲。在在同同步步通通信信中中,在在数数据据或或字字符符开开始始传传送送前前用用同同步

8、步字字符符(SYNC)来来指指示示(常常约约定定l一一2个个),由由时时钟钟来来实实现现发发送送端端和和接接收收端端同同步步,当当检检测测到到规规定定的的同同步步字字符符后后,接接下下来来就就连连续续按按顺顺序序传传送送数数据据。同同步步字字符符是是一一特特定定的的二二进进制制序列,在传送的数据中不会出现序列,在传送的数据中不会出现同同步步通通信信方方式式由由于于不不采采用用起起始始和和停停止止位位,是是在在同同步步字字符符后后可可以以接接较较大的数据区,同步字符所占部分很小,因此有较高的传送效率。大的数据区,同步字符所占部分很小,因此有较高的传送效率。第七章 MCS-51单片机的串行接口 四

9、、波特率四、波特率 在通信中发、接双方有两次约定在通信中发、接双方有两次约定在通信中发、接双方有两次约定在通信中发、接双方有两次约定 字符格式字符格式字符格式字符格式帧格式帧格式帧格式帧格式 传送速率传送速率传送速率传送速率波特率波特率波特率波特率波波特特率率是是通通信信双双方方对对数数据据传传送送速速率率的的约约定定,表表示示每每秒秒钟钟传传送送二二进进制制数码的位数,单位是数码的位数,单位是bit/s。假假如如数数据据传传送送的的速速率率是是120个个字字符符秒秒,每每一一个个字字符符规规定定包包含含10个个位位(一个起始位、一个起始位、8个数据位和个数据位和1个停止位个停止位),则传送的

10、波特率为:,则传送的波特率为:101201200位秒位秒1200波特波特(bps)每一位的传送时间即为波特率的倒数。每一位的传送时间即为波特率的倒数。常用的波特率有常用的波特率有:(离散离散)19200/9600/4800/2400/1200/600/300/150/100/50,还有还有10M/100M课本课本147页页第七章 MCS-51单片机的串行接口第二节第二节MCS-51的串行通信接口的串行通信接口 一、一、MCS-51串行口结构及工作原理串行口结构及工作原理数据串行通信主要解决两方面的技术问题:数据传输;数据转换数据串行通信主要解决两方面的技术问题:数据传输;数据转换数据传输数据传

11、输-解决传送中的标准、帧格式、工作方式等问题。解决传送中的标准、帧格式、工作方式等问题。数据转换数据转换-解决传送数据串、并行的转换问题。解决传送数据串、并行的转换问题。由通用异步接收发送由通用异步接收发送器(器(UARTUART)完成。)完成。MCS-51单片机有一个可编程全双工异步串行通信接口(单片机有一个可编程全双工异步串行通信接口(单片机有一个可编程全双工异步串行通信接口(单片机有一个可编程全双工异步串行通信接口(UART)UART)(Universal(UniversalAsychronousAsychronousReceiver/TransmitterReceiver/Transm

12、itter)可同时发送、接收数据可同时发送、接收数据可同时发送、接收数据可同时发送、接收数据(Transmit/Receive),(Transmit/Receive),有四种工作方式,帧格式有有四种工作方式,帧格式有有四种工作方式,帧格式有有四种工作方式,帧格式有8 8、1010、1111位位位位,波特率波特率波特率波特率(Baudrate)(Baudrate)可设置。可设置。可设置。可设置。1.基基本本组组成成两两个个独独立立的的数数据据缓缓冲冲器器SBUF(一一个个用用作作接接收收,一一个个用用作作发发送送)以及发送控制器、接收控制器、输入移位寄存器和输出控制门等组成。以及发送控制器、接收

13、控制器、输入移位寄存器和输出控制门等组成。2.用户可访问的三个地址单元用户可访问的三个地址单元SBUF:两个两个SBUF共用一个地址共用一个地址99H。发送发送SBUF只写不读,接收只写不读,接收SBUF只读不写只读不写,由所用指令是发送还是接收来决定对哪个,由所用指令是发送还是接收来决定对哪个SBUF进行操作;进行操作;SCON:串行口控制寄存器串行口控制寄存器PCON:电源控制寄存器电源控制寄存器MCS-51串行接口的结构串行接口的结构课本课本137页页如两个人同名如两个人同名第七章 MCS-51单片机的串行接口串行口的内部结构串行口的内部结构课本课本137页页考虑中断考虑中断IP IEI

14、P IE第七章 MCS-51单片机的串行接口 (1)5l单片机通过串行数据接收引脚RxD(P3.0)和串行数据发送引脚TxD(P3.l)与外界进行通信.图中有两个物理上独立的接收/发送缓冲器SBUF,它们占用同一地址99H,可同时发送、接收数据.发送缓冲器SBUF只能写入/不能读出,CPU写SBUF,一方面修改发送寄存器,同时启动数据串行发送;接收缓冲器SBUF只能读出/不能写入,CPU读SBUF,就是读接收寄存器.(2)波特率发生器 可以有两种选择:1.定时器T1作波特率发生器,改变计数初值就可以改变串行通信的速率,称为可变波特率.(variable)2.以内部时钟的分频器作波特率发生器,因

15、内部时钟频率一定,称为固定波特率.(fixed)第七章 MCS-51单片机的串行接口串行通信的串行通信的传送过程传送过程shiftMOVA,SBUF串行数据串行数据CPUCPUSBUFSBUFshiftMOVSBUF,A并行数据并行数据甲方甲方(发送发送)乙方乙方(接收接收)TIRI返返回回第七章 MCS-51单片机的串行接口发送和接受过程的叙述发送和接受过程的叙述:甲方发送甲方发送时时,CPU执行执行指令指令MOVSBUF,A,就就启动了发送启动了发送过程过程,数据数据并行并行送入送入SBUF,在在发送时钟发送时钟shift的控制下由的控制下由低位到高位一位一位发送低位到高位一位一位发送;乙

16、方乙方在在接收时钟接收时钟shift的控制下的控制下,由由低位到高位顺序进入移位寄存器低位到高位顺序进入移位寄存器;甲方甲方一帧数据发送完毕一帧数据发送完毕,置位发送中断标志置位发送中断标志TI,该位可作为该位可作为查询标志查询标志(或引起中或引起中断断),CPU可再发送下一帧数据可再发送下一帧数据.乙方一帧乙方一帧数据到齐数据到齐,即接收缓冲器满即接收缓冲器满,置位接收中断标志置位接收中断标志RI,该位可作为该位可作为查询标查询标志志(或引起接收中断或引起接收中断),通过通过MOVA,SBUF,CPU将这帧数据将这帧数据并行读入并行读入.由上述可知由上述可知:1.甲、乙方的甲、乙方的移位时钟

17、频率应相同移位时钟频率应相同,即应具有即应具有相同的波特率相同的波特率,否则会造成数据否则会造成数据丢失丢失.2.发送方是发送方是CPU先发数据再查标志先发数据再查标志,接收方是接收方是先查标志先查标志CPU再收数据再收数据.3.接收接收/发送数据发送数据,无论是否采用中断方式工作无论是否采用中断方式工作,每接收每接收/发送一帧数据都发送一帧数据都必须必须用用指令对指令对RI/TI清清0,以备下一次收以备下一次收/发发(CLRTI,CLRRI)第七章 MCS-51单片机的串行接口D3D2D1D0D4D5D6SCOND7SM0SM1SM2RENTB8RB8TIRI(1)SM0、SM1:串行口工作

18、方式选择位,可选择四种工作方式:串行口工作方式选择位,可选择四种工作方式SM0SM1工作方式工作方式功功能能波波特特率率00方式方式0同步移位寄存器同步移位寄存器 foc/1201方式方式18位异步收发位异步收发 可可 变变10方式方式29位异步收发位异步收发foc/32或或foc/6411方式方式39位异步收发位异步收发可可 变变二、串行口控制寄存器二、串行口控制寄存器SCONSCON是一个可位寻址的专用寄存器,用来设定串行口的工作方式、控是一个可位寻址的专用寄存器,用来设定串行口的工作方式、控制串行口的接收发送以及状态标志。制串行口的接收发送以及状态标志。SCON的字节地址为的字节地址为9

19、8H,位地址位地址为为98H9FH。其格式如下:其格式如下:课本课本138页页第七章 MCS-51单片机的串行接口(2)SM2:为多机通信控制位:为多机通信控制位在工作方式在工作方式2和方式和方式3中:中:若若SM21:当接收到第:当接收到第9位数据(位数据(RB8)为)为1,才将接收到的前,才将接收到的前8位位数据装入数据装入SBUF,并置位,并置位RI;否则将接收到的数据丢弃。否则将接收到的数据丢弃。若若SM20:不论第:不论第9位数据(位数据(RB8)是否为)是否为1,都将接收到的前,都将接收到的前8位数位数据装入据装入SBUF,并置位,并置位RI。在方式在方式1中:若中:若SM21,则

20、只有接收到有效的停止位时,才置位,则只有接收到有效的停止位时,才置位RI。在方式在方式0中:必须使中:必须使SM20多机通信时,多机通信时,SM2必须置必须置1。双机通信时,通常使。双机通信时,通常使SM20。(3)REN:允许串行接收位。该位由软件置位或清零。允许串行接收位。该位由软件置位或清零。(4)TB8:在在工工作作方方式式2或或方方式式3时时,该该位位为为发发送送的的第第9位位数数据据,可可按按需需要要由由软软件件置置位位或或清清零零。在在许许多多通通信信协协议议中中,该该位位常常作作为为奇奇偶偶校校验验位位。在在MCS-5l多多机机通通信信中中,TB8的的状状态态用用来来表表示示发

21、发送送的的是是地地址址帧帧还还是是数数据据帧帧,TB80时,为地址帧,时,为地址帧,TB81时,为数据帧。时,为数据帧。第七章 MCS-51单片机的串行接口(5)RB8:在在工工作作方方式式2或或方方式式3时时,存存放放接接收收到到的的第第9位位数数据据,代代表表着着接接收收数数据据的的某某种种特特征征。例例如如,可可能能是是奇奇偶偶位位,或或为为多多机机通通信信中中的的地地址址数数据标识位。据标识位。在方式在方式0中,中,RB8未用。未用。在方式在方式1中,若中,若SM20,RB8是已接收到的停止位。是已接收到的停止位。(6)TI:发发送送中中断断标标志志位位,TI1表表示示帧帧发发送送结结

22、束束。其其状状态态既既可可供供软软件件查查询使用,也可申请中断。询使用,也可申请中断。TI都必须由软件清都必须由软件清0。(7)RI:接接收收中中断断标标志志,RI1时时,表表示示帧帧接接收收结结束束。其其状状态态既既可可供供软软件件查询使用,也可申请中断。查询使用,也可申请中断。RI也必须靠软件清也必须靠软件清0。注注意意:不不管管是是否否采采用用中中断断控控制制,数数据据发发送送前前必必须须用用软软件件将将TI清清零零;接接收数据后将收数据后将RI清零;清零;单片机复位时,单片机复位时,SCON中的所有位均为中的所有位均为0。第七章 MCS-51单片机的串行接口三、电源控制寄存器三、电源控

23、制寄存器PCON最高位最高位SMOD位和串行通信有关位和串行通信有关(了解了解)PCON主要字节地址为主要字节地址为87H,不能位寻址。只有最高位不能位寻址。只有最高位SMOD与串行口工与串行口工作有关。作有关。PCON的格式如下:的格式如下:PCOND7D6D5D4D3D2D1D0SMODGF1GF0PDIDL(1)只能只能字节字节寻址寻址,初始化时初始化时SMOD=0.复位时,复位时,SMOD0。(2)SMOD:串行口波特率倍增位串行口波特率倍增位Doublebaudratebit.在串行口工作方式在串行口工作方式1/2/3中中,波特率加倍位波特率加倍位=1时时,波特率加倍波特率加倍(MO

24、VPCON,#80H加倍加倍)=0时时,波特率不加倍波特率不加倍.(MOVPCON,#00H默认是不加倍的默认是不加倍的)(串行通信只用其中的最高位串行通信只用其中的最高位SMOD)课本课本139页页第七章 MCS-51单片机的串行接口GF1,GF0:用户可自行定义使用的用户可自行定义使用的通用标志位通用标志位PD:掉电方式控制位掉电方式控制位.=0:常规工作方式常规工作方式.=1:进入掉电方式进入掉电方式:振荡器停振振荡器停振片内片内RAM和和SRF的值保持不变的值保持不变P0P3口维持原状口维持原状程序停止程序停止只有复位能使之退出掉电方式只有复位能使之退出掉电方式.PCOND7D6D5D

25、4D3D2D1D0SMODGF1GF0PDIDLIDL(IdleModebit)待机方式待机方式(空闲方式空闲方式)控制位控制位.=0:常规工作方式常规工作方式.=1:进入进入待机方式待机方式:振荡器继续振荡振荡器继续振荡中断、定时器、串口功能继续有效中断、定时器、串口功能继续有效片内片内RAM和和SRF保持不变保持不变CPU状态保持状态保持、P0P3口维持原状口维持原状程序停顿程序停顿.中断和复位能退出待机中断和复位能退出待机,继续后面的程序继续后面的程序.第七章 MCS-51单片机的串行接口MCS-51单单片片机机的的串串行行口口可可编编程程选选择择四四种种工工作作方方式式,其其中中方方式

26、式0主主要要用用于扩展并行输入输出口,串行通信时一般使用方式于扩展并行输入输出口,串行通信时一般使用方式1、2或或3。一、方式一、方式0(SM0=0,SM1=0)串行口作为串行口作为同步移位寄存器同步移位寄存器使用使用数据传输数据传输波特率固定为波特率固定为foc/12。串行数据由串行数据由RXD(P30)端输入输出端输入输出(数据线数据线)同步移位脉冲由同步移位脉冲由TXD(P31)端输出(时钟信号线)端输出(时钟信号线)数数据据的的发发送送接接收收以以8位位为为一一帧帧,低低位位在在前前,无无起起始始位位、奇奇偶偶位位及及停停止止位位。其帧格式为:其帧格式为:第三节第三节MCS-51串行通

27、信接口的工作方式串行通信接口的工作方式 在方式在方式在方式在方式0 0下,常用于扩展下,常用于扩展下,常用于扩展下,常用于扩展I/OI/O口。口。口。口。RXDTXDAB74LS164CLK QAQBQCQDQEQFQGQH执行一条写执行一条写SBUF指令就开始指令就开始发送发送课本课本140页页第七章 MCS-51单片机的串行接口二、方式二、方式1(SM0=0,SM1=1)串行口工作在方式串行口工作在方式1时,是作为时,是作为10位异步通信接口位异步通信接口.由由TXD端发送数据,端发送数据,RXD端接收数据。端接收数据。发发送送接接收收的的一一帧帧数数据据包包括括10位位:1位位起起始始位

28、位,用用0来来标标识识,8位位数数据据位位(低低位位在前在前),1位停止位,用位停止位,用1来标识。其帧格式为:来标识。其帧格式为:1.发送过程发送过程当当CPU执执行行任任何何一一条条写写入入SBUF的的指指令令后后,便便启启动动串串行行口口发发送送,发发送送的的数数据据由由TXD端端输输出出。串串行行接接口口能能自自动动地地在在数数据据的的前前后后插插入入一一位位起起始始位位和和一一位位停停止止位位,在在发发送送移移位位脉脉冲冲的的作作用用下下依依次次从从TXD端端发发送送,发发送送完完一一帧帧信信息息时时。发送中断标志发送中断标志TI置置1,请求中断。,请求中断。方式方式1下的传送波特率

29、是可变的取决于定时器下的传送波特率是可变的取决于定时器T1的溢出速率,用软件设定。的溢出速率,用软件设定。2.接收过程接收过程当允许串行输入位当允许串行输入位REN置置1后,后,CPU便以所选波特率的便以所选波特率的16倍速率采样倍速率采样RXD端电平。在没有信号到来之前,端电平。在没有信号到来之前,RXD端的状态为端的状态为1。当在。当在RXD端检测端检测到从到从1到到0的负跳变时,开始接收过程。的负跳变时,开始接收过程。16分频计数器的分频计数器的16个状态把接收每个状态把接收每位信息的时间分成位信息的时间分成16份,在每个位时间的第份,在每个位时间的第7、8、9个计数状态个计数状态,从从

30、RXD端端采样三次,至少两次相同的值才被确认,以确保输入的数据准确无误。采样三次,至少两次相同的值才被确认,以确保输入的数据准确无误。第七章 MCS-51单片机的串行接口当一帧数据接收完毕,以下两个条件同时满足:当一帧数据接收完毕,以下两个条件同时满足:(1)RI0,即上一帧数据接收完成时,即上一帧数据接收完成时,RI1的中断请求已被响应,的中断请求已被响应,SBUF中的数据已被取走;中的数据已被取走;(2)SM20或接收到停止位为或接收到停止位为1(方式方式1时停止位进入时停止位进入RB8)。)。则这次接收才有效,将则这次接收才有效,将8位数据装入接收缓冲器位数据装入接收缓冲器SBUF,停止

31、位装入停止位装入RB8,并将,并将RI置置1,申请中断。否则数据将丢失。,申请中断。否则数据将丢失。三、方式三、方式2和方式和方式3串行口工作在方式串行口工作在方式2和方式和方式3时,均为时,均为11位异步通信接口。位异步通信接口。由由TXD发送发送,RXD接收接收。发发送送接接收收的的一一帧帧信信息息由由11位位组组成成;由由1位位起起始始位位(0),8位位数数据据位位(低低位位在在前前),1位位可可编编程程位位(第第9数数据据位位)和和1位位停停止止位位(1)。发发送送时时,可可编编程程位位(TB8)可可设设置置为为0或或1,也也可可将将奇奇偶偶位位装装入入TB8,从从而而进进行行奇奇偶偶

32、校校验验;接接收收时时,可可编程位送入编程位送入SCON中的中的RB8。第七章 MCS-51单片机的串行接口方式方式2和方式和方式3的工作原理类同。唯一的区别仅在于:的工作原理类同。唯一的区别仅在于:方式方式2的波特率为的波特率为foc32或或foc64,而方式而方式3的波特率是可变的,取决的波特率是可变的,取决于定时器于定时器T1的溢出率。的溢出率。3.方式方式2、方式、方式3时第时第9位数据的用法位数据的用法(1)用第用第9位数据作奇偶校验位位数据作奇偶校验位方方式式2、方方式式3也也可可以以像像方方式式1一一样样用用于于点点对对点点的的异异步步通通信信。在在数数据据通通信信中中由由于于传

33、传输输距距离离较较远远,数数据据信信号号在在传传送送过过程程中中会会产产生生畸畸变变,从从而而引引起起误误码。通常可在通信软件上采取纠错措施。码。通常可在通信软件上采取纠错措施。例如将作为第例如将作为第9位数据作奇偶校验位,将其置入位数据作奇偶校验位,将其置入TB8位一同发送。位一同发送。第七章 MCS-51单片机的串行接口MOVA,R0MOVC,PMOVTB8,C 如将作为第如将作为第9位数据作奇偶位数据作奇偶校验位,将其置入校验位,将其置入TB8位一位一同发送。同发送。在接收端的接收程序将数据在接收端的接收程序将数据的奇偶校验值与的奇偶校验值与RB8进行比进行比较较MOVA,SBUFMOV

34、C,P.发送端发送一个数据字节及其奇偶校验位的程序段如下:发送端发送一个数据字节及其奇偶校验位的程序段如下:TT:MOVSCON,80H;串口方式;串口方式2MOVA,DATA;取待发送的数据;取待发送的数据MOVC,PSW.0;奇偶标志位置入;奇偶标志位置入TB8中中MOVTB8,CMOVSBUF,A;启动一次发送,数据连同奇;启动一次发送,数据连同奇;偶校验位一块被发送;偶校验位一块被发送LOOP:JBCTI,NEXT;SJMPLOOPNEXT:第七章 MCS-51单片机的串行接口MOV SCONMOV SCON,#90H#90H ;方式;方式2 2允许接收允许接收LOOPLOOP:JBC

35、 RIJBC RI,RECN RECN ;等待接收等待接收 SJMP LOOP SJMP LOOP RECNRECN:MOV AMOV A,SBUF SBUF ;读入接收的一帧数据读入接收的一帧数据 JB PSW.0JB PSW.0,ONE ONE ;判断接收到的;判断接收到的A A中中1 1的个数的奇偶值的个数的奇偶值 JB RB8JB RB8,ERR ERR ;判断接收到的奇偶标志位的值判断接收到的奇偶标志位的值 SJMP REXT SJMP REXT ONE ONE:JNB RB8,ERR JNB RB8,ERR REXT:REXT:;接收正确处理接收正确处理 ERR:ERR:;接收有错

36、处理接收有错处理方方式式2、方方式式3的的发发送送过过程程中中,将将数数据据和和附附加加在在TB8中中的的奇奇偶偶校校验验位位一一块块发发送送出出。因因此此,作作为为接接收收的的一一方方应应设设法法取取出出该该奇奇偶偶位位进进行行核核对对,相相应应的的接收程序段应为:接收程序段应为:第七章 MCS-51单片机的串行接口2)用第九位数据作多机通信的联络位用第九位数据作多机通信的联络位计计算算机机与与计计算算机机的的通通信信不不仅仅限限于于点点对对点点的的通通信信,还还会会出出现现一一机机对对多多机机间间的的通通信信,构构成成计计算算机机网网。例例如如有有一一种种比比较较特特殊殊的的总总线线形形式

37、式主主从从式式的的网网络络,即即在在多多台台计计算算机机中中有有一一台台是是主主机机,其其余余的的为为从从机机,从从机机要要服服从从主主机机的的调调度度、支支配配。MCS-51单单片片机机的的串串行行口口方方式式2、方方式式3就就适适合合于于这这种种主主从从式式的通信结构。如图所示。的通信结构。如图所示。返回返回比如老师监考学生考试,学生之间不许比如老师监考学生考试,学生之间不许交头接耳交头接耳第七章 MCS-51单片机的串行接口第第9位位数数据据怎怎样样用用于于多多机机通通信信呢呢?关关键键在在于于使使用用SM2位位和和接接收收到到的的第第9个个附加数据位附加数据位(接收后放在接收后放在RB

38、8中中)的配合。的配合。例例如如,通通信信各各方方约约定定如如下下:主主机机向向从从机机发发送送地地址址信信息息,其其第第9位位数数据据必必须须为为1,而向从机发送数据信息包括命令时,其第,而向从机发送数据信息包括命令时,其第9位数据规定为位数据规定为0。从从机机在在建建立立与与主主机机通通信信之之前前,处处于于对对通通信信线线路路的的监监听听状状态态。在在监监听听状状态态下下必必须须使使SM21,此此时时只只能能收收到到主主机机发发出出的的地地址址信信息息(第第9位位为为1),非非地址信息被丢失。地址信息被丢失。从从机机收收到到地地址址后后应应进进行行识识别别,是是否否主主机机呼呼叫叫本本站

39、站,如如果果地地址址符符合合,确确认认呼呼叫叫本本站站,此此时时从从机机解解除除监监听听状状态态,使使SM20,同同时时把把本本站站地地址址发发回回主主机机作作为为应应答答,只只有有这这样样才才能能收收到到主主机机发发送送的的有有效效数数据据。其其它它从从机机由由于于地地址不符,仍处于监听状态,保持址不符,仍处于监听状态,保持SM21,所以无法接收主机的数据。所以无法接收主机的数据。主主机机收收到到从从机机的的应应答答信信号号,比比较较收收与与发发的的地地址址是是否否相相符符,如如果果不不符符,则则发发出出复复位位信信号号(例例如如:发发任任一一数数据据,但但TB81);如如果果地地址址相相符

40、符,则则清清除除TB8,正式开始发送数据和命令。正式开始发送数据和命令。从从机机收收到到复复位位命命令令后后再再次次回回到到监监听听状状态态,再再置置SM21,否否则则正正式式开开始始接收数据和命令。接收数据和命令。比如点名比如点名第七章 MCS-51单片机的串行接口总结:串行口四种工作方式(难点)工作工作方式方式0SM0SM1=00(常用常用)(记忆记忆)串行口作为串行口作为同步移位寄存器同步移位寄存器使用使用,数据传输波特率固定为数据传输波特率固定为fosc/12,串行数串行数据由据由RxD(P3.0)输入输出输入输出,同步移位脉冲由同步移位脉冲由TxD(P3.1)输出输出,数据的发送和接

41、受以数据的发送和接受以8位为一帧数据位为一帧数据,低位在前低位在前,高位在后高位在后,无起始位、奇偶位和停止位无起始位、奇偶位和停止位.1.发送发送:SBUF中的中的串行数据串行数据由由RxD逐位移出逐位移出;TxD输出移位时钟输出移位时钟,频率频率=fosc/12;每送出每送出8位数据位数据,TI就自动置就自动置1;需要用需要用软件对软件对TI清零清零(CLRTI)2.接收接收:串行串行数据由数据由RxD逐位移入逐位移入SBUF中中;TxD输出移位时钟输出移位时钟,频率频率=fosc/12;每接收每接收8位数据位数据,RI就自动置就自动置1;需要用需要用软件对软件对RI清零清零(CLRRI)

42、第七章 MCS-51单片机的串行接口3.经常配合经常配合“串入并出串入并出的移位寄存器芯片的移位寄存器芯片74LS164/CD4094”“并入串出并入串出的移位寄存器芯片的移位寄存器芯片74LS165/CD4014”一起使用一起使用,达到达到扩展一个扩展一个I/O口口使用的目的使用的目的.4.方式方式0工作时工作时,多用多用查询方式编程查询方式编程:发送发送:MOVSBUF,A接收接收:JNBRI,$JNBTI,$CLRRICLRTIMOVA,SBUF返回返回第七章 MCS-51单片机的串行接口5.复位时复位时,SCON=00H缺省值缺省值:方式方式06.接收前接收前,务必先务必先置位置位RE

43、N=1,允许接收数据允许接收数据,因为系统复位后因为系统复位后,SCON.4=0SM0SM1SM2RENTB8RB8TIR1SCON7.串行口方式0的应用(经常用到),串行口常用工作方式0扩展出并行I/O口,而工作方式1、2、3则常用于串行通信.A AB BCLKCLKh g f e d c b ah g f e d c b aCLRCLRA AB BCLKCLKCLRCLRA AB BCLKCLKCLRCLR+5V+5V74LS16474LS16474LS164h g f e d c b ah g f e d c b ah g f e d c b ah g f e d c b a+5V+5V

44、共阳共阳LED LED 数码管数码管VccVccTxDTxDRxDRxD51单片单片机机74LS164是是串入并出串入并出芯片芯片;74LS165是是并入串出并入串出芯片芯片第七章 MCS-51单片机的串行接口介绍介绍:共阳共阳LED数码管数码管公共端公共端(字位字位)接高电平接高电平,笔划笔划(字段字段)置为低电平置为低电平就被点亮了就被点亮了h g f e d c b ah g f e d c b a1 1 1 1 0 0 0 0 0 00 0 0 0 0 00C0H=“0”0C0H=“0”比如要显示比如要显示“0”须令须令abcdef为为“0”电平电平,gh为为“1”电平电平.再再比如要

45、显示比如要显示“3”须令须令abcdg为为“0”电平电平,efh为为“1”电电平平.1 1 0 0 1 1 1 1 0 0 0 00 0 0 00B0H=“3”0B0H=“3”共阳极共阳极h g f e d c b ah g f e d c b aa ab bc cd dg ge ef fh h第七章 MCS-51单片机的串行接口例例1:利用串行口利用串行口工作方式工作方式0扩展出扩展出8位并行位并行I/O口口,驱动共阳驱动共阳LED数码管数码管显示显示09.第七章 MCS-51单片机的串行接口 根据上图编写的通过根据上图编写的通过串行口串行口和和74LS164驱动驱动共阴共阴LED数码管数码

46、管显示显示0-9数字数字的程序的程序(查表查表):ORG 0000HORG 0000HLJMP MAINLJMP MAINORG 0030HORG 0030HMAIN:MOV R0,#00HMAIN:MOV R0,#00H MOV SCON,#00H MOV SCON,#00H CLR ES CLR ESDISPLAY:MOV A,R0DISPLAY:MOV A,R0MOV DPTR,#TABLEMOV DPTR,#TABLE MOVC A,A+DPTRMOVC A,A+DPTR MOV SBUF,A;MOV SBUF,A;发送发送 JNB TI,$JNB TI,$CLR TICLR TILC

47、ALL DELAYLCALL DELAYINC R0INC R0 CJNE R0,#0AH,DISPLAYCJNE R0,#0AH,DISPLAYSJMP MAINSJMP MAIN第七章 MCS-51单片机的串行接口TABLE:DB3FH,06H,5BH,4FH,66H,6DHDB7DH,07H,7FH,6FHDELAY:MOVR6,#200D1:MOVR5,#200DJNZR5,$DJNZR6,D1RETEND第七章 MCS-51单片机的串行接口工作工作方式方式1SM0SM1=01方式方式1是是10位位(记忆记忆)为一帧为一帧的异步串行通信方式的异步串行通信方式,包括包括1个起始位个起始位

48、,8个数据位个数据位和和1个停止位个停止位,波特率可变波特率可变,由由TxD端发送数据端发送数据,RxD端接受数据端接受数据.(和方式和方式0不一不一样样)串行口控制寄存器串行口控制寄存器SCONSM0SM1SM2RENTB8RB8TIR1SCON01010000(1)SM0/SM1:串行口工作方式选择位串行口工作方式选择位.01:方式方式1,10位位UART(1+8+1位位)(2)SM2:串行口多机通信控制位串行口多机通信控制位,作为方式作为方式2、3的附的附加控制位加控制位,此处不用此处不用,可写成可写成“0”(3)REN:串行口接收允许位串行口接收允许位.REN=1允许接收允许接收(4)

49、TB8/RB8/TI/RI等位由运行中间的情况决定等位由运行中间的情况决定,可先写成可先写成“0”第七章 MCS-51单片机的串行接口NOTE:1.常用于串行通讯常用于串行通讯,除发除发/收收8位数据外位数据外,在在D0位前位前有一个有一个起始位起始位“0”;在在D7位后位后有一个有一个停止位停止位“1”.2.方式方式1工作时工作时:发送端发送端自动添加自动添加一个一个起始位起始位和一个和一个停止位停止位;接收端接收端自动去掉自动去掉一个一个起始位起始位和一个和一个停止位停止位.3.波特率可变波特率可变用用定时器定时器T1,以工作方式以工作方式2,8位自动重新加载位自动重新加载做为波特率发做为

50、波特率发生器生器(系统规定的系统规定的),可以省去重新加载初始值的麻烦和误差可以省去重新加载初始值的麻烦和误差.4.初值初值的计算的计算:波特率波特率=(2SMOD/32)T1的溢出率的溢出率记忆记忆溢出率溢出率:溢出周期的倒数溢出周期的倒数,即即:T1溢出一次所需时间的倒数溢出一次所需时间的倒数.假定计数初假定计数初值为值为X,则计数溢出周期为则计数溢出周期为:(2n-x)12/f 12/f 即即(2(2n n-x)T-x)T也就是定时器的也就是定时器的定时时间定时时间则则初值初值X=2n-2SMOD fosc32 波特率波特率 12第七章 MCS-51单片机的串行接口例例2:要求用要求用T

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁