|
发表于 2003-8-12 22:59:56
|
显示全部楼层
RS-232至RS-485/RS-422接口的智能转换器
日 期 2002-8-9
作 者 MAXIM北京办事处北京8328信箱 刘武光
关键词 RS-232 RS-485 RS-422 接口 智能转换器
摘 要 详细地介绍了如何从RS-232信号线上高效率地产生电源,如何实现RS-232接口与RS-485RS-422接口的智能转换,同时,也给出了具体的硬件设计及软件设计方法。
内 容 随着计算机在工业的广泛应用,控制局域网络也深入应用到各行各业之中。现行的诸多控制系统,若采用单机控制方式已越来越难以满足设备控制的要求,因为往往我们所控制的设备只是整个系统的一个基本单元,它既需要外部输入一些必要的信息,同时,也需要向外部输出自身的运行参数和状态。所有这些,都要求我们采用控制网络技术,将众多设备有机地连成一体,以保证整个系统安全可靠地运行。
目前,在我国应用的现场总线中,RS-485RS-422使用最为普遍。当用户要将基于标准的RS-232接口设备,如PC机,连接至由RS-485RS-422构成的通讯网络时,则必须作RS-232和RS-485RS-422之间的电平转换。传统的做法是在设备内扩展一个通讯适配卡,由通讯适配卡实现电平转换,内部主机再通过并行总线读出或写入数据。显然,这种设计方法存在下列缺点:
· 由于适配卡是基于某一种总线标准扩展的,而不是基于RS-232电平标准,所以其应用范围受到限制,只能一种适配卡适用一种总线(如ISA适配卡不可能插入STD总线或用户自定义的总线),其通用性较差;
· 虽然实现的仅仅是电平转换,但是由于需要考虑与扩展总线的接口和增加一个标准的UART,并且需要占用系统的其它宝贵资源,使硬件和软件变得过于复杂;
· 复杂的硬件设计大大增加了元器件的数目和电路板面,使适配卡的成本过高;
· 由于采用内置插卡方式,使变更通信方式比较麻烦,如将半双工通信方式设置为全双工方式等。另外,维修和测试也比较麻烦;
· 对于现有的基于RS-232的设备,在无法变动系统软件和硬件的情况下,显然适配卡无法将这些设备连成基于RS-485或RS-422通信网络的分布式系统。
为了克服上述缺点,同时考虑到RS-232接口的自身特点,我们设计了一种小巧的、无须外部供电的智能收发转换器,实现RS-232和RS-485RS-422之间的电平转换。
1 功能描述及结构框图
本智能转换器作为一个独立的电平转换控制器,涉及线上取电、发送和接收状态的智能切换、通信方式设置、RS-232电平与RS-485RS-422电平之间的转换等方面。具体描述如下:
· 从RS-232接口上取电
由于不采用外部供电方式,则必须从RS-232接口线取电,为内部元器件供电。我们知道,标准的RS-232接口定义中,TXD、RTS和DTR是RS-232电平输出。设计一个DC-DC转换器,从这些信号上,能够为系统提供一定的电源功率。
· 低功耗微处理器
微处理器通过监测TXD信号的变化,决定是否允许数据发送和数据接收。另外,有关通信方式、波特率和半/双工工作方式选择也是通过TXD信号,或I/O口来设定的。
· RS-232电平与TTL电平之间的转换
· RS-485RS-422电平与TTL电平之间的转换
2 工作原理
该智能转换器必须解决两个关键问题,即如何从RS-232线上获得电源和RS-485RS-422接口驱动所需的功率,和如何智能控制RS-485RS-422的收发使能。
2。1 电源方案
标准的RS-232定义中,有三个发送信号:TXD,RTS和DTR。每根线上的典型输出电流为±8mA/±12V,考虑到TXD为负电平(处于停止发送,或发送数字“1”时)的时间较多,因而电源转换决定采用负电源输入,以最大限度地增加电源输入功率,升压至所需的工作电源。从RTS和DTR上输入功率=2×8×12mW=192mW。另外,由于通讯为间歇工作方式,所以输入电源端的储能电容和TXD(为负电平时)能够补充一定的功率。假设,我们设计一个效率为85%、输出电压为3V的DC-DC转换器,则输出电流可达54.5mA。
2.2 智能控制收发使能
RS-232通讯接口采用电平方式传输,适用于点-点通讯,无须专门的收发使能控制;而对于RS-485RS-422通讯接口则不同,由于采用差分电平方式传输,且允许在一条通讯总线上挂接多个节点,必然要求各个节点能够独立地控制总线驱动器关断或打开,保证不会影响到其它节点的正常通讯。为了简化与转换器RS-232接口端相连的软件工作,更重要的是为了提高本转换器的通用性和灵活性(即插即用,无须要求用户更改任何相关软件和硬件),本转换器内置微处理器,实现收发使能的智能控制。具体方法:微处理器在检测到UART的通信起始位后,打开发送使能,允许串行数据发送至RS-485RS-422通讯网络。微处理器根据所设定的波特率延时至UART停止位发送一半时(例如11位格式时,延时10.5T,),开始检测是否有下一个起始位到来。在时间T内,若有下一个起始位到来,则保持发送状态,否则将关闭发送使能,结束数据发送。
3 硬件设计
由于本转换器供电来自RS-232信号线,其输入功率受到限制,因而在本设计中将尽可能地采用+3V供电的低功耗器件,保证总电流小于54.4mA。主要包括4个部分:DC-DC转换器、RS-232接口、RS-485RS-422接口和微处理器。分别介绍如下:
3.1 DC-DC转换器
显然,还没有一个DC-DC转换器能 |
|