RS-232
个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。
后来IBM的PC机将RS232简化成了DB-9连接器,从而成为事实标准。而工业控制的RS-232口一般只使用RXD、TXD、GND三条线。
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的电压也认为无意义,因此,实际工作时,应保证电平在-3V~-15V或+3V~+15V之间。
25芯
1 屏蔽地线 2 发送数据 TXD 3 接收数据 RXD 4 发送请求RTS 5 发送清除 CTS 6 数据准备好 DSR 7 信号地 SG 8 载波检测 DCD 9 发送返回(+) 10 未定义 11 数据发送(-) 12~17 未定义 18 数据接收(+) 19 未定义 20数据终端准备好 DTR 21 未定义 22 振铃 RI 23~24 未定义 25 接收返回(-)针脚 | 信号 | 定义 | 作用 |
1 | DCD | 载波检测 | Received Line Signal Detector(Data Carrier Detect) |
2 | RXD | 接收数据 | Received Data |
3 | TXD | 发送数据 | Transmit Data |
4 | DTR | 数据终端准备好 | Data Terminal Ready |
5 | SGND | 信号地 | Signal Ground |
6 | DSR | 数据准备好 | Data Set Ready |
7 | RTS | 请求发送 | Request To Send |
8 | CTS | 清除发送 | Clear To Send |
9 | RI | 振铃提示 | Ring Indicator |
缺点
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。 (2)传输速率较低,在异步传输时,波特率为20Kbps;因此在CPLD开发板中,综合程序波特率只能采用19200,也是这个原因。 (3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。 (4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在15米左右。注:51单片机的串口是全双工的,并不是说在单向传输的时候,一根传数据另一根传时钟。
RS485通讯接口
RS485采用差分信号负逻辑,+2V~+6V表示“0”,- 6V~- 2V表示“1”。RS485有两线制和四线制两种接线,四线制是全双工通讯方式,两线制是半双工通讯方式。
RS485和RS232一样都是基于串口的通讯接口,数据收发的操作是一致的,但是它们在实际应用中通讯模式却有着很大的区别,RS232接口为全双工数据通讯模式,而RS485接口为半双工数据通讯模式,数据的收发不能同时进行,为了保证数据收发的不冲突,硬件上是通过方向切换来实现的,相应也要求软件上必须将收发的过程严格地分开。
由于PC机默认的只带有RS232接口,有两种方法可以得到PC上位机的RS485电路:
(1)通过RS232/RS485转换电路将PC机串口RS232信号转换成RS485信号,对于情况比较复杂的工业环境最好是选用防浪涌带隔离栅的产品。
(2)通过PCI多串口卡,可以直接选用输出信号为RS485类型的扩展卡。
RS485接口组成的半双工网络,一般是两线制(以前有四线制接法,只能实现点对点的通信方式,现很少采用),多采用屏蔽双绞线传输。这种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。RS485接口连接器采用DB-9的9芯插头座,与智能终端RS485接口采用DB-9(孔),与键盘连接的键盘接口RS485采用DB-9(针)。
RS-485接口的最大传输距离标准值为4000英尺,实际上可达1219米,另外RS-232接口在总线上只允许连接1个收发器,即单站能力。而RS-485接口在总线上是允许连接多达128个收发器。即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。 因为RS485接口组成的半双工网络,一般只需二根连线(一般叫AB线),所以RS485接口均采用屏蔽双绞线传输。
Uart这里指的是TTL电平的串口;RS232指的是RS232电平的串口。
TTL电平是3.3V的,而RS232是负逻辑电平,它定义+5~+12V为低电平,而-12~-5V为高电平。
Uart串口的RXD、TXD等一般直接与处理器芯片的引脚相连,而RS232串口的RXD、TXD等一般需要经过电平转换(通常由Max232等芯片进行电平转换)才能接到处理器芯片的引脚上,否则这么高的电压很可能会把芯片烧坏。
我们平时所用的电脑的串口就是RS232的,当我们在做电路工作时,应该注意下外设的串口是Uart类型的还是RS232类型的,如果不匹配,应当找个转换线(通常这根转换线内有块类似于Max232的芯片做电平转换工作的),可不能盲目地将两串口相连。
串行接口
串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。
总述
串口通信的两种最基本的方式:同步串行通信方式和异步串行通信方式。 同步串行是指SPI(Serial Peripheral interface)的缩写,顾名思义就是串行外围设备接口。SPI总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息,TRM450是SPI接口。 异步串行是指UART(Universal Asynchronous Receiver/Transmitter),通用异步接收/发送。UART是一个并行输入成为串行输出的芯片,通常集成在主板上。UART包含TTL电平的串口和RS232电平的串口。 TTL电平是3.3V的,而RS232是负逻辑电平,它定义+5~+12V为低电平,而-12~-5V为高电平。 串行接口按电气标准及协议来分包括RS-232-C、RS-422、RS485等。RS-232-C、RS-422与RS-485标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。 电平标准数字信号的标准
现在常用的电平标准有TTL、CMOS、LVTTL、LVCMOS、ECL、PECL、LVPECL、RS232、RS485等,还有一些速度比较高的LVDS、GTL、PGTL、CML、HSTL、SSTL等。下面简单介绍一下各自的供电电源、电平标准以及使用注意事项。
一、TTL电平
TTL电平信号被利用的最多是因为通常数据表示采用二进制规定,+5V等价于逻辑"1",0V等价于逻辑"0",这被称做TTL(晶体管-晶体管逻辑电平)信号系统,这是计算机处理器控制的设备内部各部分之间通信的标准技术。TTL集成电路的全名是晶体管-晶体管逻辑集成电路(Transistor-Transistor Logic),
Vcc:5V;VOH>=2.4V;VOL<=0.5V;VIH>=2V;VIL<=0.8V。
因为2.4V与5V之间还有很大空闲,对改善噪声容限并没什么好处,又会白白增大系统功耗,还会影响速度。所以后来就把一部分“砍”掉了。也就是后面的LVTTL。 LVTTL又分3.3V、2.5V以及更低电压的LVTTL(Low Voltage TTL)。
3.3V LVTTL: Vcc:3.3V;VOH>=2.4V;VOL<=0.4V;VIH>=2V;VIL<=0.8V。
2.5V LVTTL: Vcc:2.5V;VOH>=2.0V;VOL<=0.2V;VIH>=1.7V;VIL<=0.7V。
TTL使用注意:TTL电平一般过冲都会比较严重,可能在始端串22欧或33欧电阻;
TTL电平输入脚悬空时是内部认为是高电平。要下拉的话应用1k以下电阻下拉。
TTL电平长距离传输不了,抗干扰不行,衰减也大。
长距离传输过程只能用RS232电平或者485电平,后者更远,在发送部分将TTL转换后,传输,接收部分再将传输电平转换为TTL电平。
TTL作为逻辑电平很好,但是长距离传输确实能力有限。
二、CMOS电平
COMS集成电路是互补对称金属氧化物半导体(Compiementary symmetry metal oxide semicoductor)集成电路的英文缩写,电路的许多基本逻辑单元都是用增强型PMOS晶体管和增强型NMOS管按照互补对称形式连接的,静态功耗很小。
COMS电路的供电电压VDD范围比较广在+5~+15V均能正常工作,电压波动允许±10,当输出电压高于VDD-0.5V时为逻辑1,输出电压低于VSS+0.5V(VSS为数字地)为逻辑0。CMOS电路输出高电平约为0.9Vcc,而输出低电平约为0.1Vcc当输入电压高于VDD-1.5V时为逻辑1,输入电压低于VSS+1.5V(VSS为数字地)为逻辑0。CMOS电路中不适用的输入端不能悬空,否则逻辑混乱
三、RS-232、RS-422与RS-485
RS-232、RS-422与RS-485标准只对接口的电气特性做出规定,而不涉及接插件、电缆或协议,在此基础上用户可以建立自己的高层通信协议。 RS-232、RS-422与RS-485都是串行数据接口标准,都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布。RS-422由RS-232发展而来,为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mbps,传输距离延长到4000英尺(速率低于100Kbps时),并允许在一条平衡总线上连接最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA-422-A标准。为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/EIA-485-A标准。1. RS-232串行接口标准
目前RS-232是PC机与通信工业中应用最广泛的一种串行接口。RS-232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。RS-232采取不平衡传输方式,即所谓单端通讯。收、发端的数据信号是相对于信号地。典型的RS-232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平在+5~+15V,负电平在-5~-15V电平。当无数据传输时,线上为TTL,从开始传送数据到结束,线上电平从TTL电平到RS-232电平再返回TTL电平。接收器典型的工作电平在+3~+12V与-3~-12V。由于发送电平与接收电平的差仅为2V至3V左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约15米,最高速率为20Kbps。RS-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为3kΩ~7kΩ。所以RS-232适合本地设备之间的通信。
2. RS-422与RS-485串行接口标准
(1)平衡传输
RS-422、RS-485与RS-232不一样,数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定义为B。通常情况下,发送驱动器A、B之间的正电平在+2~+6V,是一个逻辑状态,负电平在-2V~6V,是另一个逻辑状态。另有一个信号地C,在RS-485中还有一“使能”端,而在RS-422中这是可用可不用的。“使能”端是用于控制发送驱动器与传输线的切断与连接。当“使能”端起作用时,发送驱动器处于高阻状态,称作“第三态”,即它是有别于逻辑“1”与“0”的第三态。
(2)RS-422电气规定
由于接收器采用高输入阻抗和发送驱动器比RS232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。即一个主设备(Master),其余为从设备(Salve),从设备之间不能通信,所以RS-422支持点对多的双向通信。RS-422四线接口由于采用单独的发送和接收通道,因此不必控制数据方向,各装置之间任何必须的信号交换均可以按软件方式(XON/XOFF握手)或硬件方式(一对单独的双绞线)实现。RS-422的最大传输距离为4000英尺(约1219米),最大传输速率为10Mbps。其平衡双绞线的长度与传输速率成反比,在100Kbps速率以下,才可能达到最大传输距离。只有在很短的距离下才能获得最高速率传输。一般100米长的双绞线上所能获得的最大传输速率仅为1Mbps。RS-422需要一终接电阻,要求其阻值约等于传输电缆的特性阻抗。在矩距离传输时可不需终接电阻,即一般在300米以下不需终接电阻。终接电阻接在传输电缆的最远端。
(3)RS-485电气规定
由于RS-485是从RS-422基础上发展而来的,所以RS-485许多电气规定与RS-422相仿。如都采用平衡传输方式、都需要在传输线上接终接电阻等。RS-485可以采用二线与四线方式,二线制可实现真正的多点双向通信。RS-485总线,在要求通信距离为几十米到上千米时,广泛采用RS-485 串行总线标准。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。 RS-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。RS-485用于多点互连时非常方便,可以省掉许多信号线。应用RS-485 可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。
RS-485与RS-422的不同还在于其共模输出电压是不同的,RS-485是-7V至+12V之间,而RS-422在-7V至+7V之间;RS-485满足所有RS-422的规范,所以RS-485的驱动器可以用在RS-422网络中应用。RS-485与RS-422一样,其最大传输距离约为1219米,最大传输速率为10Mbps。平衡双绞线的长度与传输速率成反比,在100Kbps速率以下,才可能使用规定最长的电缆长度。只有在很短的距离下才能获得最高速率传输。一般100米长双绞线最大传输速率仅为1Mbps。
(4)RS-422与RS-485的网络安装注意要点
RS-422可支持10个节点,RS-485支持32个节点,因此多节点构成网络。网络拓扑一般采用终端匹配的总线型结构,不支持环形或星形网络。在构建网络时,应注意如下几点:
* 采用一条双绞线电缆作总线,将各个节点串接起来,从总线到每个节点的引出线长度应尽量短,以便使引出线中的反射信号对总线信号的影响最低。
* 应注意总线特性阻抗的连续性,在阻抗不连续点就会发生信号的反射。下列几种情况易产生这种不连续性:总线的不同区段采用了不同电缆,或某一段总线上有过多收发器紧靠在一起安装,再者是过长的分支线引出到总线。
总之,应该提供一条单一、连续的信号通道作为总线。
四、LVDS电平
LVDS(Low Voltage Differential Signal)即低电压差分信号,LVDS接口又称RS644总线接口,是20世纪90年代才出现的一种数据传输和接口技术。
LVDS的典型工作原理如图1所示。最基本的LVDS器件就是LVDS驱动器和接收器。LVDS的驱动器由驱动差分线对的电流源组成,电流通常为3.5 mA。LVDS接收器具有很高的输入阻抗,因此驱动器输出的大部分电流都流过100 Ω的匹配电阻,并在接收器的输入端产生大约350 mV的电压。当驱动器翻转时,它改变流经电阻的电流方向,因此产生有效的逻辑“1”和逻辑“0”状态。
LVDS技术在两个标准中被定义:ANSI/TIA/EIA644 (1995年11月通过)和IEEE P1596.3 (1996年3月通过)。这两个标准中都着重定义了LVDS的电特性,包括:
①低摆幅(约为350 mV)。低电流驱动模式意味着可实现高速传输。ANSI/TIA/EIA644建议了655 Mb/s的最大速率和1.923 Gb/s的无失真通道上的理论极限速率。
②低压摆幅。恒流源电流驱动,把输出电流限制到约为3.5 mA左右,使跳变期间的尖峰干扰最小,因而产生的功耗非常小。这允许集成电路密度的进一步提高,即提高了PCB板的效能,减少了成本。
③具有相对较慢的边缘速率(dV/dt约为0.300 V/0.3 ns,即为1 V/ns),同时采用差分传输形式,使其信号噪声和EMI都大为减少,同时也具有较强的抗干扰能力。
所以,LVDS具有高速、超低功耗、低噪声和低成本的优良特性。
LVDS的应用模式可以有四种形式:
①单向点对点(point to point),这是典型的应用模式。
②双向点对点(point to point),能通过一对双绞线实现双向的半双工通信。可以由标准的LVDS的驱动器和接收器构成;但更好的办法是采用总线LVDS驱动器,即BLVDS,这是为总线两端都接负载而设计的。
③多分支形式(multidrop),即一个驱动器连接多个接收器。当有相同的数据要传给多个负载时,可以采用这种应用形式。④ 多点结构(multipoint)。此时多点总线支持多个驱动器,也可以采用BLVDS驱动器。它可以提供双向的半双工通信,但是在任一时刻,只能有一个驱动器工作。因而发送的优先权和总线的仲裁协议都需要依据不同的应用场合,选用不同的软件协议和硬件方案。
为了支持LVDS的多点应用,即多分支结构和多点结构,2001年新推出的多点低压差分信号(MLVDS)国际标准ANSI/TIA/EIA 8992001,规定了用于多分支结构和多点结构的MLVDS器件的标准,目前已有一些MLVDS器件面世。
LVDS技术的应用领域也日渐普遍。在高速系统内部、系统背板互连和电缆传输应用中,驱动器、接收器、收发器、并串转换器/串并转换器以及其他LVDS器件的应用正日益广泛。接口芯片供应商正推进LVDS作为下一代基础设施的基本构造模块,以支持手机基站、中心局交换设备以及网络主机和计算机、工作站之间的互连。
五、ECL电平、PECL电平和LVPECL电平
ECL(EmitterCoupled Logic)即射极耦合逻辑,是带有射随输出结构的典型输入输出接口电路,如图2所示。
ECL电路的最大特点是其基本门电路工作在非饱和状态,因此ECL又称为非饱和性逻辑。也正因为如此,ECL电路的最大优点是具有相当高的速度。这种电路的平均延迟时间可达几个ns数量级甚至更少。传统的ECL以VCC为零电压,VEE为-5.2 V电源,VOH=VCC-0.9 V=-0.9 V,VOL=VCC-1.7 V=-1.7 V,所以ECL电路的逻辑摆幅较小(仅约0.8 V)。当电路从一种状态过渡到另一种状态时,对寄生电容的充放电时间将减少,这也是ECL电路具有高开关速度的重要原因。另外,ECL电路是由一个差分对管和一对射随器组成的,所以输入阻抗大,输出阻抗小,驱动能力强,信号检测能力高,差分输出,抗共模干扰能力强;但是由于单元门的开关管对是轮流导通的,对整个电路来讲没有“截止”状态,所以电路的功耗较大。
如果省掉ECL电路中的负电源,采用正电源的系统(+5 V),可将VCC接到正电源而VEE接到零点。这样的电平通常被称为PECL(Positive Emitter Coupled Logic)。如果采用+3.3 V供电,则称为LVPECL。当然,此时高低电平的定义也是不同的。它的电路如图3、4所示。
其中,输出射随器工作在正电源范围内,其电流始终存在。这样有利于提高开关速度,而且标准的输出负载是接50Ω至VCC-2 V的电平上。
在使用PECL 电路时要注意加电源去耦电路,以免受噪声的干扰。输出采用交流耦合还是直流耦合,对负载网络的形式将会提出不同的需求。直流耦合的接口电路有两种工作模式:其一,对应于近距离传送的情况,采用发送端加到地偏置电阻,接收端加端接电阻模式;其二,对应于较远距离传送的情况,采用接收端通过电阻对提供截止电平VTT 和50 Ω的匹配负载的模式。以上都有标准的工作模式可供参考,不必赘述。对于交流耦合的接口电路,也有一种标准工作模式,即发送端加到地偏置电阻,耦合电容靠近发送端放置,接收端通过电阻对提供共模电平VBB 和50 Ω的匹配负载的模式。
PECL是高速领域内一种十分重要的逻辑电路,它的优良特性使它广泛应用于高速计算机、高速计数器、数字通信系统、雷达、测量仪器和频率合成器等方面。
ECL:EmitterCoupled Logic 发射极耦合逻辑电路(差分结构)
Vcc=0V;Vee:-5.2V;VOH=-0.88V;VOL=-1.72V;VIH=-1.24V;VIL=-1.36V。
速度快,驱动能力强,噪声小,很容易达到几百M的应用。但是功耗大,需要负电源。为简化电源,出现了PECL(ECL结构,改用正电压供电)和LVPECL。
PECL:Pseudo/Positive ECL
Vcc=5V;VOH=4.12V;VOL=3.28V;VIH=3.78V;VIL=3.64V
LVPELC:Low Voltage PECL
Vcc=3.3V;VOH=2.42V;VOL=1.58V;VIH=2.06V;VIL=1.94V