3.5 数据通信接口
数据通信设备(见图3-13)由数据终端设备(Data Terminal Equipment,DTE)、数据链路端接设备(Data Circuit-terminating Equipment,DCE)和通信传输网络三部分组成。数据终端设备(DTE)包括计算机,各种I/O设备,多路复用机和文字、声音、图像处理设备等。大多数DTE设备的数据传输能力是很有限的,直接把相隔很远的两个数字数据处理设备连接在一起是不能进行通信的,必须在数据处理设备和传输网络之间加上一个中间设备,这个中间设备就是数据链路端接设备(DCE)。DCE的作用就是在DTE与传输线路之间提供信号变换和编解码等功能,并负责建立、保持和释放数据通信链路的连接。
图3-13 数据通信系统
DCE主要包括调制解调器、信道服务单元(Channel ServiceUnit,CSU)和数据服务单元(Data Service Unit,DSU)。
DTE和DCE之间的连接必须包含数据传输线、信号传输线和控制线以及其他重要的功能。DTE与DCE的接口由许多条并行线组成,包括多种信号传输线和控制线。发送时DCE把DTE传送来的数据,按顺序逐个发往传输线路,接收时,刚好相反,从传输线路上接收下来的串行码序列,通过DCE再交给DTE。很明显,这里需要高度协调的工作。为减轻数据处理设备的负担,必须对DTE和DCE的接口进行标准化。这种接口也称为物理层协议。
DTE和DCE接口由开放式系统互联模型(Open System Interconnection,OSI)的物理层规定,这是一个定义连接异种计算机的标准主体结构,现已成为广大厂商共同遵循的标准。“开放”这个词表示任何两个遵守参考模型和有关标准的系统都可进行无障碍连接。
串行通信接口标准经过使用和发展,目前已经有多种标准接口。但都是在RS-232标准的基础上经过改进而形成的。RS-232C标准是目前用来连接DTE和DCE设备最流行的标准接口,是数据通信中最重要的、而且是完全遵循数据通信标准的一种接口。目前在PC上的COM1、COM2接口,就是RS-232C接口。
3.5.1 RS-232C接口
RS-232C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的于1969年公布的通信协议。是PC和通信产品中应用最广泛的一种串行接口,适合于数据传输速率在0~20kbit/s范围内的数据通信。RS-232是为点对点(即只用于一对收、发设备)通信而设计的,其驱动器负载为3~7kΩ。所以RS-232适合本地设备之间的通信。
这个标准对串行通信接口的有关问题,如信号线功能、电气特性都作了明确规定。由于通信设备厂商生产的通信设备都与RS-232C制式兼容,所以,RS-232C标准已成为微机通信接口中广泛采用的一种标准。
RS(Recommended Standard)的涵义是“推荐标准”的英文缩写,232为标识号,C表示修改次数。RS-232C总线标准设有25条信号线,包括一个主通道和一个辅助通道。
RS-232(包括RS-422和RS-485)标准只对接口的电气特性做出规定,而不涉及接插件、电缆或协议,在此基础上用户可以建立自己的高层通信协议。例如:视频服务器都带有多个RS-422串行通信接口,每个接口均可通过RS-422通信线由外部计算机进行控制,实现记录与播放。视频服务器除提供各种控制硬件接口外,还提供协议接口,如RS-422接口除支持RS-422的Profile协议外,还支持Louth、Odetics、BVW等通过RS-422控制的协议。
在多数情况下RS-232C主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。图3-14是RS-232(9针)接口。
RS-232C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。
图3-14 RS-232(9针)接口
RS-232C属单端非平衡方式传送信号,存在共地噪声和不能抑制共模干扰等问题,因此一般只用于20m以内的近距离数据终端的通信连接。
RS-232C标准最初是为远程通信连接数据终端设备(DTE)与数据链路端接设备(DCE)制定的。因此这个标准的制定,并未考虑计算机系统的应用要求。但目前它又广泛地用于计算机(更准确地说,是计算机接口)与终端或外设之间的近端连接标准。显然,这个标准的有些规定和计算机系统是不一致的,甚至是相矛盾的。有了对这种背景的了解,我们对RS-232C标准与计算机不兼容的地方就不难理解了。
RS-232C标准中所提到的“发送”和“接收”,都是站在DTE数据终端的立场上,而不是站在DCE通信设备的立场来定义的。由于在计算机系统中,往往是CPU和I/O设备之间的信息传送,两者都是DTE,所以双方都能发送和接收。
1.RS-232C的电气特性
RS-232C采用负逻辑。即逻辑0相当于对信号地线有≥+3V的电压;逻辑1相当于信号地线有≤-3V的电压。逻辑0相当于数据的“0”(空号)或控制线的“接通”状态;逻辑1相当于数据“1”(传号)或控制线的“断开”状态。EIA-RS-232C标准对逻辑电平的定义和各种信号线功能都作了规定。
(1)在TxD(发送数据)和RxD(接收数据)的端口电平如下:
逻辑1(传号)=-3~-15V,逻辑0(空号)=+3~+15V。
(2)在RTS、CTS、DSR、DTR和DCD等控制线上的电平如下:
信号有效(接通,ON状态)=+3~+15V;
信号无效(断开,OFF状态)=-3~-15V。
以上规定说明了对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号:接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在±(3~15)V之间。
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电流环信号仅IBMPC和IBMPC/XT机提供,AT机及以后已不支持。
(2)DB-9连接器。在AT机及以后,不支持20mA电流环接口,使用DB-9型连接器,作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。它只提供异步通信的9个信号。DB-9型连接器的引脚分配与DB-25型引脚信号分配完全不同。因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线。
(3)连接电缆长度。在通信速率低于20kbit/s时,RS-232C直接连接的最大物理距离为15m(50ft,1ft=0.3048m)。当连接电缆长度更短时,数据传输速率可提高。
最大直接传输距离说明:RS-232C标准规定,若不使用Modem,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50ft)。可见这个最大距离是在码元畸变小于4%的前提下给出的。为了保证码元畸变小于4%的要求,接口标准在电气特性中规定,驱动器的负载电容应小于2500pF。
3.RS-232C接口信号的功能特性
RS-232C的功能特性定义了25芯标准连接器中的20根信号线,其中2条地线、4条数据线、11条控制线、3条定时信号线,剩下的5根线作备用或未定义。常用的只有10根,它们是
(1)联络控制信号线功能定义。
数据发送准备(Data Set Ready,DSR):有效时(ON)状态,表明Modem处于可以使用的状态。
数据终端准备(Data Terminal Ready,DTR):有效时(ON)状态,表明数据终端可以使用。
这两个信号有时连接上电源,就立即有效。但是设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的控制信号决定。
请求发送(Request To Send,RTS):用来表示DTE请求DCE发送数据,即当终端准备要接收Modem传来的数据时,使该信号有效(ON状态),请求Modem发送数据。用来控制Modem是否要进入发送状态。
清除发送(Clear To Send,CTS):用来表示DCE准备好接收DTE发来的数据,是与请求发送信号RTS相应的信号。
RTS/CTS请求应答联络信号:是用于半双工Modem系统中发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号。
接收线RxD信号检出(Received Line Detection,RLSD):用来表示DCE已接通通信链路,告知DTE准备接收数据。当本地Modem收到由通信链路另一端(远地)的Modem送来的载波信号时,使RLSD信号有效,通知终端准备接收,并且由Modem将接收下来的载波信号解调成数字数据后,沿接收数据线RxD送到终端。此线也叫做数据载波检出(Data Carrier Detection,DCD)线。
振铃指示(Ring Indicator,RI):当Modem收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫。
(2)数据发送与接收线。
发送数据(Transmit Data,TxD):通过TxD终端将串行数据发送到Modem(DTE→DCE)。
接收数据(Received Data,RxD):通过RxD终端,接收从Modem发来的串行数据(DCE→DTE)。
(3)地线。
GND(PE)、Sig.GND:保护地和信号地。
上述控制信号线何时有效,何时无效的顺序表示了接口信号的传送过程。例如,只有当DSR和DTR都处于有效(ON)状态时,才能在DTE和DCE之间进行传送操作。若DTE要发送数据,则预先将DTR线置成有效(ON)状态,等CTS线上收到有效(ON)状态的回答后,才能在TxD线上发送串行数据。这种顺序的规定对半双工的通信线路特别有用,因为半双工的通信才能确定DCE已由接收方向改为发送方向,这时线路才能开始发送。表3-2是9针RS-232C信号接口定义。表3-3是25针RS-232C信号接口定义。
表3-2 9针RS-232C信号接口定义
表3-3 25针RS-232C信号接口定义
4.DB-25连接器的同步应用和异步应用连接
使用25根引脚的RS-232CDB-25插头座。引脚分为上、下两排,分别有13和12根引脚,其编号分别为1~13和14~25,从左到右。图3-15是RS-232C异步通信应用引线。图3-16是RS-232C同步通信应用的引线。
图3-15 RS-232C异步通信应用引线
图3-16 RS-232C同步通信应用引线
5.RS-232的缺点
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
(2)传输速率较低,在异步传输时,传输速率为20kbit/s;因此在CPLD开发板中,综合程序速率只能采用19.2kbit/s。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模信号干扰。
(4)传输距离有限,最大传输距离标准值为50ft,实际上也只能用在15m左右。
3.5.2 RS-422和RS-485接口
RS-422、RS-485由RS-232发展而来。为改进RS-232通信距离短、速率低的缺点,与RS-232不一样,RS-422、RS-485数据信号采用差分传输方式,也称作平衡传输,是一种平衡通信接口,提高了抗干扰性能,增加了通信距离,并将传输速率提高到10Mbit/s。它们使用一对双绞线,将其中一根线定义为A,另一根线定义为B。通常情况下,A、B两个发送驱动器之间的正电平在+2~+6V,是一种逻辑状态,负电平在-2~-6V,是另一种逻辑状态,另有一个信号地C。
1.RS-422接口
RS-422标准全称是“平衡电压数字接口电路的电气特性”,它定义了接口电路的特性。实际上还有一根信号地线,共5根线。由于接收器采用高输入阻抗和发送驱动器,所以,具有比RS-232更强的驱动能力,允许在传输线上最多可连接10个接收结点。即一个主设备(Master),其余为从属设备(Salve),从属设备之间不能通信,所以RS-422支持一点对多点的双向通信。接收器输入阻抗为4kΩ,发端最大负载能力是10×4kΩ+100Ω(终接电阻)。
RS-422是差模传输,抗干扰能力强,最大传输距离为4000ft(约1219m),而RS-232最长传输距离为15m。
RS-422的最大传输速率为10Mbit/s。平衡双绞线的长度与传输速率成反比,在100kbit/s速率以下,才可能达到最大传输距离。只有在很短的距离下才能获得最高速率传输。一般100m长的双绞线上所能获得的最大传输速率仅为1Mbit/s。
RS-422四线接口有两根发送(Y、Z)、两根接收(A、B),由于采用单独的发送和接收通道,所以不必控制数据方向,可以同时收和发(全双工)。各装置之间的任何信号交换均可以按软件方式(XON/XOFF握手)或硬件方式(一对单独的双绞线)实现。
RS-422接口需要有一终接电阻,要求其阻值等于传输电缆的特性阻抗(100Ω),终接电阻接在传输电缆的最远端。在300m以下短距离传输时可不需终接电阻。计算机侧RS-422串行通信接口的插口是25针公插;设备侧RS-422串行接口插头是25针母插。
RS-485和RS-422信息传输均采用差分传输(平衡传输)方式,有A,B两个引脚。
发送端A、B间的电压差为:+2~+6V,为逻辑“1”;-2~-6V,为逻辑“0”。
接收端A、B间的电压差为:大于+200mV,为逻辑“1”;小于-200mV,为逻辑“0”。
定义逻辑“1”为B>A的状态。定义逻辑“0”为A>B的状态。AB之间的电压差不小于200mV。
2.RS-485接口
RS-485是从RS-422基础上发展而来的,因此RS-485的许多电气规定与RS-422相仿。如都采用平衡传输方式、都需要在传输线上接终接电阻等。RS-485可以采用二线与四线方式,四线制可实现真正的多点双向通信。
RS-485与RS-422的不同处在于其共模输出电压不同,RS-485是-7~+12V之间,而RS-422在-7~+7V之间;RS-485能满足所有RS-422的规范,所以RS-485的驱动器可以用在RS-422网络中。
RS-485在多点互连互通使用时非常方便,可以省掉许多信号线。RS-485可以联网构成分布式系统,允许最多并联32台驱动器和32台接收器。
RS-485网络拓扑一般采用终端匹配的总线型结构,不支持环形或星形网络。采用一条双绞线电缆作总线,将各个结点串接起来,从总线到每个结点的引出线长度应尽量短。应注意总线特性阻抗的连续性,在阻抗不连续点会发生信号反射。下列几种情况易产生这种不连续性:总线的不同区段采用了不同电缆,或某一段总线上有过多收发器紧靠在一起安装,或者是过长的分支线引到总线。
RS-485与RS-422一样,其最大传输距离约为1219m,最大传输速率为10Mbit/s。平衡双绞线的长度与传输速率成反比,在100kbit/s速率以下,才可能使用规定最长的电缆长度。只有在很短的距离下才能获得最高速率传输。一般100m长双绞线最大传输速率仅为1Mbit/s。
RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。在要求通信距离为几十米到上千米时,广泛采用RS-485串行总线标准。
二线方式的RS-485采用结点发送器和接收器共用一对双绞线,结点要么在发送状态,要么在接收状态,所以是半双工双向通信工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由“使能”信号加以控制。“使能”端是用于控制发送驱动器与传输线的切断与连接。当“使能”端起作用时,发送驱动器处于高阻状态,称作“第三态”,即它是有别于逻辑“1”与“0”的第三态。
3.5.3 串口的扩展
一般一台计算机有两个串口,而对于一台播控计算机需要控制的设备远远不止两台设备,需要同时控制视频服务器、录像机、切换台、字幕机等各种设备。所以就需要对串口进行扩展,通常可以使用串口扩展卡对串口进行扩展,比如在播控系统中可使用MOXACI-134串口扩展卡。
MOXACI-134是专为工业环境通信应用设计的RS-422/485四串口卡。它支持4个独立的RS-422/485串口,在一点对多点的通信应用中,最多可控制128个设备。为使RS-485的2线半双工操作变得更加简单,每片CI-134卡都具有数据流向自动控制(ADDC),不需软件操作。因此,在Windows应用下不需额外的编码就能控制RS-485半双工协议。为达到工业环境对高可靠性产品的要求,可选择光电隔离(2kV)和浪涌保护(25kVESD)功能。