基于帧结构转发的rs-485总线集线器的制作方法

文档序号:7877236阅读:618来源:国知局
专利名称:基于帧结构转发的rs-485总线集线器的制作方法
技术领域
本实用新型涉及一种基于帧结构转发的RS-485总线集线器,更具体的说,尤其涉及一种通过检测与码元宽度相等的连续的高电平个数来判断帧传输结束与否的基于帧结构转发的RS-485总线集线器。
背景技术
RS-485总线采用平衡发送和差分接收,因此具有较高的共模 干扰抑制能力。接收器具有较高灵敏度,能够检测低达200 mV的电压,传输信号能在千米以外得到恢复。使用一对双绞线就能实现多站联网,构成分布式系统。而且设备简单、价格低廉,在适当的波特率下,能进行长距离通信,因而在远程有线数字通信和很多工业现场领域得到了非常广泛的应用。由于双绞线上的电平损耗,通信最大传输距离是1200m,因此更远距离的应用中必须使用中继器;网络节点数与所选芯片驱动能力和接收器的输入阻抗有关。RS-485标准规定了最大总线负载为32个单位负载,若应用中总线负载大于32个单位负载则必须使用中继器或集线器。RS-485总线是总线型拓扑结构,采用单一信道作为传输介质,所有节点通过相应硬件接口接至这个公共信道(总线)上,任何一个节点发送信息,所有其它节点都能接收。信息到达节点后,经过地址识别,符合的节点将信息接收下来。优点是所需电缆长度短,工作的可靠性较高,增加和减少节点都很容易。缺点一是布线复杂,需要从楼层的两端分别上楼层和下楼层,施工难度大;一般楼宇的上下线路都在竖井中,从其它的位置上下线路是不允许的,因此在实际的工程施工中,布设这种网络拓扑结构的总线往往十分困难。二是一条总线从头到尾连接各个节点,传输距离长,由于数据速率和传输距离的互相制约关系,传输速率难以提高。三是节点为32个,可能无法满足需要。四是所有节点都挂接在总线上,一个节点的故障可能影响整个网络,故障的检测需要在各节点上进行,比较困难。
发明内容本实用新型为了克服上述技术问题的缺点,提供了一种通过检测与码元宽度相等的连续的高电平个数来判断帧传输结束与否的基于帧结构转发的RS-485总线集线器。本实用新型的基于帧结构转发的RS-485总线集线器,包括与RS485总线相连接的一个主RS485接口电路和多个从RS485接口电路、产生高频脉冲的时钟电路以及用于产生时序控制信号的时序电路,所述RS485接口电路包括数据接收端RXD、数据发送端TXD和发送使能端DE ;其特征在于,还包括两个帧检测电路,主RS485接口电路的数据接收端RXD与一个帧检测电路的输入端相连接,所有从RS485接口电路的RXD经相与运算后与另一个帧检测电路的输入端相连接;所有主、从RS485接口电路的RXD信号相与运算后形成总接收数据;帧检测电路的输出端与时序电路的输入端以及除与本帧检测电路相连接的之外的所有RS485接口电路的发送使能端DE相连接;帧检测电路在数据接收端RXD的信号第一个下降沿输出高电平;高电平识别电路和低电平识别电路,输入端均与总接收数据端相连接;16位高电平计数器,输入端与高电平识别电路的输出与时钟电路的输出相与后形成的逻辑信号相连接;计数控制端与时序电路的输出相连接;16位低电平计数器,输入端与低电平识别电路的输出与时钟电路的输出相与后形成的逻辑信号相连接;计数控制端与时序电路的输出相连接;16位数据选择器,输入端与16位高电平计数器和16位低电平计数器均相连接;控制端与时序电路的输出相连接;16位锁存器,输入端与16位数据选择器的输出端连接;控制端与时序电路的输出信号相连接;第一 16位比较器,两组输入端分别与16位锁存器的输入端和输出端相连接,信号输出端与时序电路相连接;16位脉宽计数器,输入端与高电平识别电路的输出与时钟电路的输出信号相与后形成的逻辑信号相连接;第二 16位比较器,两组输入端分别与16位锁存器的输出和16位脉宽计数器的输出相连接;输出端与16位脉宽计数器的控制端相连接;4位计数器,输入端与第二 16位比较器的输出端相连接,控制端与时序电路的控制信号输出端相连接,4位计数器在数据接收端RXD出现零电平时清零;满量识别电路,用于产生帧发送完毕的识别信号,输入端与4位计数器的输出端相 连接,信号输出端与两个帧检测电路的控制输入端均相连接;所述主RS485接口电路的数据接收端RXD均与其余从RS485接口电路的数据发送端TXD相连接;其余从RS485接口电路的TXD端相与运算后接于主RS485接口电路的TXD端;时序电路的输入端还与总接收数据相连接;所述帧检测电路在满量识别电路输出信号的作用下输出信号变为低电平。RS485接口电路用于将总线信号放大和判决形成数据在RXD端出现,并将TXD端发送的数据形成与总线标准要求的信号;故障隔离电路通过故障识别电路的控制,隔离有故障的端口,防止其干扰其它端口的正常工作;帧检测电路在数据接收端RXD信号出现第一个下降沿时将输出信号置位为“I”电平,在满量识别电路输出的复位信号的作用下复位为“O”电平,形成收发转换控制信号;电平识别电路将帧内的高低电平分别送到相关与门进行计数时钟的分配;时序电路是在帧信号、数据高低电平和时钟信号的作用下,产生计数器、选择器和锁存器所需的各种控制信号;时钟电路产生高频的计数脉冲;计数器用于对数据脉宽内的时钟脉冲进行计数;比较器的作用是比较两个数据的大小,形成“大于”、“等于”和“小于”信号;锁存器在锁存时钟的作用下将数据锁存保持不变;满量识别电路的作用是在4位计数器计数满15个脉冲后产生识别脉冲。通过高、低电平计数器分别对高电平和低电平信号所对应的脉冲个数进行计数,并通过第一比较器的比较,最终将信号对应的最少的脉冲个数存储在锁存器中,使得锁存器中存储的数值为码元宽度所对应的脉冲个数,实现了码元宽度的测量;脉宽计数器用于对高电平所对应的脉冲个数进行计数,并通过4位计数器的高电平计数,低电平清零作用,使得4位计数的计数个数始终为连续的且与码元宽度相等的高电平个数,而一帧内一般不会有11个连续的高电平存在,而满量识别数为15个,因此使得4位计数器不会产生帧发送完毕的识别信号;只有一帧数据传送完毕时才能有连续的超过11码元宽度的高电平存在,使满量识别电路产生帧发送完毕的识别信号,完成一帧的数据转发。本实用新型的基于帧结构转发的RS-485总线集线器,包括故障识别电路以及数目与RS485接口电路数量相等的故障隔离电路,单个故障隔离电路接于单个数据接收端RXD上;故障识别电路的输入端与16位低电平计数器的输出信号相连接,故障识别电路的输出端与每个故障隔离电路均相连接。故障识别电路用于对发生故障的RS-485总线进行识别,故障隔离电路用于将发生故障的电路进行隔离,防止其影响正常的RS-485总线进行数据传输,也保证了故障诊断和查修的便利性。本实用新型的基于帧结构转发的RS-485总线集线器,所述RS485转发方式还可用于无线转发方式。本实用新型的基于帧结构转发的RS-485总线集线器,实现所述基于帧结构转发的RS-485总线集线器功能的器件为复杂可编程逻辑器件CPLD。由于转换电路复杂,如果采用常规的中小规模数字集成电路来实现,电路将十分繁杂,占用电路板面积大,功耗大,检测维修困难。尤其是集线器端口众多时,几乎无法实现;采用CPLD电路可以有效解决这个问题。本实用新型的有益效果是本实用新型的RS-485总线集线器根据RS-485总线数据传输中一帧内不可能有超过11个连续的与码元宽度相等的高电平存在的特点,首先检 测出码元宽度,然后再根据是否有超过15个连续的与码元宽度相等的高电平存在来对数据发送是否完毕进行判断,有效地实现了多路RS-485总线数据的转发,并抛弃了对数据传输速率的考虑,做到了真正自适应转发,无需进行任何设置,即插即用。通过设置故障识别电路和故障隔离电路,有效地实现了故障线路的诊断和隔离,保证了正常总线的工作。可以满足传输速率为300 115200bps的要求。

图I为RS-485总线集线器原理图;图2为RS-485总线信号收发常用芯片MAX485的管脚及真值表;图3为在RS-485总线中ModBus-RTU协议的字节格式;图4为ModBus-RTU协议中一帧数据的标准结构;图5为总线数目为两个的基于帧结构转发的RS-485总线集线器的电路方框图。图中1为第一路RS485接口电路,2为第二路RS485接口电路,3为时钟电路,4为第一路帧检测电路,5为第二路帧检测电路,6为高电平识别电路,7为低电平识别电路,8为时序电路,9为16位高电平计数器,10为16位数据选择器,11为16位低电平计数器,12为故障识别电路,13为第一 16位比较器,14为16位锁存器,15为16位脉宽计数器,16为第二 16位比较器,17为4位计数器,18为满量识别电路,19为故障隔离电路。
具体实施方式
以下结合附图与实施例对本实用新型作进一步说明。如图I所示,给出了 RS-485总线集线器原理图,集线器作为网络中枢连接各类节点,以形成星型、树形结构的一种网络设备。主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。即将一个总线端口接收到的信号从其他端口转发出去,并将其它总线端口返回的数据转发回原端口。RS-485集线器利用主485接口芯片把上位机总线侧的差分信号转换成控制侧的TTL电平,然后以广播方式分配给其它各支路的从485接口芯片,再由接口芯片再转换为差分信号发送到各从总线上。图I是四路集线器的应用方案,图的左侧RS-485主总线接上位机,右侧各分支路接下位机或设备。[0022]RS-485总线集线器的信号转发就是将主接口电路控制侧的数据接收端RXD接到其它从接口电路的发送端TXD,其它从接口电路的RXD同样接到主电路的TXD端。主总线接收信号时,其RXD收到的数据就可以从其它从端口的TXD发送出去。同样其它从总线接收信号时也同样转发回主路总线。RS-485信号的转发,需要有一个控制端才能实现。如图2所示,以常用芯片MAX485的管脚及其真值表为例进行说明。A、B为总线端,D为数据输入信号,R为数据输出信号,DE为发送控制端,/RE为接收控制端,通常将/RE和DE端连接在一起,作为收发控制信号。从真值表中可以看出,在发送信号时,需要将DE/RE控制信号置高电平,接收时置低电平。为了实现信号转发,收发控制信号的产生是关键技术。目前集线器普遍采用的方法有两种一是存储转发,这种方法使用单片机将接收的数据存储起来再进行转发,由单片机本身产生收发转换信号。这种转发方式的缺点是每传输I帧数据至少损失I个单位的接收时间(储存转发I帧数据的时间),不利于数据量大的实时通信。而且需要对集线器进行地址、协议和通信速率的设置才能实现,无法做到通用。·二是码元转发,利用接收数据中的低电平反向并增加一定延时后作为控制信号,即只将数据中的低电平转发,高电平是用在总线(A、B)上加偏置的方法来实现。因为在不发信号的空闲状态,D和R —直为高电平,加上偏置后,使A和B端的电压大于O. 2V,相当于发送了高电平。这是RS-485总线中继器和集线器常用的方法。这种转发方式是基于数据的码元来进行的,称为码元转发方式。这种转发方式的缺点之一是速率的适应范围窄,满足不了 300 115200bps的要求;收发转换信号中的延时是必须的,如果没有延时电路,在发送“O”电平后的“I”电平时,DE/RE立即为“O”电平,总线处于高阻状态,AB线上的高电平由偏置电阻产生。由于总线电抗特性的影响,需要约50μ s的上升时间才能稳定,通信速率将收到极大的影响,误码率高。转换信号增加延时后,在数据由“O”转“I”的一段时间内,DE/RE仍然为“I”电平,接口电路能立即在总线上发送真正的高电平。只有延时结束,DE/RE变为“O”电平后才由偏置电路提供总线上的高电平状态,总线延时时间大为缩短。由于此时总线上的高电平前端高(由发送电路提供)、后端低(由偏置电路提供),在此转换过程中,总线上将出现阶跃电压,对电磁兼容性十分不利。延时电路一般按照最高速率的码元宽度设计,难以满足低速率的要求;二是延时精度差,延时采用RC单稳电路,受元件参数和环境温度影响大。延时结束后,发送电路处于高阻状态,总线上所有接口处于接收状态,总线是空闲的,允许其它接口发送数据,因此容易引入总线冲突。特别是连续发送高电平数据时,发送电路处于高阻状态的时间越长,引入总线冲突的几率就越大;三是驱动能力差,降低节点数量。为了实现总线A-B > O. 2V的要求,偏置电路的阻值范围一般为O. 5 3ΚΩ左右,这些电阻加重了接口电路的负担,相应的就减少了带节点的数量。如采用0.5ΚΩ电阻,节点数就从32个下降到8个左右。为了实现集线器通用性、稳定性和无需任何设置的要求,对300 115200bps之间的任何速率、任何协议都要能够进行正确的转发,不可能采用由单片机组成的存储转发方式,因为它事先是需要知道速率才能工作的。由于无法预知下一帧需转发数据的传输速率究竟是多少,也就不能提前对单片机进行设置。而码元转发的也有不少缺点,尤其是电磁兼容差、节点数量降低以及转发速率的限制是不能接受的,因此急需一种能打破现有存储转发和码元转发局限性的转发方法。为此,根据RS-485总线数据传输的特点,提出了基于帧结构的转发方法及其构成的集线器。如图3所示,给出了 RS-485总线中ModBus-RTU协议的字节格式示意图,在RS-485总线各种协议的数据链路层中,信息传输为异步方式,以每字节为10位的格式进行传输。起始位为I位(为“O”电平)、数据位为8位、无奇偶校验位、停止位为I位(“I”电平),共计10位二进制。其它协议与之类似。如图4所示,给出了 ModBus-RTU协议中一帧数据的标准结构图,在RTU模式中,新的数据总是以至少3. 5个字节的静默时间开始,紧接着传送第一个域,即设备地址域。整帧的数据必须以一个连续的数据流进行传输。其中T1 T4都是I个字节的时间,即每帧之间有4个字节的高电平间隔。如果能够确定一个字节的长度,当高电平长度超过一个字节时,就可以认为本帧已经结束而停止转换。剩下的问题就是如何检测字节的长度了,只要知道通信速率,就容易确定字节长度。因此,为了实现正确的转发,就只能从收到的数据中侦测出数据的速率。我们采用了测量码元宽度的方法,即用帧内每个数据位对一个高速脉冲进行计数,通过计算找出码元宽度,以此为基准对高电平进行测量,当连续的宽度超过一个字节时,可以认为本帧结束。这就是帧转发的基本原理。常用RS-485总线的最高速率为115. 2kbps,最小码元宽度=8. 7 μ S ;最低速率为300bps,码元宽度=3. 33ms,考虑到如果数据位、校验位和结束位全部为“1”,则10个连“I”码最大宽度=33. 3ms,计数器范围至少=33. 3X1000/8. 7=3828,为了提高分辨精度,应该加大最小码元内的计数个数,设为16个,那么,计数范围=61248,采用16Bit计数器,计数范围=65536,可以满足要求。时钟频率=16 X 106/8· 7=1. 839MHz,采用2MHz正好满足要求。如图5所示,给出了总线数目为两个的基于帧结构转发的RS-485总线集线器的电路方框图,其包括第一 RS485接口电路I、第二 RS485接口电路2、时钟电路3、第一路帧检测电路4、第二路帧检测电路5、高电平识别电路6、低电平识别电路7、时序电路8、16位高电平计数器9、16位数据选择器10、16位低电平计数器11、故障识别电路12、第一 16位比较器13、16位锁存器14、16位脉宽计数器15、第二 16位比较器16、4位计数器17、满量识别电路18、故障隔离电路19 ;所示的第一 RS485接口电路I和第二 RS485接口电路2均由收发RS485总线数据的芯片组成,其包括数据接收端RXD、数据发送端TXD和发送使能端DE ;如果采用MAX485芯片,则数据接收端RXD和数据发送端TXD分别与RO和DI端口相对应。第一 RS485接口电路I的数据接收端RXDl与第二 RS485接口电路2的数据发送端TXD2相连接,第二 RS485接口电路2的数据接收端RXD2也与第一 RS485接口电路I的数据发送端TXDl相连接,以便实现信号的转发。RXDl端输出的信号经故障隔离电路后输入到第一路帧检测电路4的输入端,RXD2端输出的信号经故障隔离电路后输入到第二路帧检测电路5的输入端;第一路帧检测电路4的输出端接到发送使能端DE2,第二路帧检测电路5的输出端接到发送使能端DE1。两路帧检测电路(4、5)还受满量识别电路18输出信号的控制,帧检测电路在RXD端口产生接收信号第一个下降沿时输出高电平,在满量识别电路18的控制下置为低电平;这样在RXD端口出现信号时,进行RS-485数据的转发,在满量识别电路发出帧结束标志时,结束数据转发。通过故障隔离电路的RXDl和RXD2端口输出的信号,再经过与门运算产生的逻辑信号输入到高电平识别电路6、低电平识别电路7和时序电路8的输入端,高电平识别电路6和低电平识别电路7对待转发的RS-485总线上的高电平和低电平分别进行识别,以便通过计数器计算其对应的高频脉冲个数。高电平识别电路6输出的信号与时钟电路信号相与后输入到16位高电平计数器9的输入端,计算高电平对应的脉冲数目;同样地,低电平识别电路7输出的信号与时钟电路信号相与后输入到16位低电平计数器11的输入端,以计算低电平对应的脉冲数目;同时,16位高电平计数器9和16位低电平计数器11还受时序电路8输出信号的控制,以便进行准确计数。16位高电平计数器9和16位低电平计数器11的输出端均与16位数据选择器10的输入端相连接,16位数据选择器10在时序电路8信号的控制下,将计数完毕的计数器中的数据输入到16位锁存器14的输入端。第一 16位比较器13实现16位锁存器14输入端和输出端数据的比较;第一 16位比较器13的输出端与时序电路8相连接,16位锁存器14的控制端受时序电路8输出脉冲的控制;经比较器比较后,如果16位锁存器14的输入数据大于等于输出数据,时序电路8不产生锁存信号,数据自然丢弃;如果输入数据小于输出数据则发出锁存信号将输入数据进行锁存,通过不断地比较,锁存器在帧结束之前就可以得到码元宽度数据。16位脉宽计数器15的输入端与高电平识别电路6输出信号与时钟电路3的输出 信号相与后的逻辑信号相连接,用于对高电平所对应的脉冲个数进行计数;输出端与第二16位比较器16的输入端相连接,脉宽计数器的清零控制端受第二 16位比较器16输出信号的控制。16位脉宽计数器15用于比较16位锁存器14输出的信号与16位脉宽计数器15输出信号的大小,如果锁存器与脉宽计数器中的数据相等,则输出信号令4位计数器17加“I”、对16位脉宽计数器15清零使其重新计数。4位计数器17受时序电路的控制,只有在端口 RXD的数据为高电平的时候才处于计数状态,当RXD端口输出的数据为低电平,则被清零。这就使得4位计数器17中的数值始终为与16位锁存器14中存储的码元宽度相等的连续的高电平个数,由于一帧之内不可能有超过11个连续的与码元宽度相等的高电平存在,据此满量识别电路18可通过检测4位计数器17中的数值,来产生帧发送完毕信号,以便控制帧检测电路(4、5)发出停止发送的控制信号。这样,就可完整、准确地将一路RS-485上的数据转发到其他总线上;摒弃了对传输协议和速率的考虑,实现了基于帧结构转发的RS-485总线集线器,具有即插即用的方便性。假设第一路总线上出现信号,则RXDl=O,故障隔离电路19在正常状态下处于直通状态,RXDl信号加到第一路帧检测电路4,帧检测电路是一个触发器,RXD下降沿触发输出高电平,复位信号RES触发输出低电平。RXDl下降沿使一路帧检测电路输出高电平,DE2=1信号加到第二路RS485接口电路2上,将数据转发到总线上,完成信号的转发。两路信号经过与门合成总的接收信号RXD,送到三个方向,一路到高电平识别电路6,在帧内数据为“I”时输出高电平;二路到低电平识别电路7,在帧内信号为“O”时输出高电平;三路到时序电路8,产生计数器所需的清零、锁存、通道转换信号。由于此时RXD=O,则低电平识别电路7产生高电平,将右侧下方的与门开启,时钟信号通过此门后进入16位低电平计数器11中进行计数。在RXDl “O”电平结束变成“I”电平后,低电平计数器停止计数,高电平将右侧上方的与门打开,16位高电平计数器9开始工作;同时,将低电平计数器数据通过16位数据选择器10后锁存到16位锁存器14中;在RXDl “I”电平结束再次变成“O”电平后,高电平计数器停止计数,低电平计数器重新开始计数。高电平计数器中的数据通过数据选择器出现在16位锁存器14输入端,第一 16位比较器13将锁存器的输入数据和输出数据进行数值比较。如果输入大于等于输出,时序电路8不产生锁存信号,数据自然丢弃;如果输入数据小于输出数据则发出锁存信号将输入数据进行锁存。通过不断地比较,锁存器在帧结束之前就可以得到码元宽度数据。16位脉宽计数器15输出的数据与16位锁存器14输出数据在第二 16位比较器16中进行比较,相等时输出信号将脉宽计数器清零后重新开始计数,同时使4位计数器17增加一个数值,完成高电平与码元宽度的比较。4位计数器17还受时序电路控制,保证只有在RXD为“I”电平时计数、“O”电平时清零。因此4位计数器17在帧内永远不会计满11个数值,只有在本帧结束时数值才能超过11个。满量识别电路18可以在4位计数器17计满15个数值后输出复位信号RES,将帧检测电路复位,DE2=0,信号转发过程结束,完成一帧数据的转发。第二路总线上收到数据后,转发过程与之相同。故障识别电路12的作用是识别线路上是否出现故障,出现故障后,启动故障隔离电路19,将该路进行隔离,保证其它路正常工作。当故障消失后能够自动解除隔离。从上述 分析可以看出,收发转换控制信号DE在整个帧结构内始终处于高电平,将RXD数据的“ I ”、“O”电平都如实地转发了出去。因此驱动能力强,总线上的信号失真小,误码率低,电磁兼容性好。由于是从接收的数据中实时测量数据速率,适应性强,达到完全透明转发的目标。真正做到自适应转发,无需外界任何设置,即插即用。这种转发方式不但可以用于有线的RS-485总线信号转发,而且可以用于RS-485信号的无线转发,只要将DE信号接无线数传的PTT信号即可。具有很高的使用价值。多路信号的转发原理相同,需将故障隔离电路设置为与RS485接口电路相等的数目,并使主接口电路上的RXD、TXD作为一路信号的输入输出端,其余从接口电路上的RXD相与后及各从TXD作为另一路信号的输入输出端口即可。所有RS485接口电路上的RXD端口输出的信号经相与运算后形成总接收数据接到高电平识别电路6、低电平识别电路7和时序电路8上,就可以实现多路RS-485总线信号的转发。由于转换电路复杂,如果采用常规的中小规模数字集成电路来实现的话,电路将十分繁杂,占用电路板面积大,功耗大,检测维修困难;尤其是集线器端口众多时,几乎无法实现。采用CPLD电路可以有效低解决这个问题。CPLD (Complex Programmable LogicDevice)复杂可编程逻辑器件,是一种用户根据各自需要而自行构造逻辑功能的数字集成电路,它具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价格大众化等特点,可实现较大规模的电路设计,因此被广泛应用于产品的原型设计和产品生产之中。采用CPLD器件后,集线器的全部电路在一个芯片中实现,外部电路简单,抗干扰能力强,功耗低。时钟电路采用晶体振荡器,稳定度高,对速率的测量精度高,产生的转换信号准确。且具有较强的保密性,可以防止人为仿造。
权利要求1.一种基于帧结构转发的RS-485总线集线器,包括与RS485总线相连接的一个主RS485接口电路和多个从RS485接口电路、产生高频脉冲的时钟电路(3)以及用于产生时序控制信号的时序电路(8),所述RS485接口电路包括数据接收端RXD、数据发送端TXD和发送使能端DE ;其特征在于,还包括 两个帧检测电路,主RS485接口电路的数据接收端RXD与一个帧检测电路的输入端相连接,其余从RS485接口电路的RXD经相与运算后与另一个帧检测电路的输入端相连接;所有主、从RS485接口电路的RXD信号相与运算后形成总接收数据;帧检测电路的输出端与时序电路的输入端以及除与本帧检测电路相连接的之外的所有RS485接口电路的发送使能端DE相连接;帧检测电路在数据接收端RXD的信号第一个下降沿输出高电平; 高电平识别电路(6)和低电平识别电路(7),输入端均与总接收数据端相连接; 16位高电平计数器(9),输入端与高电平识别电路的输出与时钟电路的输出相与后形成的逻辑信号相连接;计数控制端与时序电路的输出相连接; 16位低电平计数器(11),输入端与低电平识别电路的输出与时钟电路的输出相与后形成的逻辑信号相连接;计数控制端与时序电路的输出相连接; 16位数据选择器(10),输入端与16位高电平计数器和16位低电平计数器均相连接;控制端与时序电路的输出相连接; 16位锁存器(14),输入端与16位数据选择器的输出端连接;控制端与时序电路的输出信号相连接; 第一 16位比较器(13),两组输入端分别与16位锁存器的输入端和输出端相连接,信号输出端与时序电路相连接; 16位脉宽计数器(15 ),输入端与高电平识别电路的输出与时钟电路的输出信号相与后形成的逻辑信号相连接; 第二 16位比较器(16),两组输入端分别与16位锁存器的输出和16位脉宽计数器的输出相连接;输出端与16位脉宽计数器的控制端相连接; 4位计数器(17),输入端与第二 16位比较器的输出端相连接,控制端与时序电路的控制信号输出端相连接,4位计数器在数据接收端RXD出现零电平时清零; 满量识别电路(18),用于产生帧发送完毕的识别信号,输入端与4位计数器的输出端相连接,信号输出端与两个帧检测电路的控制输入端均相连接; 所述主RS485接口电路的数据接收端RXD均与其余从RS485接口电路的数据发送端TXD相连接;其余从RS485接口电路的TXD端相与运算后接于主RS485接口电路的TXD端;时序电路的输入端还与总接收数据相连接;所述帧检测电路在满量识别电路输出信号的作用下输出信号变为低电平。
2.根据权利要求2所述的基于帧结构转发的RS-485总线集线器,其特征在于包括故障识别电路(12)以及数目与RS485接口电路数量相等的故障隔离电路(19),单个故障隔离电路接于单个数据接收端RXD上;故障识别电路的输入端与16位低电平计数器(11)的输出信号相连接,故障识别电路的输出端与每个故障隔离电路均相连接。
3.根据权利要求2或3所述的基于帧结构转发的RS-485总线集线器,其特征在于所述RS485转发方式还可用于无线转发方式。
4.根据权利要求2或3所述的基于帧结构转发的RS-485总线集线器,其特征在于实现所述基于帧结构转发的RS-485总线集线器功能的器件为复杂可 编程逻辑器件CPLD。
专利摘要本实用新型的基于帧结构转发的RS-485总线集线器,包括接口电路、时钟电路和时序电路;特征为还有帧检测电路、高低电平识别电路、计数器、比较器、锁存器、数据选择器以及满量识别电路;通过集成电路检测出数据的码元宽度,在有超过15个连续的与码元宽度相等的高电平存在时产生帧转发结束的标志,有效地实现了RS485总线数据的转发。本实用新型有效地实现了多路RS-485总线数据的转发,无需对速率进行考虑,做到了真正自适应转发,即插即用。避免自发自收的振荡现象发生、满足传输速率为300~115200bps的要求并可对故障电路进行隔离;可通过CPLD编程逻辑器件来实现。本实用新型还具有电路简单、抗干扰能力强、功耗低、稳定度高、速率测量精度高、转换信号准确的优点。
文档编号H04L12/40GK202602695SQ201220275069
公开日2012年12月12日 申请日期2012年6月12日 优先权日2012年6月12日
发明者黄程云 申请人:黄程云
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1