现在的位置: 首页 > 综合 > 正文

异步串口

2014年09月05日 ⁄ 综合 ⁄ 共 4113字 ⁄ 字号 评论关闭

1.定义

串行接口简称串口,也称串行通信接口(通常指COM接口),是采用串行通信方式的扩展接口。

串行接口Serial Interface是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信,并可以利用电话线,从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。串行通讯的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成;成本低但传送速度慢。串行通讯的距离可以从几米到几千米;根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。

2.分类

串行接口按电气标准及协议来分包括RS-232-C、RS-422、RS485等。RS-232-C、RS-422与RS-485标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。

   RS-232采取不平衡传输方式,即所谓单端通讯。由于其发送电平与接收电平的差仅为2V至3V左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约15米,最高速率为20kb/s。RS-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为3~7kΩ。所以RS-232适合本地设备之间的通信。

  RS-422由于接收器采用高输入阻抗和发送驱动器比RS232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。即一个主设备(Master),其余为从设备(Slave),从设备之间不能通信,所以RS-422支持点对多的双向通信。接收器输入阻抗为4k,故发端最大负载能力是10×4k+100Ω(终接电阻)。RS-422四线接口由于采用单独的发送和接收通道,因此不必控制数据方向,各装置之间任何必须的信号交换均可以按软件方式(XON/XOFF握手)或硬件方式(一对单独的双绞线)实现。  RS-422的最大传输距离为1219米,最大传输速率为10Mb/s。其平衡双绞线的长度与传输速率成反比,在100kb/s速率以下,才可能达到最大传输距离。只有在很短的距离下才能获得最高速率传输。一般100米长的双绞线上所能获得的最大传输速率仅为1Mb/s。

  RS-485与RS-422的不同还在于其共模输出电压是不同的,RS-485是-7V至+12V之间,而RS-422在-7V至+7V之间,RS-485接收器最小输入阻抗为12kΩ、RS-422是4kΩ;增加了设备的个数(从10个增加到32个)由于RS-485满足所有RS-422的规范,所以RS-485的驱动器可以用在RS-422网络中应用。  RS-485与RS-422一样,其最大传输距离约为1219米,最大传输速率为10Mb/s。平衡双绞线的长度与传输速率成反比,在100kb/s速率以下,才可能使用规定最长的电缆长度。只有在很短的距离下才能获得最高速率传输。一般100米长双绞线最大传输速率仅为1Mb/s

3.、

目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口(RS422,RS485较远),若距离较远,需附加调制解调器(MODEM)或其他相关设备。(25针实际上只用到了9针,IBM改进改成9针)

4.接法

RS-232C最初定义了数据终端设备(DTE)和数据通信设备(DCE),这两种设备的接口是配对链接的,因此引脚的定义也是配对的。例如:RXD要与TXD信号链接;RTS要与CTS信号链接;DSR与DTR信号链接。

不同的硬件设计师在设计硬件时选择不同的定义和接口方式,这就给串行设备之间的链接带来了很大的麻烦(有的是阳口,有的是阴口)

这就需要6种不同的连线来满足不同的情况(线的两端,串口的接口分阴阳)

两端都为阳性插座的直连电路。

两端都为阴性插座的直连电路。

两端都为阳性插座的交叉电路。

两端都为阴性插座的交叉电路。

一端为阳性插座,一端为阴性插座的直连电路

一端为阳性插座,一端为阴性插座的交叉电路

(直连为在接口与硬件连线处进行交叉)

一般的标准是:所有的板极串口(从处理器的PCB板上引出的)都按照PC端标准,使用DB9阳性插座。这样设备与设备之间之需要一种电缆,即两端为阴性插座的交叉电缆。

5.串口通信中的流控制

这里讲到的“流”,当然指的是数据流。数据在两个串口之间传输时,常常会出现丢失数据的现象,或者两台计算机的处理速度不同,如台式机与单片机之间的通讯,接收端数据缓冲区已满,则此时继续发送来的数据就会丢失。现在我们在网络上通过modem进行数据传输,这个问题就尤为突出。流控制能解决这个问题,当接收端数据处理不过来时,就发出“不再接收”的信号,发送端就停止发送,直到收到“可以继续发送”的信号再发送数据。因此流控制可以控制数据传输的进程,防止数据的丢失。 pc机中常用的两种流控制是硬件流控制(包括rts/cts、dtr/dsr等)和软件流控制xon/xoff(继续/停止),下面分别说明。

硬件流控制

硬件流控制必须将相应的电缆线连上,用rts/cts(请求发送/清除发送)流控制时,应将通讯两端的rts、cts线对应相连.
我们在编程时根据接收端缓冲区大小设置一个高位标志(可为缓冲区大小的75%)和一个低位标志(可为缓冲区大小的25%),当缓冲区内数据量达到高位时,我们在接收端将rts(接受端口的RTS对于发送端为CTS)CTS线置低电平(送逻辑0),当发送端的程序检测到cts为低后,就停止发送数据,直到接收端缓冲区的数据量低于低位而将cts置高电平。rts则用来标明接收设备有没有准备好接收数据。

软件流控制

由于电缆线的限制,我们在普通的控制通讯中一般不用硬件流控制,而用软件流控制。一般通过xon/xoff来实现软件流控制。常用方法是:当接收端的输入缓冲区内数据量超过设定的高位时,就向数据发送端发出xoff字符(十进制的19或control-s,设备编程说明书应该有详细阐述),发送端收到 xoff字符后就立即停止发送数据;当接收端的输入缓冲区内数据量低于设定的低位时,就向数据发送端发出xon字符(十进制的17或control- q),发送端收到xon字符后就立即开始发送数据。一般可以从设备配套源程序中找到发送的是什么字符。
应该注意,若传输的是二进制数据,标志字符也有可能在数据流中出现而引起误操作,这是软件流控制的缺陷,而硬件流控制不会有这个问题。

现在的计算机传输速度相当快,异步串口的速度很慢,所以很多时候,不需要流控制串口也能正常工作。

3线串口(兼容硬件流控制标准)在将DTR输出链接到RI上就完美了

1.异步串口的硬件设计

图中,如若接单片机将P31接单片机的TXD将P30接单片机的RXD

2. 如何用万用表检测串口

1.电气特性

  EIA-RS-232C 对电器特性、逻辑电平和各种信号线功能都作了规定。

  在TxD和RxD上: 

 逻辑1(MARK)=-3V~-15V  

 逻辑0(SPACE)=+3~+15V  

 在RTS、CTS、DSR、DTR和DCD等控制线上:  

信号有效(接通,ON状态,正电压)=+3V~+15V   

信号无效(断开,OFF状态,负电压)=-3V~-15V  

 以上规定说明了RS-232C标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号;接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在±(3~15)V之间。  

   EIA RS-232C 与TTL转换:EIA RS-232C 是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA RS-232C 与TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,如MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。MAX232芯片可完成TTL←→EIA双向电平转换。

2、连接器的机械特性

  连接器:由于RS-232C并未定义连接器的物理特性,因此,出现了DB-25、DB-15和DB-9各种类型的连接器,其引脚的定义也各不相同。下面分别介绍两种连接器。  (1)DB-25:PC和XT机采用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)  

 ③空6个(9,10,11,18,21,25)  

 ④保护地(PE)1个,作为设备接地端(1脚)  

 注意,20mA电流环信号仅IBM PC和IBM PC/XT机提供,至AT机及以后,已不支持。  

(2)DB-9:  在AT机及以后,不支持20mA电流环接口,使用DB-9连接器,作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。它只提供异步通信的9个信号。DB-9型连接器的引脚分配与DB-25型引脚信号完全不同。因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线。 

 电缆长度:在通信速率低于20kb/s时,RS-232C 所直接连接的最大物理距离为15m(50英尺)。 

 最大直接传输距离说明:RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50英尺)。可见这个最大的距离是在码元畸变小于4%的前提下给出的。为了保证码元畸变小于4%的要求,接口标准在电气特性中规定,驱动器的负载电容应小于2500pF。

抱歉!评论已关闭.