单片机原理及应用第九章.ppt
《单片机原理及应用第九章.ppt》由会员分享,可在线阅读,更多相关《单片机原理及应用第九章.ppt(94页珍藏版)》请在三一办公上搜索。
1、第9章 MCS-51单片机的串行口,9.1 数据通信基础知识9.2 MCS-51单片机的串行口结构与工作原理9.3 串行口的控制寄存器9.4 串行口的工作方式9.5 单片机与PC机的通信,9.1 数据通信基础知识,.数据通信的概念不同的独立系统利用线路(传输介质)互相交换信息(数据)称之为通信。而构成整个通信的线路(传输介质)称之为网络。如果交换信息的系统是计算机系统的话,则称之为计算机网络(Computer Network)通信。计算机通信也称为数据通信,典型的数据通信系统可用下面的等式来描述:数据通信=数据处理+数据传输为了解决数据是如何传输的,数据是如何编码的,数据通信是以什么样的规则去
2、管理和控制的等问题,可以把数据通信划分为三个基本部分:传输、通信接口和通信处理。,通信协议1.通信协议的概念 数据通信是机器之间的通信,所以和其它通信方式一样,应该在通信系统中规定一个统一的通信标准,即通信的内容是什么,如何通信,何时通信,都必须在通信的实体之间达成大家都能接受的协定,这些协定就被称为通信协议。也可以将协议定义为监督和管理两个实体之间的数据交换的一整套规则。简单地说,通信协议是对数据传送方式的规定,包括数据格式和数据位的定义等。,通信协议由以下三个部分组成:语法:规定通信双方彼此“如何讲”,即确定协议元素的格式,包括数据格式和信号电平。语义:规定通信双方彼此“讲什么”,即确定协
3、议元素的类型和内容,包括用于相互协调及差错处理的信息。定时关系:规定事件执行的顺序,即确定通信进程中通信的状态变化,包括速度匹配和时序。如规定正确的应答关系等。,2.串行通信协议 串行通信协议有同步协议和异步协议两种。异步串行通信协议规定字符数据的传输格式,主要有下述内容:起始位。通信线上没有数据传送时处于逻辑“1”的状态(又称mark)。当发送设备要发送一个字符数据时,首先发出一个逻辑“0”信号,这个逻辑低电平就是起始位(又称space状态)。起始位所起的作用就是使设备同步,通信双方必须在传送数据位前协调同步。数据位。当接收设备收到起始位后,紧接着就会收到数据位。80C51串行口采用8位或9
4、位数据传送。,奇偶校验位。数据位发送完之后,便可以发送奇偶校验位。奇偶校验用于有限差错检测,通信双方应约定一致的奇偶校验方式。停止位。在奇偶或数据位(当无奇偶校验时)之后发送的是停止位。停止位是一个字符数据的结束标志,可以是1位、1.5位或2位的低电平。帧(frame)。从起始位开始到停止位结束的全部信息位的内容称为一帧,帧在异步串行通信中是一个字符的完整通信格式,所以我们可将异步通信的字符格式称之为帧格式,即每个字符均是独立传送的一帧。,在异步串行通信中,一个字符代码在通信线路上的传输格式如图9.1所示。,(A)异步通信格式,(B)字符E(ASCII码为45H)的传送波形,图9.1 异步串行
5、通信的传送格式,波特率设置。通信线路上传送的所有位信号都保持一致的信号持续时间,每一位的宽度都由数据传送速率确定,而传送速率是以每秒传送多少个二进制位来度量的,这个速率称作波特率(Baud Rate),其单位为bps(bits per second,位/秒)。例如,如果数据以每秒300个二进制位在通信线路上传输,那么这个传输速率就是300波特。在串行通信中,二进制信息位的发送与接收分别由发送端和接收端的时钟脉冲进行定时控制,时钟频率越高,则波特率也高,串行通信的传输率快,反之则慢。在串行通信中经常使用的标准波特率在RS-232C标准中已有规定,如1200、2400、4800、9600bps等,
6、使用时可根据实际需要加以选择。,数据传输模式1.并行与串行传输 并行通信(Paralled Communication):并行通信是将待传送字符的二进制代码中的各数据位在并行信道上同时传送的方式。并行传输时,一次传输一个字符,这种方式速度快,效率高,但所需的数据线数目较多(等于所传送数据的字长),而且在传送过程中容易因线路的因素(如信号衰减问题、信号间相互串音干扰问题)导致信息传送发生错误。因此并行通信的控制比较复杂,传送成本较高,仅适用于传送距离较短的场合,如系统内的信息传送等。,串行通信(Serial Communication):串行通信是将待传送字符中的各数据位在一条信道上以位为单位,
7、按时间及位的顺序依次进行传送的方式。显然,串行传送速度低于并行传送,但只需一条传输信道,传送控制较为简单,传输成本较低,适用于传送距离较长的场合,加上驱动后其传输距离可以从几米到几千公里。串行通信又可分为同步和异步两种方式。,2.同步和异步传输 异步传输方式:在异步传输方式下,传输数据是以字符为单位的,当发送一个字符代码时,字符前面要加一个“起”信号,其长度为1个码元,极性为”0”,即空号极性;字符后面要加一个“止”信号,其长度为1、1.5或2个码元(在国际NO.2码时用1.5码元长),极性为“1”,即传号极性。加上“起”、“止”信号后,即可区分出所传输的字符。待传送的字符串中的每个字符均加上
8、起始位、停止位、校验位等控制信息位,构成一个字符帧。在传送时,以串行方式将字符帧一个一个地传送出去,字符帧与字符帧之间可以是连续发送,也可以是间断的单独发送,两字符之间的间隔长度可以不确定。异步传输方式适用于1200bps以下的低速传输,且实现起来比较简单。异步传输方式的优点是收发双方不需要严格的位同步,缺点是每个字符都要按字符帧的格式传输,传输效率就比较低。,同步传输方式:在同步传输方式下,收发双方必须建立准确的位定时信号,正确地区分每位数据信号。在该传输方式中,每个字符不增加任何附加位,而且是连续发送。但在传输中,数据要分成组(或帧),一组含多个字符代码或多个独立码元(位),为了使收发双方
9、建立和保持同步,在每组的开始和结束需加上规定的码元序列,作为标志序列,标志序列的码型因传输规程不同而异。在发送数据之前,必须先发送该标志序列,接收端通过检测出该标志序列来实现同步。同步传输方式适用于2400bps以上的数据传输,不需加起、止信号,因此传输效率高,但是实现起来比较复杂。,双工通信方式 双工通信方式是对相互通信的两台通信设备间数据流向的描述,或者说是对一台通信设备执行收发操作能力的描述。双工包括全双工、半双工和单工。,1.单工(Simplex)形式:单工形式的数据传送是单向的,通信双方中一方固定作为发送端,而另一方则固定作为接收端,单工方式通信时仅需一根数据线,连接图如图7.2所示
10、。图7.2 单工通信形式,2.全双工(Full-duplex)形式:全双工形式的数据传送是双向的,通信双方中的任何一方均可同时发送和接收数据,这就需要两根数据线,连接图如图7.3所示。,图7.3 全双工通信形式,3.半双工(Half-duplex)形式:半双工形式的数据传送也是双向的,通信双方中的任何一方均可发送和接收数据,但它任何时刻只能由其中的一方作为发送端,而另一方作为接收端。任何一方均不能同时发送和接收数据。采用该形式进行串行通信时,可以使用一对数据线,也可使用两条数据线。连接图如图7.4所示。图7.4半双工通信形式,串行通信接口电路 能够完成串行通信的接口电路:通用异步收发器UART
11、(Universal Asynchronous Receiver Transmitter,简称UART),可用来完成异步串行通信;通用同步收发器USRT(Universal Synchronous Receiver Transmitter,简称USRT),它能完成同步串行通信;通用同步/异步收发器USART(Universal Synchronous/Asynchronous Receiver Transmitter,简称USART),它既可完成同步串行通信又可完成异步串行通信。,所有的串行通信接口都是以并行数据形式与CPU接口,而以串行数据形式与外部通信线路接口。其基本功能是从外部通信线路接
12、收串行数据信息,并转换成并行数据后传送给CPU;或者由CPU将内部的并行数据信息转换成串行数据信息输出给外部通信线路进行串行通信。MCS-51单片机的串行口是一个全双工的异步串行通信接口。一般全双工串行通信接口电路至少包括一个发送器和一个接收器。它们分别有数据寄存器和移位寄存器,以便串行口实现CPU并行输出串行发送,串行接收CPU并行接收的转换功能。,9.1.6 串行通信总线标准1.串行通信总线标准接口 所谓标准接口,就是明确定义若干信号线,使接口电路标准化、通用化。借助串行通信标准接口,不同类型的数据通信设备可以很容易实现它们之间的串行通信连接。串行通信接口标准经过使用和发展,目前已经有比较
13、成熟的几种,这几种都是在RS-232标准的基础上经过改进而形成的,例如:RS-232C、RS-449、RS-422、RS-423和RS-485,20mA电流环等。,RS-232C是用二进制方式进行数据交换的数据通信设备(DCE)与数据终端设备(DTE)之间的接口技术标准。RS-232C是由美国电子工业协会(Electronic Industry Association 简称EIA)与BELL等公司一起开发,并在1969年正式公布的通信协议,它是一种串行物理接口标准。RS-232C总线标准的全称是EIA-RS-232C标准,RS是英文“推荐标准”的缩写,232为标识符号,C表示修改次数(C 表示
14、RS232在1969年的最新一次修改,在这之前,有RS232B、RS232A)。,这个标准对串行通信接口的有关问题,如信号线功能,按位串行传输的电气和机械特性都作了明确规定。它适合于数据传输速率在020000bps范围内的通信,适合于短距离或带调制解调器的通信场合。由于通信设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在计算机通信接口中广泛采用。,2.RS-232C总线标准的电气特性和信号接口 电气特性 RS-232C标准对电气特性、逻辑电平和各种信号线功能都作了规定。在TxD和RxD上:逻辑1(MARK)=-3V-15V 逻辑0(SPACE)=+315V 在R
15、TS、CTS、DSR、DTR和DCD等控制线上:信号有效(接通,ON状态,正电压)=+3V+15V 信号无效(断开,OFF状态,负电压)=-3V-15V,以上规定说明了RS-323C标准对逻辑电平的定义。对于数据,逻辑“1”的电平低于-3V,逻辑“0”的电平高于+3V;对于控制信号,接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在(315)V之间。,EIA-RS-232C与TTL转换:E
16、IA-RS-232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,如MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。MAX232芯片可完成TTL和EIA的双向电平转换。,信号接口 RS-232C总线标准规定了21个信号和25个引脚,包括一个主通道和一个辅助通道,在多数情况下主要使用
17、主通道。对于一般双工通信,仅需几条信号线就可以实现,包括一条发送线,一条接收线和一条地线。与RS-232C相匹配的D 型连接器有BD-25、DB-15和DB-9,其引脚定义各不相同。常用的有BD-25和DB-9两种连接器。,DB-25连接器 DB-25连接器定义25根信号线,分成4组:异步通信的9个电压信号(含信号地SG),引脚编号为2、3、4、5、6、7、8、20、22。20mA电流环信号9个,引脚编号为12、13、14、15、16、17、19、23、24(注意,20mA电流环信号仅IBM PC和IBM PC/XT机提供,至AT机及以后,已不支持)。空脚6个,引脚编号为9、10、11、18、
18、21、25。保护地(PE)1个,作为设备接地端,引脚编号为1。DB-25连接器引脚排列如图7.5所示。图7.5 DB-25连接器引脚排列图,RS-232C规定标准接口有25条线,4条数据线,11条控制线,3条定时线,7条备用和未定义线,而常用的只有9条,它们可分为以下3类。联络控制信号线:数据装置准备好(DSR)有效状态时(ON),表明Modem处于以使用状态。数据终端准备好(DTR)有效状态时(ON),表明数据终端可以使用。这两个信号有时连接到电源上,一上电就立即有效。这两个设备状态信号有效只表示设备本身可用,能否开始进行通信要由下面的控制信号决定。,请求发送(RTS)用来表示DTE请求DC
19、E发送数据,即当终端要发送数据时,使该信号有效(ON状态),向Modem请求发送,它用来控制Modem是否要进入发送状态。允许发送(CTS)用来表示DCE准备好接收DTE发来的数据,是对请求发送信号RTS的响应信号。当Modem已准备好接收终端传来数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线TXD发送数据。,接收线信号检出(RLSD)用来表示DCE已接通通信链路,告知DTE准备接收数据,此线也叫做数据载波检出(DCD)线。振铃指示(RI)当Modem收到交换台送来的振铃呼叫信号时,使该信号有效,通知终端,已被呼叫。,数据发送与接收线:发送数据(TXD)通过TXD终端将串行数据发送
20、到Modem。接收数据(RXD)通过RXD线,终端接收从Modem发来的串行数据。地线:有SG、PE两根信号地和保护地,无方向。,DB-9连接器 目前已经很少有人使用25针D型连接器了,一般都使用9针D型连接器。DB-9连接器引脚排列如图7.6所示。图7.6 DB-9连接器引脚排列图,9针和25针连接器间的对应关系如表7.2所示,9.2 MCS-51单片机的串行口结构与工作原理,89C51单片机中有一个全双工的串行通信接口,它既可作为串行异步通信(UART)接口,也可以作为同步移位寄存器方式下的串行扩展接口。,串行口结构 1.串行口的基本功能 单片机串行口必须具备以下功能:串/并转换功能;串行
21、数据的格式化功能;可靠性功能;串行口与数据通信设备DCE(Date Communication Equipment)之间的握手联络功能。所有为实现上述功能而设计的硬件逻辑电路集成在一起,作为单片机实现串行异步通信的部件,并被称之为单片机的串行口。,2.串行口的结构 就MCS-51系列单片机而言,其串行口的主要功能是由图9.7所示的寄存器结构的通用异步收发器(UART)来实现的。它是一个全双工的异步串行通信接口,通过它既可以发送数据也可以接收数据。其硬件结构主要由发送器部分和接收器部分组成。图9.7 MCS-51串行口UART结构,接收器部分:接收部分主要由一个数据接收缓冲寄存器(接收SBUF)
22、和一个输入移位寄存器构成,用于实现接收数据传输格式的拆装和串/并格式转换功能。由于在数据接收缓冲寄存器之前设置了一个移位寄存器,从而构成了串行接收的双缓冲结构。以防止在数据接收过程中出现帧重叠错误。即当下一帧数据来时,前一帧数据还未读走情况出现。,发送器部分:发送器部分仅由一个具有移位功能的发送缓冲寄存器(发送SBUF)组成,用来实现发送数据的并/串格式转换和发送标准格式的组装功能。其结构与接收器部分不同的原因在于:在数据发送过程中单片机是主动的,它会根据发送过程是否完成来决定是否继续发送下一帧数据,从而避免了传送过程中帧重叠错误的发生。因此,对于发送器部分来说只需采用单缓冲结构即可,同时也可
23、提高数据发送的速度。SBUF是数据接收缓冲寄存器和数据发送缓冲寄存器的总称,两者共用一个地址为99H。,串行口的工作原理 单片机通过串行口进行串行异步通信时,其接收和发送过程如下:1.接收 串行口按软件设定的工作方式和波特率,在时钟脉冲的控制下,通过引脚RXD(P3.0)逐位移入数据至输入移位寄存器,完成串并转换,然后将数据并行送入接收数据缓冲寄存器SBUF,并形成中断请求RI,通知CPU读取传入的数据。在接收的过程中,还要对接收到的数据帧进行起始值、校验位、停止位等附加信息的反格式化的处理。,2.发送 当单片机CPU向串行口的发送数据缓冲寄存器SBUF写入所需发送的数据后,串行口自动地按软件
24、设定的格式将待传送的数据组成数据帧,并以软件规定的波特率借助于SBUF的移位功能,在时钟脉冲的控制下,通过引脚TXD(P3.1)逐位移出。待该帧完全移出后,形成中断请求TI,通知CPU准备下一帧的发送工作。,串行口控制寄存器SCON SCON是一个可位寻址的特殊功能寄存器,用于存放关于串行口的控制信息和状态信息。SCON的单元地址为98H,在位寻址时,D7D0各位的位地址和位符号如下表所示。表9.3 SCON的位地址和位符号,9.3 串行口的控制寄存器,1.SM0SM1串行口工作方式选择位。当两位设置为00、01、10、11时,串行口分别工作在方式0、方式1、方式2和方式3。2.SM2多机通信
25、控制位(该位主要用于方式2和方式3)。当串行口工作在方式0时,SM2必须为零。,当串行口工作在方式1时,若SM2=1,则只有串行口接收到的停止位为1时,才将接收到的前8位数据送入SBUF,接收到的停止位进入RB8,并将 RI置1,产生中断请求,通知CPU接收数据。若接收到的停止位为0,则将收到的8位数据丢弃,RI清零,不启动中断。SM2=0时正常接收,即不论串行口接收到的停上位(RB8)状态如何,一律将接收到的前8位数据装入SBUF,并将 RI置1,产生中断请求。一般在工作方式1时将SM2置为0。,当串行口工作在方式2和方式3时,若SM2=1,则规定只有当串行口接收到的第9位数据(RB8)为1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 第九
链接地址:https://www.31ppt.com/p-5937882.html