A:通讯工程设计的基础部分串行通信接口标准一、RS-232C接口RS-232C是EIA(美国电子工业协会)1969年修订RS-232C标准。RS-232C定义了数据终端设备(DTE)与数据通信设备(DCE)之间的物理接口标准。1、机械特性RS-232C接口规定使用25针连接器,连接器的尺寸及每个插针的排列位置都有明确的定义。(阳头)965125141312、功能特性4、过程特性过程特性规定了信号之间的时序关系,以便正确地接收和发送数据。远程通信连接计算机计算机MODEMMODEMTXDRXDRTSTXDRXDRTSDSR电话线DSR近程通信连接计算机乙计算机甲TXDTXDRXDRXD计算机乙计算机甲TXDTXDRXDRXD45620456205、RS-232C电平与TTL电平转换驱动电路12345689101112137+12V-12VRS232电平TTL电平124589101112137+5VTTL电平RS232电平1463MC1488MC148912345689101112137+12V-12VTTL电平124589101112137+5V1463TTL电平RS232电平地MC1488MC14896、采用RS-232C接口存在的问题1、传输距离短,传输速率低RS-232C总线标准受电容允许值的约束,使用时传输距离一般不要超过15米(线路条件好时也不超过几十米)。最高传送速率为20Kbps。2、有电平偏移RS-232C总线标准要求收发双方共地。通信距离较大时,收发双方的地电位差别较大,在信号地上将有比较大的地电流并产生压降。3、抗干扰能力差RS-232C在电平转换时采用单端输入输出,在传输过程中当干扰和噪声混在正常的信号中。为了提高信噪比,RS-232C总线标准不得不采用比较大的电压摆幅。二、RS-422A接口RS-422A输出驱动器为双端平衡驱动器。如果其中一条线为逻辑“1”状态,另一条线就为逻辑“0”,比采用单端不平衡驱动对电压的放大倍数大一倍。差分电路能从地线干扰中拾取有效信号,差分接收器可以分辨200mV以上电位差。若传输过程中混入了干扰和噪声,由于差分放大器的作用,可使干扰和噪声相互抵消。因此可以避免或大大减弱地线干扰和电磁干扰的影响。RS-422A传输速率(90Kbps)时,传输距离可达1200米。SN75174SN75175SN75174SN75175电平TTL电平TTL双向需4条线+5V+5V三、RS-485接口RS-485是RS-422A的变型:RS-422A用于全双工,而RS-485则用于半双工。RS-485是一种多发送器标准,在通信线路上最多可以使用32对差分驱动器/接收器。如果在一个网络中连接的设备超过32个,还可以使用中继器。RS-485的信号传输采用两线间的电压来表示逻辑1和逻辑0。由于发送方需要两根传输线,接收方也需要两根传输线。传输线采用差动信道,所以它的干扰抑制性极好,又因为它的阻抗低,无接地问题,所以传输距离可达1200米,传输速率可达1Mbps。电平TTL电平TTL双向仅需2条线RS-485是一点对多点的通信接口,一般采用双绞线的结构。普通的PC机一般不带RS485接口,因此要使用RS-232C/RS-485转换器。对于单片机可以通过芯片MAX485来完成TTL/RS-485的电平转换。在计算机和单片机组成的RS-485通信系统中,下位机由单片机系统组成,上位机为普通的PC机,负责监视下位机的运行状态,并对其状态信息进行集中处理,以图文方式显示下位机的工作状态以及工业现场被控设备的工作状况。系统中各节点(包括上位机)的识别是通过设置不同的站地址来实现的。RS-232的引脚功能和信号流动的方向,常和调制解调器传输有关.以下是9支引脚的相关说明:DCD(1):此引脚是由调制解调器控制,当电话接同之后,发送的信号载在载波信号上面,调制解调器利用此引脚通知计算机有载波被检测到,即表示现在处于联机状态;而当载波被检测到时才可保证此时是处于联机状态.一般若计算机未收到此信号,均会响应信息,并将调制解调器挂断.RXD(2):此引脚会将远程所发送过来的数据接收近来.在接收的过程中,由于数据是以数字类型发送,读者可以在调制解调器的RXD信号灯上看到明灭交错,此即为0与1交替所产生的现象,也就是电位高低变化所产生的现象.TXD(3):此引脚将计算机所要发送出去的数据发送出去.在发送的过程中,由于数据以数字类型发送,读者可以在调制解调器的TXD信号灯上看到明灭交错,此即为0与1交替所产生的现象,也就是电位高低所产生的现象.DTR(4):此引脚由计算机控制,用以通知调制解调器可以进行传输.高电位时表示计算机已经准备就绪,随时可以接收数据.GND(5):此引脚为接地端,作为计算机与调制解调器之间的标准电位参考.两端设备的接地端标准电位必须一样,否则会产生地回路(GroundLoop),使得信号因标准电位的不同而产生偏移,也会导致结果失常.RS-232数据采用单接点(SingleEnded)式的信号发送方式,其特点是信号电压的标准电位不同而造成数据的错误.DSR(6):此引脚由调制解调器控制,调制解调器用这支引脚的高电位通知计算机一切均准备就绪,可以发送数据过来.RTS(7):此引脚由计算机控制,用以通知调制解调器马上发送数据至计算机.而当调制解调器收到此信号后,便会将它由电话在线收到的数据发给计算机;在此之前若有数据发送至调制解调器则会暂时存在缓冲区中.CTS(8):此引脚由调制解调器控制,用以通知计算机将欲发送是数据送至调制解调器.当计算机收到此引脚的信号,即将准备送出的数据送至调制解调器,而调制解调器则将计算机送过来的数据由电话线送出.RI(9):调制解调器通知有电话进来.由于串行通信的简单易用,在工业领域也大量使用串行通信作为数据交换的手段,可是工业环境通常会有噪声干扰传输路线,在用RS-232串行通信进行传输时经常会受到外界的电气干扰而使信号发生错误。为了解决上述问题,RS-485串行通信方式就应运而生了。为了了解信号的干扰情况,首先我们来看图1.8所示的RS-232信号传输方式。由图中可知,RS-232串行通信的信号标准电位是参考接地端而看来的。发送端参考接地端1来发送数据;接受端则参考接地端2来还原出发送的端的信号;在两个接地端同电位的前提下,发送端与接受端的信号会呈现出相同的结果。如果数据传输的过程中有噪声进入到传输线路中,可能会产生干扰,如图1.9所示。干扰信号在接地端和信号上均会产生影响,原始信号在加上干扰信号后依然发送到接受端。因此,信号便发生了扭曲,当然整个信号就都不对了。RS-485信号传输方式如图1.10所示。RS-485的信号在发送出去前会先分解成正负的两条线路,当到达接收端以后,再将信号相减还原成原来的信号。如果将原始的信号标注为(DT),而被分解后的信号分别标注为(D+)和(D-),则原始信号与分解后的信号在由发送端发出去时的运算关系如下:(DT)=(D+)-(D-)•同样,接受端在接受到信号后,也按上式的关系将信号还原成原来的样子。•而如果此线路受到干扰,其情况可能如图1.11所示了.这时候在两条传输线上的信号会分别成为(D+)+Noise和(D-)+Noise。如果接收端接收此信号,它必须按照一定的方式将其合成,合成的方程式如下:[(D+)+Noise]-[(D-)+Noise]=(D+)-(D-)=DT所以,使用RS-485网络可以有效的防止噪声干扰。也正因为这种特性,工业上比较适合使用这种串行传输方式。RS-485虽然可防止噪声,但也并非无懈可击。若噪声电压很大(例如闪电),一样也会造成错误。当计算机要发送的数据给调制解调器时,在计算机上RS-232硬件线路的引脚位图图1.15所示.在图1.15中,计算机与调制解调器的通信步骤如下:(1)调制解调器将计算机通信端口上的DSR引脚电位升高,表示调制解调器已经准备好接收由计算机串行通信端口传过来的数据.(2)计算机将DTR引脚电位升高,表示计算机也已将数据准备妥当.(3)计算机将RST引脚电位升高,告诉调制解调器计算机即将开始发送数据.(4)调制解调器将RST引脚电位升高,通知计算机可以开始发送数据.(5)接着计算机就开始将数据发送到调制解调器,当调制解调器收到数据后,便会将收到的数据利用电话线路发送出去.在经过DSRDTRRST和CTS4支引脚标准电位确认后,计算机与调制解调器的握手程序完成.计算机正式将数据由RS-232通信端口发送至调制解调器,而调制解调器也就在接收数据后,随即将数据发送至电话在线,而通过电话线发送到远方的调制解调器,再转送至该台远程计算机.当数据由远程进来,而计算机要经过调制解调器接收时,计算机与调制解调器两者之间也需进行握手的操作,计算机上的RS-232硬件线路的引脚电位图如图1.16所示.在图1.16中,计算机与调制解调器间的通信步骤如下:(1)调制解调器将计算机串行通信断口上的DSR引脚电位升高,表示调制解调器已经准备好了.(2)此时有电话自电话线中传来,RI引脚发生变化.(3)计算机将DTR电位升高,告诉调制解调器计算机可以发送数据,此信号标准电位会一直维持至断线为止.(4)调制解调器握手完成后,调制解调器会检测到载波信号.(5)调制解调器开始将由在线收到的数据发送到计算机上去.DSR会一直维持在高电位的状态,一旦电话进来至调制解调器时,RI引脚会发生变化,一检测到此引脚的变化以后,DTR引脚就进入升高的状态,至于是一直维持在高电位至断线或是只有接通电话之前为高电位则视通信软件的设计而定.接着调制解调器检测到载波信号后即进行数据的传输,并将受到的数据发送给计算机.由于RS-232最早的用途即是与调制解调器进行远程传输用,因此以上的所有说明也都以调制解调器为对象,这些基本的概念具备后,对于往后各章在系统控制上的说明应用也就较为得心应手了.通信参数就串行通信来看,交换数据的双方利用传输在线的电压改变来达到数据交换的目的,但是如何从不断改变的电压状态中解析出其中的信息,就需要双方共同决定才行.如上所述,既然是通信,双方当然需要说明到底是如何发送数据或命令的,否则如果双方没有一套共同的译码方式,恐怕都无法了解对方所发送过来的数据的意义.因此,双方为了可以进行通信,必须要遵守一定的通信规则,这个共同的规则就是通信端口的初始化.通讯中的流量控制-硬件握手硬件握手使用DSR(第六引脚),CTS(第八引脚)、DTR(第四引脚)和RST(第7引脚)四条硬件线路。例如计算机正在发送数据给设备C,设备C的处理速度不够快,因此其接收缓冲区中的数据量已达到一定的程度,在发送下去将会造成缓冲区溢满,这时就必须暂停数据的发送。而计算机与设备C之间在此种发送问题时的握手步骤如图1.21所示。图1.21的步骤说明如下:(1)设备C必须将相对于计算机上的DSR引脚降为低电压。(2)计算机检测到DSR引脚为低电压后,暂停数据的传输;同时设备C也会继续处理位于缓冲区的数据。(3)待设备C的接收缓冲区数据下降到一定程度后,设备C将DSR引脚的标准电位升高。(4)计算机一检测到DSR引脚为高电位后,就继续发送数据给设备C。在上面的例子中。仅仅使用一个DSR引脚的标准电位信号即可达到双方流量控制通知的作用。在部分设备上,发送操作继续之前,DSR与CTS两个线路的标准电位都升高才行,如调制解调器既是如此。同样,以上面的例子来说,数据、由设备C发送至计算机时,若计算机处理速度不够快,计算机就必须告诉设备C这一情况,使其暂停数据的发送,其握手步骤如图1.22所示。图1.22的步骤说明如下:(1)计算机将DTR信号降为低电压。(2)设备C检测到DTR引脚为低电压后,暂停数据的传输,同时计算机亦会继续处理位于缓冲区的数据。(3)待计算机的接收缓冲区数据量下降至一定程度后,计算机DTR引脚的标准电位升高。(4)设备C一检测到DTR引脚为高电位后,就继续给计算机发送数据。部分情况必须是DTR与RST两条硬件线路均回到高电位后,设备C才会继