精华内容
下载资源
问答
  • SWT4485G 4路RS-485拖4口RS-485光隔交换机pdf,型号/规格SWT4485G品牌/商标SWT4485GSWT4485G型世界上唯一的RS-485光隔4×4口交换机一 用途RS-485光隔4×4口交换器(型号SWT4485G)用于4路RS-485上位机与4路RS-485下位...
  • 宇泰 UT-2204 2PORT RS-485转4PORT RS-485集线器使用说明书pdf,提供“宇泰 UT-2204 2PORT RS-485转4PORT RS-485集线器使用说明书”免费资料下载,主要包括产品概述、产品面板说明、性能参数、接线等内容,可供选型和...
  • 宇泰 UT-1304 RS-485/422转4PORT RS-485/422集线器说明书zip,提供“宇泰 UT-1304 RS-485/422转4PORT RS-485/422集线器说明书”免费资料下载,主要包括产品概述、面板说明、性能参数、应用、接线等内容,可供选型和...
  • 波士 RS-232/RS-485/RS-422转换器pdf,波士 RS-232/RS-485/RS-422转换器
  • RS-232、RS-485、RS-422简介
  • RS-232、RS-422 与RS-485标准及应用pdf,RS-232、RS-422 与RS-485标准及应用
  • RS-232至RS-485 RS-422智能转换器电路图doc,RS-232至RS-485 RS-422智能转换器电路图
  • RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为弥补RS-...
  • 介绍了关于RS-232、RS-422与RS-485标准及应用f的详细说明,提供其它知识的技术资料的下载。
  • 摘要:详细地介绍了如何从RS-232信号线上高效率地产生电源,如何实现RS-232接口与RS-485RS-422接口的智能转换,同时,也给出了具体的硬件设计及软件设计方法。 关键词:RS-232RS-485RS-422接口智能转换器 随着...
  • 保证整个系统安全可靠地运行目前在我国应用的现场总线中RS-485/RS-422 使用最为 普遍当用户要将基于标准的RS-232 接口设备如PC 机连接至由RS-485/RS-422 构成 的通讯网络时则必须作RS-232和RS-485/RS-422之间的电平...
  • RS-485和RS-232一样,都是串行通信标准,现在的标准名称是TIA485/EIA-485-A,但是人们会习惯称为RS-485标准,RS-485常用在工业、自动化、汽车和建筑物管理等领域。 RS-485总线弥补了RS-232通信距离短,速率低的缺点...

     RS-485概述

     

    RS-485和RS-232一样,都是串行通信标准,现在的标准名称是TIA485/EIA-485-A,但是人们会习惯称为RS-485标准,RS-485常用在工业、自动化、汽车和建筑物管理等领域。

    RS-485总线弥补了RS-232通信距离短,速率低的缺点,RS-485的速率可高达10Mbit/s,理论通讯距离可达1200米;RS-485和RS-232的单端传输不一样,是差分传输,使用一对双绞线,其中一根线定义为A,另一个定义为B

     

    图片

    双绞线

     

    ▉ RS-485物理层

     

    RS-485的物理层负责在设备和物理传输介质之间传输原始数据。它处理电信号到数字数据的转换,同时定义电压、时序、数据速率等。

     

    ① 差分信号

     

    长距离布线会有信号衰减,而且引入噪声和干扰的可能性更大,在线缆A和B上的表现就是电压幅度的变化,但是,采用差分线的好处就是,差值相减就会忽略掉干扰依旧能输出正常的信号,把这种差分接收器忽略两条信号线上相同电压的能力称为共模抑制

     

    图片

     

    标准规定了,逻辑1:+2V to +6V;逻辑0:-6V to -2V。

     

    RS-485不需要使用特定的总线电压,只看最小差分电压,在较长的电缆长度上,接收器接收到的电压可能会降低到+/- 200 mV,这对于RS-485仍然是完全可以接受的,这也是RS-485的优点之一。

     

    图片

     

    很多收发器的标准达到甚至超过TIA/EIA-485A规范,在实际使用中,以器件的SPEC参数为主,如下某收发器的负输入阈值最小也是-200mV。

     

    图片

     

    ② 信号定义

     

    现在很多的RS-485转换器都是兼容RS-422的,所以看到很多转换器上面的信号都是T/R+、T/R-,即对应RS-485的A+和B-。

     

    图片

     

    对于DB9针型的母头,RS-485有如下的接线定义示意,Pin6~Pin9为N/A不接。

    DB9

    输出信号

    RS-422全双工接线

    RS-485半双工接线

    1

    T/R+

    发(A+)

    RS-485(A+)

    2

    T/R-

    发(B-)

    RS-485(B-)

    3

    RXD+

    收(A+)

    4

    RXD-

    收(B-)

    5

    GND

    地线

    地线

     

    ③ 拓扑结构

     

    RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,多采用的是两线制接线方式,这种接线方式为总线拓扑结构,在同一总线上最多可以挂接32个节点。

     

    RS-485总线同I2C,也是主从模式,支持点对点单从机模式,也支持多从机模式,不支持多主机模式。

     

    图片

    ▉ RS-485收发器

     

    RS-485是差分传输,如果用单片机控制RS-485接口的设备,需要用到收发器,这一点和CAN总线是类似的,如下是一个MCU控制一个RS-485的图示。

     

    图片

     

    收发器内部是一个接收器(上半部分)加一个发送器(下半部分),下面简单说说收发器的原理,便于理解MCU是如何和485设备通信的。

     

    图片

    RS-485收发器内部结构

    其中:

    • A和B为总线;

    • R为接收器输入;

    • RE为接收器使能信号;

    • DE为发送器使能信号;

    • D为发送器输出;

     

    对于使能信号,字母上面加一横的为低电平有效(如上图RE),不加的为高电平有效(如DE)。

     

    对于发送器,有如下的真值表:

     

    1、当驱动器使能引脚DE为逻辑高时,差分输出A和B遵循数据输入D处的逻辑状态。D处的逻辑高导致A转为高,B转为低。在这种情况下,定义为VOD=VA-VB的差分输出电压为正。当D为低时,输出状态反转,B变高,A变低,VOD为负。

     

    2、当DE低时,两个输出都变成高阻抗。在这种情况下,与D处的逻辑状态是不相关的。

    图片

    发送器真值表

     

    对于接收器,有如下的真值表:

     

    1、当接收器使能引脚RE逻辑低时,接收器被激活。当定义为VID=VA–VB的差分输入电压为正且高于正输入阈值VIT+时,接收机输出R变高。当VID为负且低于负输入阈值VIT-,接收机输出R变低。如果VID在VIT+和VIT-之间,则输出不确定。

     

    2、当RE为逻辑高或悬空时,接收机输出为高阻抗,VID的大小和极性无关。

    图片

    接收器真值表

     

    ▉ RS-485数据链路

     

    上面讲到的RS-485收发器的工作原理,下面简单描述RS-485的数据链路。

     

    图片

     

    主机发送给从机或者从机发送给主机,都会占用到A和B线,所以RS-485多用在半双工模式。

     

    主机的GPIO会控制RS-485收发器的DE管脚,设置发送模式,从UART TXD线向RS-485收发器的数据(D或DI)线发送一个字节,收发器将在A和B线上将单端UART位流转换为差分位流,数据离开收发器后,主机立即将收发器的模式切换为接收模式。

     

    从机和主机是类似的,从机控制RS-485收发器的/RE管脚,设置为接收模式,接收主机发送的比特流,将其转换为单端信号,通过从机的UART RXD线接收,当从机准备好响应时,它按主机原来的方式进行发送,而主机变为接收。

     

    ▉ RS-232和RS-485转换

     

    RS-232和RS-485之间可以转换,一个方法是RS-232转换成TTL,再由TTL转换为RS-485,当然也有芯片支持将RS-232直接转换成RS-485,网上有很多模块。

     

    图片

    RS-232和RS-485转换模块

     

    ▉ RS-485和CAN的区别

     

    虽说RS-485没有标准的数据协议格式,但和CAN总线在很多地方是有相似的,比如A&B和CANH&CANL都是差分信号,通信都需要收发器,都需要120欧姆的匹配电阻等等。

     

    总线特性

    CAN总线

    RS-485总线

    硬件成本

    稍高

    低廉

    总线利用率

    优先级自动仲裁,利用率高

    采用轮询,利用率低

    数据传输率

    错误检测机制

    控制器带校验机制,保证底层数据传输正确

    只有物理层规范,无数据链路层规定

    单节点故障影响

     总线无影响

    总线瘫痪

    开发成本

    软件开发灵活,时间成本低

    开发难度较大

    系统成本

    较低 

     

    ▉ RS-485常用电路

     

    网上找的一个常用的RS-485电路,其中需要注意两点:

    图片

     

    1、使能信号RE和DE可采用一个GPIO控制,节省资源,GPIO25输出高电平,RE=DE=0V,进入接收模式;GPIO25输出低电平,RE=DE=3.3V,进入发送模式。

    2、有一些电路中会在A上加上拉,B上加下拉电阻,主要原因是:RS-485总线在idle状态,电平是不固定的,即电平在-200mV~+200mV之间,收发器可能输出高也可能输出低,UART在空闲时需要保持高电平的,如果此时收发器输出一个低电平,对UART来说是一个start bit,会导致通信异常,关于Ru和Rd的阻值在这里不作过多赘述,后面有机会会详细写一篇文章。

     

    关于第二点,需要注意:

    ① A上加上拉,B上加下拉,接反数据通信也可能出错。

    ② 某些收发器内部集成上下拉电阻,则外部不需要再添加。

     

    如果测试?

    福禄克DSX2-8000可以测试RS-485和CAN

    展开全文
  • Schaevitz HC-485 RS-485位移传感器pdf,Schaevitz HC-485 RS-485位移传感器
  • 波仕电子微型通用RS-232/RS-485/RS-422/光纤转换器pdf,波仕电子微型通用RS-232/RS-485/RS-422/光纤转换器
  • RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为...
  • 一、RS-232、RS-422与RS-485的由来 RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容...
  • 常见的串口协议有RS-232、RS-422、RS-485等,他们之间有何细微差别?下面我们就一起来探讨一下。  一、UART是什么  UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是...
  • 三旺 MODEL277H (RS-232/RS-485/RS-422接口光纤MODEM).pdfpdf,三旺 MODEL277H (RS-232/RS-485/RS-422接口光纤MODEM).pdf
  • TIAEIA-485 (RS-485)接口电路.pdf
  • 武汉波仕单片机用TTL电平RS-232/RS-485/RS-422转换器pdf,
  • 文章目录一、UART是什么二、RS-232标准三、RS-485、RS-422标准四、RS-232与RS-485对比五、RS-422与RS-485对比六、影响RS-485总线通讯速度和通信可靠性的三个因素七、RS-485总线的负载能力和通讯电缆长度之间的关系八...


    串口通讯是电子工程师面对的最基本的一个通讯方式,RS-232是其中最简单的一种。然而,很多初学者往往搞不清楚UART和RS-232、RS-422、RS-485的联系和区别,本文将谈谈这几个概念的理解,帮助大家理清它们之间的关系。

    通讯问题,和交通问题一样,也有高速、低速、拥堵、中断等等各种情况。如果把串口通讯比做交通,UART比作车站,那么一帧的数据就好比汽车。汽车跑在路上,要遵守交通规则。如果是市内,一般限速30、40,而高速公路则可以到120。而汽车走什么路,限速多少,就要看协议怎么规定了。常见的串口协议有RS-232、RS-422、RS-485等,他们之间有何细微差别?下面我们就一起来探讨一下。

    一、UART是什么

    UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器,是设备间进行异步通信的关键模块。UART负责处理数据总线和串行口之间的串/并、并/串转换,并规定了帧格式;通信双方只要采用相同的帧格式和波特率,就能在未共享时钟信号的情况下,仅用两根信号线(Rx 和Tx)就可以完成通信过程,因此也称为异步串行通信。
    在这里插入图片描述

    若加入一个合适的电平转换器,如SP3232E、SP3485,UART 还能用于RS-232、RS-485 通信,或与计算机的端口连接。UART 应用非常广泛,手机、工业控制、PC 等应用中都要用到UART。
    在这里插入图片描述

    UART使用的是 异步,串行通信。

    串行通信是指利用一条传输线将资料一位位地顺序传送。特点是通信线路简单,利用简单的线缆就可实现通信,降低成本,适用于远距离通信,但传输速度慢的应用场合。

    异步通信以一个字符为传输单位,通信中两个字符间的时间间隔多少是不固定的,然而在同一个字符中的两个相邻位间的时间间隔是固定的。

    数据传送速率用波特率来表示,即每秒钟传送的二进制位数。例如数据传送速率为120字符/秒,而每一个字符为10位(1个起始位,7个数据位,1个校验位,1个结束位),则其传送的波特率为10×120=1200字符/秒=1200波特。

    数据通信格式如下图:

    在这里插入图片描述

    其中各位的意义如下:

    起始位:先发出一个逻辑”0”信号,表示传输字符的开始。数据位:可以是5~8位逻辑”0”或”1”。如ASCII码(7位),扩展BCD码(8位)。小端传输校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验)停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。

    注:异步通信是按字符传输的,接收设备在收到起始信号之后只要在一个字符的传输时间内能和发送设备保持同步就能正确接收。下一个字符起始位的到来又使同步重新校准(依靠检测起始位来实现发送与接收方的时钟自同步的)
    在这里插入图片描述

    二、RS-232标准

    RS-232是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号。RS-232是对电气特性以及物理特性的规定,只作用于数据的传输通路上,它并不内含对数据的处理方式。需要说明一下,很多人经常把RS-232、RS-422、RS-485 误称为通讯协议,这是很不应该的,其实它们仅是关于UART通讯的一个机械和电气接口标准(顶多是网络协议中的物理层面)。

    该标准规定采用一个25 个脚的DB-25 连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC 机将RS-232 简化成了DB-9 连接器,从而成为今天的事实标准。而工业控制的RS-232 口一般只使用RXD(2)、TXD(3)、GND(5) 三条线。
    在这里插入图片描述

    早期由于PC都带有RS-232接口,所以我们需要使用UART时,都选择RS-232。但是现在个人电脑,不光是笔记本,包括台式机都不再带有RS-232的接口,大家看到电脑主板上面没有DB9的接口。所以现在开发板都选择TTL的UART,或者直接UART转USB做在开发板上。

    嵌入式里面说的串口,一般是指UART口, 但是我们经常搞不清楚它和COM口的区别, 以及RS232, TTL等关系, 实际上UART,COM指的物理接口形式(硬件), 而TTL、RS-232是指的电平标准(电信号).

    UART有4个pin(VCC, GND, RX, TX), 用的TTL电平, 低电平为0(0V),高电平为1(3.3V或以上)。

    在这里插入图片描述

    三、RS-485、RS-422标准

    RS-232接口可以实现点对点的通信方式,但这种方式不能实现联网功能。于是,为了解决这个问题,一个新的标准RS-485产生了。RS-485的数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定义为B。

    通常情况下,发送驱动器A、B之间的正电平在+2~+6V,是一个逻辑状态,负电平在-2~6V,是另一个逻辑状态。另有一个信号地C,在RS-485中还有一“使能”端,而在RS-422中这是可用可不用的。

    RS-422 的电气性能与RS-485完全一样。主要的区别在于:RS-422 有4 根信号线:两根发送、两根接收。由于RS-422 的收与发是分开的所以可以同时收和发(全双工),也正因为全双工要求收发要有单独的信道,所以RS-422适用于两个站之间通信,星型网、环网,不可用于总线网;RS-485 只有2 根信号线,所以只能工作在半双工模式,常用于总线网。

    在这里插入图片描述

    RS-485的电气特性:逻辑“1”以两线间的电压差为+(26)V表示;逻辑“0”以两线间的电压差为-(26)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。

    RS-485的数据最高传输速率为10Mbps 。

    RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。

    RS-485最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。

    由于RS-232 接口标准出现较早,难免有不足之处,主要有以下四点:

    (1) 接口的信号电平值较高,易损坏接口电路芯片,又因为232电平与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接;

    (2) 传输速率较低,在异步传输时,波特率为20Kbps。现在由于采用了新的UART芯片,波特率达到115.2Kbps(1.832M/16);

    (3) 接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱;

    (4) 传输距离有限,最大传输距离标准值为50 米,实际上也只能用在15 米左右;

    (5) RS-232 只容许一对一的通信,没有考虑构成串行总线。(这点很重要,在很多控制场景,是一控多,如果主设备都需要跟从设备点对点通信,那现场布线成蜘蛛网了)

    在这里插入图片描述

    非平衡型串行通信接口RS-423,RS-449

    在这里插入图片描述
    在这里插入图片描述

    平衡型串行通信接口RS-422

    RS-422(EIA RS-422-A Standard)是Apple的Macintosh计算机的串口连接标准。RS-422使用差分信号,RS-232使用非平衡参考地的信号。差分传输使用两根线发送和接收信号,对比RS-232,它能更好的抗噪声和有更远的传输距离。在工业环境中更好的抗噪性和更远的传输距离是一个很大的优点。

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    四、RS-232与RS-485对比

    1、抗干扰性:RS485 接口是采用平衡驱动器和差分接收器的组合,抗噪声干扰性好。RS232 接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰。

    2、传输距离:RS485 接口的最大传输距离标准值为 1200 米(9600bps 时),实际上可达 3000 米。RS232 传输距离有限,最大传输距离标准值为 50 米,实际上也只能用在 15 米左右。

    3、通信能力:RS-485 接口在总线上是允许连接多达128个收发器,用户可以利用单一的 RS-485 接口方便地建立起设备网络。RS-232只允许一对一通信。

    4、传输速率:RS-232传输速率较低,在异步传输时,波特率为 20Kbps。RS-485 的数据最高传输速率为 10Mbps 。

    5、信号线:RS485 接口组成的半双工网络,一般只需二根信号线。RS-232 口一般只使用 RXD、TXD、GND 三条线 。

    6、电气电平值:RS-485的逻辑"1"以两线间的电压差为+(2-6) V 表示;逻辑"0"以两线间的电压差为-(2-6)V 表 示 。在 RS-232-C 中任何一条信号线的电压均为负逻辑关系。即:逻辑"1",-5- -15V;逻辑"0 " +5- +15V 。

    五、RS-422与RS-485对比

    RS-485的电气性能与RS-422完全一样。主要的区别在于:

    1、RS-422 有4 根信号线:两根发送(Y、Z)、两根接收(A、B)。由于RS-422 的收与发是分开的所以可以同时收和发(全双工)。

    2、RS-485 只有两根数据线:发送和接收都是A 和B。由于RS-485 的收与发是共用两根线,所以不能同时收和发(半双工)。

    RS-485标准采用平衡式发送,差分式接收的数据收发器来驱动总线,具体规格要求:

    接收器的输入电阻RIN≥12kΩ

    驱动器能输出±7V的共模电压

    输入端的电容≤50pF

    在节点数为32个,配置了120Ω的终端电阻的情况下,驱动器至少还能输出电压1.5V(终端电阻的大小与所用双绞线的参数有关)

    接收器的输入灵敏度为200mV(即(V+)-(V-)≥0.2V,表示信号“0”;(V+)-(V-)≤-0.2V,表示信号“1”)
    在这里插入图片描述

    因为RS-485的远距离、多节点(32个)以及传输线成本低的特性,使得EIA RS-485成为工业应用中数据传输的首选标准。

    (1) RS-485 的电气特性:发送端:逻辑“0”以两线间的电压差+(2 ~6)V 表示;逻辑“1”以两线间的电压差-(2 ~6)V 表示。接收端:A 比B 高200mV 以上即认为是逻辑“0”,A 比B 低200mV 以上即认为是逻辑“1”;

    (2) RS-485 的数据最高传输速率为10Mbps。但是由于RS-485 常常要与PC 机的RS-232 口通信,所以实际上一般最高115.2Kbps。又由于太高的速率会使RS-485 传输距离减小,所以往往为9600bps 左右或以下;

    (3) RS-485 接口是采用平衡驱动器和差分接收器的组合,抗噪声干扰性好;

    (4) RS-485 接口的最大传输距离标准为1200 米(9600bps 时),实际上可达3000米,RS-485 接口在总线上是容许连接多达128 个收发器、即RS-485 具有多机通信功能,这样用户可以利用单一的RS-485 接口方便的建立起网络。因为RS-485 接口组成的半双工网络,一般只需二根信号线,所以RS-485 接口均采用双绞线传输。RS-485 的国际标准并没有规定RS-485 的接口连接器标准、所以采用接线端子或者DB-9、DB-25 等连接器都可以。

    在使用RS-485 接口时,对于特定的传输线径,从发生器到负载其数据信号传输所容许的最大电缆长度是数据信号速率的函数,这个长度数据主要是受信号失真及噪声等影响所限制。最大电缆长度与信号速率的关系曲线是使用24AWG 铜芯双绞电话电缆(线径为0.51mm),线间旁路电容为52.5PF/M,终端负载电阻为100 欧时所得出的。(引自GB11014-89 附录A)。当数据信号速率降低到90Kbit/S 以下时,假定最大容许的信号损失为6dBV 时,则电缆长度被限制在1200m。实际上,在实用时是完全可以取得比它大的电缆长度。当使用不同线径的电缆,则取得的最大电缆长度是不相同的。例如:当数据信号速率为600Kbit/S 时,采用24AWG 电缆,最大电缆长度是200m,若采用19AWG电缆(线径为0.91mm)则电缆长度将可以大于200m;若采用28AWG 电缆(线径为0.32mm),则电缆长度只能小于200m。

    RS-485的远距离通信建议采用屏蔽电缆,并且将屏蔽层作为地线。

    六、影响RS-485总线通讯速度和通信可靠性的三个因素

    1、在通信电缆中的信号反射

    在通信过程中,有两种信号因素导致信号反射:阻抗不连续和阻抗不匹配。

    阻抗不连续,信号在传输线末端突然遇到电缆阻抗很小甚至没有,信号在这个地方就会引起反射,如图所示。这种信号反射的原理,与光从一种媒质进入另一种媒质要引起反射是相似的。消除这种反射的方法,就必须在电缆的末端跨接一个与电缆的特性阻抗同样大小的终端电阻,使电缆的阻抗连续。由于信号在电缆上的传输是双向的,因此,在通讯电缆的另一端可跨接一个同样大小的终端电阻。

    在这里插入图片描述

    从理论上分析,在传输电缆的末端只要跨接了与电缆特性阻抗相匹配的终端电阻,就再也不会出现信号反射现象。但是,在实现应用中,由于传输电缆的特性阻抗与通讯波特率等应用环境有关,特性阻抗不可能与终端电阻完全相等,因此或多或少的信号反射还会存在。

    引起信号反射的另一个原因是数据收发器与传输电缆之间的阻抗不匹配。这种原因引起的反射,主要表现在通讯线路处在空闲方式时,整个网络数据混乱。

    信号反射对数据传输的影响,归根结底是因为反射信号触发了接收器输入端的比较器,使接收器收到了错误的信号,导致CRC校验错误或整个数据帧错误。

    在信号分析,衡量反射信号强度的参数是RAF(Refection AttenuationFactor反射衰减因子)。它的计算公式如式(1)。

    RAF=20lg(Vref/Vinc) (1)

    式中:Vref—反射信号的电压大小;Vinc—在电缆与收发器或终端电阻连接点的入射信号的电压大小。

    具体的测量方法如图3所示。例如,由实验测得2.5MHz的入射信号正弦波的峰-峰值为+5V,反射信号的峰-峰值为+0.297V,则该通讯电缆在2.5MHz的通讯速率时,它的反射衰减因子为:

    RAF=20lg(0.297/2.5)=-24.52dB
    在这里插入图片描述

    要减弱反射信号对通讯线路的影响,通常采用噪声抑制和加偏置电阻的方法。在实际应用中,对于比较小的反射信号,为简单方便,经常采用加偏置电阻的方法。在通讯线路中,如何通过加偏置电阻提高通讯可靠性的原理。

    2、在通讯电缆中的信号衰减

    第二个影响信号传输的因素是信号在电缆的传输过程中衰减。一条传输电缆可以把它看出由分布电容、分布电感和电阻联合组成的等效电路,如图所示。
    在这里插入图片描述

    电缆的分布电容C主要是由双绞线的两条平行导线产生。导线的电阻在这里对信号的影响很小,可以忽略不计。信号的损失主要是由于电缆的分布电容和分布电感组成的LC低通滤波器。PROFIBUS用的LAN标准型二芯电缆(西门子为DP总线选用的标准电缆),在不同波特率时的衰减系数如表1所示。

    电缆的衰减系数

    在这里插入图片描述

    3、在通讯电缆中的纯阻负载

    影响通讯性能的第三个因素是纯阻性负载(也叫直流负载)的大小。这里指的纯阻性负载主要由终端电阻、偏置电阻和RS-485收发器三者构成。

    在这里插入图片描述

    在叙述EIA RS-485规范时曾提到过RS-485驱动器在带了32个节点,配置了150Ω终端电阻的情况下,至少能输出1.5V的差分电压。一个接收器的输入电阻为12kΩ,整个网络的等效电路如图5所示。按这样计算,RS-485驱动器的负载能力为:

    RL=32个输入电阻并联2个终端电阻=((12000/32)×(150/2))/(12000/32)+(150/2))≈51.7Ω

    现在比较常用的RS-485驱动器有MAX485、DS3695、MAX1488/1489以及和利时公司使用的SN75176A/D等,其中有的RS-485驱动器负载能力可以达到20Ω。在不考虑其它诸多因素的情况下,按照驱动能力和负载的关系计算,一个驱动器可带节点的最大数量将远远大于32个。

    在通讯波特率比较高的时候,在线路上偏置电阻是很有必要的。偏置电阻的连接方法如图6。它的作用是在线路进入空闲状态后,把总线上没有数据时(空闲方式)的电平拉离0电平,如图7。这样一来,即使线路中出现了比较小的反射信号或干扰,挂接在总线上的数据接收器也不会由于这些信号的到来而产生误动作。
    在这里插入图片描述

    通过下面后例子了,可以计算出偏置电阻的大小:

    终端电阻Rt1=Rr2=120Ω;

    假设反射信号最大的峰-峰值Vref≤0.3Vp-p,则负半周的电压Vref≤0.15V;终端的电阻上由反射信号引起的反射电流Iref≤0.15/(120||120)=2.5mA。一般RS-485收发器(包括SN75176)的滞后电压值(hysteresis value)为50mV,即:

    (Ibias-Iref)×(Rt1||Rt2)≥50mV

    于是可以计算出偏置电阻产生的偏置电流Ibias≥3.33mA

    +5V=Ibias(R上拉+R下拉+(Rt1||Rt2)) (2)

    通过式2可以计算出R上拉=R下拉=720Ω

    在实际应用中,RS-485总线加偏置电阻有两种方法:

    (1)把偏置电阻平衡分配给总线上的每一个收发器。这种方法给挂接在RS-485总线上的每一个收发器加了偏置电阻,给每一个收发器都加了一个偏置电压。

    (2)在一段总线上只用一对偏置电阻。这种方法对总线上存在大的反射信号或干扰信号比较有效。值得注意的是偏置电阻的加入,增加了总线的负载。

    七、RS-485总线的负载能力和通讯电缆长度之间的关系

    在设计RS-485总线组成的网络配置(总线长度和带负载个数)时,应该考虑到三个参数:纯阻性负载、信号衰减和噪声容限。纯阻性负载、信号衰减这两个参数,在前面已经讨论过,现在要讨论的是噪声容限(Noise Margin)。RS-485总线接收器的噪声容限至少应该大于200mV。前面的论述者是在假设噪声容限为0的情况下进行的。在实际应用中,为了提高总线的抗干扰能力,总希望系统的噪声容限比EIA RS-485标准中规定的好一些。从下面的公式能看出总线带负载的多少和通讯电缆长度之间的关系:

    Vend=0.8(Vdriver-Vloss-Vnoise-Vbias)(3)

    其中:Vend为总线末端的信号电压,在标准测定时规定为0.2V;Vdriver为驱动器的输出电压(与负载数有关。负载数在5~35个之间,Vdriver=2.4V;当负载数小于5,Vdriver=2.5V;当负载数大于35,Vdriver≤2.3V);Vloss为信号在总线中的传输过程中的损耗(与通讯电缆的规格和长度有关),由表1提供的标准电缆的衰减系数,根据公式衰减系数b=20lg(Vout/Vin)可以计算出Vloss=Vin-Vout=0.6V(注:通讯波特率为9.6kbps,电缆长度1km,如果特率增加,Vloss会相应增大);Vnoise为噪声容限,在标准测定时规定为0.1V;Vbias是由偏置电阻提供的偏置电压(典型值为0.4V)。

    式(3)中乘以0.8是为了使通信电缆不进入满载状态。从式(3)可以看出,Vdriver的大小和总线上带负载数的多少成反比,Vloss的大小和总线长度成反比,其他几个参数只和用的驱动器类型有关。因此,在选定了驱动器的RS-495总线上,在通信波特率一定的情况下,带负载数的多少,与信号能传输的最大距离是直接相关的。具体关系是:在总线允许的范围内,带负载数越多,信号能传输的距离就越小;带负载数据少,信号能传输的距离就发越远。

    八、分布电容对RS-485总线传输性能的影响

    电缆的分布电容主是由双绞线的两条平行导线产生。另外,导线和地之间也存在分布电容,虽然很小,但在分析时也不能忽视。分布电容对总线传输性能的影响,主要是因为总线上传输的是基波信号,信号的表达方式只有“1”和“0”。在特殊的字节中,例如0x01,信号“0”使得分布电容有足够的充电时间,而信号“1”到来时,由于分布电容中的电荷,来不及放电,(Vin+)—(Vin-)-还大于200mV,结果使接爱误认为是“0”,而最终导致CRC校验错误,整个数据帧传输错误。具体过程如图所示。
    在这里插入图片描述

    由于总线上分布影响,导致数据传输错误,从而使整个网络性能降低。解决这个问题有两种方法:

    (1)降低数据传输的波特率;

    (2)使用分布电容小的电缆,提高传输线的质量。

    仅仅用一对双绞线将各个接口的A、B端连接起来,而不对RS-485通信链路的信号接地,在某些情况下也可以工作,但给系统埋下了隐患。RS-485接口采用差分方式传输信号并不需要对于某个参照点来检测信号系统,只需检测两线之间的电位差就可以了。但应该注意的是收发器只有在共模电压不超出一定范围(-7V至+12V)的条件下才能正常工作。当共模电压超出此范围,就会影响通信的可靠直至损坏接口。如图1所示,当发送器A向接收器B发送数据时,发送器A的输出共模电压为VOS,由于两个系统具有各自独立的接地系统存在着地电位差VGPD,那么接收器输入端的共模电压就会达到VCM=VOS+VGPD。RS-485标准规定VOS≤3V,但VGPD可能会有很大幅度(十几伏甚至数十伏),并可能伴有强干扰信号致使接收器共模输入VCM超出正常围,在信号线上产生干扰电流影响正常通信,或损坏设备。

    转自:https://blog.csdn.net/li5830/article/d

    展开全文
  • MODEL277B(RS-485RS-422接口光纤MODEM).pdf 介绍了关于MODEL277B(RS-485RS-422接口光纤MODEM)的详细说明,提供通讯接口设备的技术资料的下载。
  • 波士电子 超薄型RS-232/RS-485/RS-422双浪涌保护转换器使用说明书doc,波士电子 超薄型RS-232/RS-485/RS-422双浪涌保护转换器使用说明书
  • 台达IFD8510隔离式-RS-485/RS-422再生器pdf,台达IFD8510隔离式-RS-485/RS-422再生器:本产品主要功能是将原来存在的RS-485/RS-422差动信号作放大增强,使其通讯距离可更加延长1200公尺,或者增加32个通讯节点数。...
  • ISL32704E 收发器支持完全隔离的稳健型 ESD RS-485 接口,而 RV1S9160A 光电耦合器为其他 RS-232/RS-485 收发器提供隔离功能。 该解决方案支持语音识别和电容式触控功能。Wi-Fi 支持通过 WLAN 连接至云。另外,彩色 ...
  • RS-485、RS-422与RS-232仅仅是通讯的物理协议(即接口标准)有区别,RS-485与RS-422是差分传输方式,RS-232是单端传输方式,但通讯程序没有太多的差别。

    目录

    前言:

    1. RS-232(全双工)

    1.1 RS-232接口介绍:

    1.2 RS-232信号转换芯片介绍:

    1.3 接口电子特性:

    1.4 通讯距离长短:

    1.5 能否支持多点通讯:

    2. RS-485(半双工两线制)

    2.1 接口电子特性:

    2.2 SP3485信号转换芯片介绍:

    2.2 通讯距离长短:

    2.3 能否支持多点通讯:

    3. RS-422(全双工四线制)

    2.1 接口及传输特性:


    前言:

    RS-485、RS-422与RS-232仅仅是通讯的物理协议(即接口标准)有区别,RS-485与RS-422是差分传输方式,RS-232是单端传输方式,但通讯程序没有太多的差别。

    1. RS-232(全双工)

    1.1 RS-232接口介绍:

    RS-232标准采用的接口是9针或25针的D型插头,常用的一般是9针插头(DB9M)。

    1.2 RS-232信号转换芯片介绍:

    MAX232芯片是专为RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。MAX232芯片的作用是将单片机输出的TTL电平转换成PC机能接收的232电平或将PC机输出的232电平转换成单片机能接收的TTL电平(单片机的TTL电平规则是Signal<0.8V=0、Signal>2V=1),常用接口电路如下:

    1.3 接口电子特性:

    逻辑为1电压范围在+3 ~ +15V,逻辑为0电压范围在-3 ~ -15V。

    1.4 通讯距离长短:

    RS-232传输距离有限,最大传输距离标准值为15米,且只能点对点通讯,最大传输速率最大为20kB/s。

    1.5 能否支持多点通讯:

    RS-232接口在总线上只允许连接1个收发器,不能支持多站收发能力。

    2. RS-485(半双工两线制)

    2.1 接口电子特性:

    所采用的是差分信号(两根线)传输方式,逻辑为1时Signal两线电压差在+2 ~ +6V,逻辑为0时Signal两线电压差在-2 ~ -6V。

    2.2 SP3485信号转换芯片介绍:

    SP3485芯片是+3.3V低功耗半双工收发器,适用于RS-485和RS-422串行协议,作为RS-485串行协议时的电路设计图如下:

    2.2 通讯距离长短:

    RS-485最大无线传输距离为1200米。最大传输速率为10Mbps,在100Kb/S的传输速率下,才可以达到最大的通信距离。485通讯总线(必须用双绞线,或者网线的其中一组),如果用普通的电线(没有双绞)干扰将非常大,通讯不畅,甚至通讯不上。

    2.3 能否支持多点通讯:

    RS-485接口在总线上是允许连接多达128个收发器。即具有多站通讯能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。由于是半双工工作方式所以任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。

    3. RS-422(全双工四线制)

    2.1 接口及传输特性:

    RS-422和RS-485电路原理基本相同,都是以差动方式发送和接收,不需要数字地线。差动模式使得同速率条件传输距离更远,这正是二者与RS232的根本区别。

    RS-422通过两对双绞线可以全双工工作收发互不影响,RS485采用一对双绞线故只能半双工工作,发收不能同时进行,RS-422不允许出现多个发送端而只能有多个接受端。因为有两对双绞线实现全双工,故有四条信号线T/R+,T/R-,以及一条GND线。

    MAX232和SP3485芯片datasheet免费下载链接:https://download.csdn.net/download/Roger_717/12365039

     

    往期博客:

    通信的硬件层协议和软件层协议

    一看就会的MODBUS通信协议(上)

    展开全文
  • RS-232/RS-485转换器是应用于自动控制系统的一种通讯设备
  • 该电路采用MAX3162,它包含两个RS-485和RS-232发射器和接收器。这种IC包含范围广泛的通信设备,可以双向RS-485和RS-232信号转换之间。
  • 摘要:本文介绍了应用UT-201 接口转换器在监控计算机与现场智能仪表之间搭建一个RS-485网络来实现远程数据通信的方法,该方法通过开发VB 应用程序,从而实现点到多点/两线半双工通信方式。  1 引言  目前工业...
  • RS-232、RS-422和RS-485

    2019-06-13 16:37:49
    分别介绍了串口通信协议RS-232、RS-422和RS-485的基本概念和信息 本文介绍了串口通信协议RS-232、RS-422和RS-485的基本概念,包括波特率、数据位、停止位、奇偶校验位以及握手等信息。 1. 什么是串口? 串口通信...

    分别介绍了串口通信协议RS-232、RS-422和RS-485的基本概念和信息

    本文介绍了串口通信协议RS-232、RS-422和RS-485的基本概念,包括波特率、数据位、停止位、奇偶校验位以及握手等信息。

    1. 什么是串口?

    串口通信的概念十分简单。 串口按位发送和接收字节。 尽管比按字节传输的并行通信慢,但是串口很简单并且能够实现远距离通信。 例如, IEEE 488规范定义并行通信时指出,设备间线总长度不得超过20米,且任意两个设备间的距离不得超过2米;而串口通信的长度可达1200米。
     

    分别介绍了串口通信协议RS-232、RS-422和RS-485的基本概念和信息

    通常,串口用于传输ASCII数据。 通信使用3根线完成:(1) 地线,(2) 发送线,(3) 接收线。 由于串口通信是异步的,端口能够在一根线上发送数据的同时在另一根线上接收数据。 这种方式称为全双工传输。 其他线用于握手,但不是必须的。 串口通信最重要的参数是波特率、数据位、停止位和奇偶校验位。 对于两个进行通信的端口,这些参数必须匹配:

    波特率是衡量通信速度的参数。 它表示每秒钟传送的位数。 例如,300波特表示每秒钟发送300个位。 当我们提到串口中的时钟周期时,我们就是指波特率。 例如,如果协议需要4800波特率,那么时钟是4800Hz。 这意味着串口通信在数据线上的采样率为4800Hz。 通常电话线的波特率为14400、28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。 高波特率常常用于距离很近的仪器间的通信。

    数据位是衡量通信中实际数据位的参数。 当计算机发送一个信息包,实际的数据可能不是8位的, 标准的值是5、7和8位。 如何设置取决于您想传送的信息。 例如,标准的ASCII码是0~127(7位)。 扩展的ASCII码是0~255(8位)。 如果数据使用简单的文本(标准ASCII码),那么每个数据包使用7位数据。 每个包是指一个字节,包括开始/停止位、数据位和奇偶校验位。 由于实际数据位取决于所选的通信协议,术语“包”指任何通信的情况。

    停止位用于表示单个包的最后一位。 典型的值为1、1.5和2位。 由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。 因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。 适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。

    奇偶校验位是用于串口通信的一种简单的检错方式。 有四种检错方式:偶、奇、高和低。 当然没有校验位也是可以的。 对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。 例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。 如果是奇校验,校验位为1,这样就有3个逻辑高位。 高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。 这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或传输和接收数据是否不同步。

    2. 什么是RS-232?

    RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。用途十分广泛,比如连接鼠标、打印机或者调制解调器,同时也可以接工业仪器仪表。 用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。 RS-232只限于PC串口和设备间点对点的通信。 RS-232串口通信最远距离是50英尺。

    数据 
    TXD(引脚3) 串口数据输出 
    RXD(引脚2) 串口数据输入 
    握手 
    RTS(引脚7) 发送请求 
    CTS(引脚8) 清除发送 
    DSR(引脚6) 数据发送就绪 
    DCD (引脚1) 数据载波检测 
    DTR(引脚4) 数据终端就绪 
    地线 
    GND(引脚5) 地线 
    其他 
    RI(引脚9) 铃声指示

    表1:RS-232引脚功能

    3. 什么是RS-422?

     

    RS-422 (EIA RS-422-A Standard)是Apple Macintosh计算机的串口连接标准。 RS-422使用差分信号,RS-232使用非平衡参考地的信号。差分传输使用两根线发送和接收信号,对比RS-232,它能更好的抗噪声和有更远的传输距离。在工业环境中更好的抗噪性和更远的传输距离是一个很大的优点。

    4. 什么是RS-485?

    RS-485(EIA-485标准)是RS-422的改进,因为它增加了设备的个数,从10个增加到32个,同时定义了在最大设备个数情况下的电气特性,以保证足够的信号电压。 有了多个设备的能力,你可以使用单个RS-485串口建立设备网络。 由于出色抗噪和多点通讯能力,在工业应用中建立连向PC机的分布式设备网络、其他数据收集控制器、HMI或者其他操作时,串行连接会选择RS-485。 RS-485是RS-422的扩展集,因此所有的RS-422设备可以被RS-485控制。RS-485可以用超过4000英尺的线进行串行通信。

    数据 
    TXD+(引脚8) 串口数据输出(差分) 
    TXD-(引脚9) 串口数据输出(差分) 
    RXD+(引脚4) 串口数据输入(差分) 
    RXD-(引脚5) 串口数据输入(差分) 
    握手 
    RTS+(引脚3) 发送请求(差分) 
    RTS-(引脚7) 发送请求(差分) 
    CTS+(引脚2) 清除发送(差分) 
    CTS-(引脚6) 清除发送(差分) 
    DSR(引脚6) 数据发送就绪 
    地线 
    GND(引脚1) 地线

    表2:RS-485和RS-422引脚功能

    5. RS-232、RS-422和RS-485的区别是什么?

    RS-232是最常见的串口,是大部分兼容Windows的桌面计算机的一个标准组件。 如今通过USB到RS-232转换器使用RS-232更为常见。 RS-232只允许每根线使用一个发送器和接收器。 RS-232也使用全双工双数方式。 NI某些RS-232板卡支持的波特率最高达1 Mb/s,但大部分设备限于115.2 kb/s及以下。

    RS-422 (EIA RS-422-A Standard)是传统Apple计算机的串口连接标准。 该标准机制下的最高数据传输速度可达10 Mb/s。RS-422使用两根线发送每个信号,以增加最大波特率和线缆长度。 RS-422还指定用于多点通讯应用,一个发送器连接到最多10个接收器的总线并发送数据。

    RS-485是RS-422的扩展集,对这些能力进行了扩展。 RS-485解决了RS-422处理多点通讯的限制,通过同一数据线通信时最多允许32个设备。 RS-485总线上的任意从设备都可以与任意其他32个从设备进行通信,无需经由主设备。 由于RS-422是RS-485的子集,因而所有RS-422设备可能受RS-485控制。

    RS-485和RS-422都支持多点通讯能力,但RS-485可允许最多32个设备,而RS-422的限制为10个。对于这两种串行通讯协议,您都需要自己添加终端匹配电路。 所有NI RS-485板卡都兼容RS-422标准。

    下表对工作模式、驱动器和接收器总数、最大线缆长度和最大数据速率进行了比较。

    标准 RS-232 RS-422 RS-485 
    工作模式 单端 差分 差分 
    单根线上的驱动器/接收器数 1个驱动器
    1个接收器 1个驱动器
    10个接收器 32个驱动器*
    32个接收器 
    最大缆线长度 50 ft (2500 pF) 4000 ft 4000 ft 
    最大数据速率(最大线缆长度时) 160 kb/s(最高可达1 Mb/s) 10 Mb/s 10 Mb/s

    表3:RS-232、RS-422和RS-485规范

    *同一时间只有一个驱动器活动

    *同一时间只有一个驱动器活动

    6. 什么是握手?

    RS-232通行方式允许简单连接三线:TX、RX和地线。

    但是对于数据传输,双方必须对数据定时使用相同的波特率。 尽管这种方法对于大多数应用已经足够,但是对于接收方过载的情况这种使用受到限制。 这时需要串口的握手功能。 在这一部分,我们讨论三种最常用的RS-232握手形式:软件握手、硬件握手和Xmodem。

     

    软件握手:我们讨论的第一种握手是软件握手。 通常用在实际数据是控制字符的情况,类似于GPIB使用命令字符串的方式。 必须的线仍然是三根:TX、RX和地线,因为控制字符在传输线上和普通字符没有区别, 函数SetXModem允许用户使能或者禁止用户使用两个控制字符XON和OXFF。 这些字符在通信中由接收方发送,使发送方暂停。

    例如:假设发送方以高波特率发送数据。 在传输中,接收方发现由于CPU忙于其他工作,输入缓冲区已经满了。 为了暂时停止传输,接收方发送XOFF,典型的值是十进制19,即十六进制13,直到输入缓冲区清空。 一旦接收方准备好接收,它发送XON,典型的值是十进制17,即十六进制11,继续通信。 输入缓冲区半满时,LabWindows发送XOFF。 此外,如果XOFF传输被打断,LabWindows会在缓冲区达到75%和90%时发送XOFF。 显然,发送方必须遵循此守则以保证传输继续。

    此方式的最大缺点,也是最重要的概念:数值将不再使用十进制17和19。 由于这些数值为无字符数值,因此往往不会影响 ASCII 的传输作业;然而,若以二进制法传输数据,则极可能将这些数值作为数据进行传输,导致传输作业发生错误。
    硬件握手:第二种是使用硬件线握手。 和TX和RX线一样,RTS/CTS和DTR/DSR一起工作,一个作为输出,另一个作为输入。 第一组线是RTS (Request to Send)和CTS (Clear to Send)。 当接收方准备好接收数据,它置高RTS线表示就绪, 如果发送方也就绪,它置高CTS,表示它即将发送数据。 另一组线是DTR (Data Terminal Ready)和DSR (Data Set Ready)。 这些线主要用于调制解调器通信。 使得串口和调制解调器通信他们的状态。 例如:当调制解调器已经准备好接收来自PC的数据,它置高DTR线,表示和电话线的连接已经建立。 读取DSR线置高,PC机开始发送数据。 一个简单的规则是DTR/DSR用于表示系统通信就绪,而RTS/CTS用于单个数据包的传输。

    在LabWindows中,函数SetCTSMode使能或者禁止使用硬件握手。 如果CTS模式使能,LabWindows使用如下规则:

    当PC发送数据:

    RS-232库必须检测CTS线高后才能发送数据。

    当PC接收数据:

    如果端口打开,且输入队列有空接收数据,库函数置高RTS和DTR。
    如果输入队列90%满,库函数置低RTS,但使DTR维持高电平。
    如果输入队列近乎为空,库函数置高RTS,但使DTR维持高电平。
    如果端口关闭,库函数置低RTS和DTR。

    XModem握手:最后讨论的握手叫做XModem文件传输协议。 这个协议在调制解调器通信中非常通用。 尽管它通常使用在调制解调器通信中,XModem协议能够直接在其他遵循这个协议的设备通信中使用。 在LabWindows中,实际的XModem应用对用户隐藏了。 只要PC和其他设备使用XModem协议,在文件传输中就使用LabWindows的XModem函数。 函数是XModemConfig、XModemSend和XModemReceive。

    XModem使用介于如下参数的协议:start_of_data、end_of_trans、neg_ack、ack、wait_delay、start_delay、max_tries、packet_size。 这些参数需要通信双方认定。 标准的XModem有一个标准的定义;然而,可以通过XModemConfig函数修改,以满足具体需要。 这些参数的使用方法由接收方发送的字符neg_ack确定。 这通知发送方其准备接收数据。 它开始尝试发送,有一个超时参数start_delay;当超时的尝试超过max_tries次数,或者收到接收方发送的start_of_data,发送方停止尝试。 如果达到max_tries次数,将通知用户无法与发送方通信。 如果从发送方收到start_of_data,接收方将读取后继信息数据包。 包中含有包的数目、包数目的补码作为错误校验、packet_size字节大小的实际数据包,和进一步错误检查的求和校验值。 在读取数据后,接收方会调用wait_delay,然后向发送方发送响应。 如果发送方没有收到响应,它会重新发送数据包,直到收到响应或者超过重发次数的最大值max_tries。 如果一直没有收到响应,发送方通知用户传输数据失败。

    由于数据必须以pack_size个字节按包发送,当最后一个数据包发送时,如果数据不够放满一个数据包,后面会填充ASCII码NUL (0)字节。 这导致接收的数据比原数据多。 在XModem情况下一定不要使用XON/XOFF,因为XModem发送方发出包的数目很可能增加到XON/OFF控制字符的值,从而导致通信故障。

    转载处:http://m.elecfans.com/article/580143.html

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,481
精华内容 2,592
关键字:

rs-485