一种串行总线系统及地址分配方法技术方案

技术编号:12225537 阅读:98 留言:0更新日期:2015-10-22 02:40
本发明专利技术公开了一种串行总线系统和地址分配方法,串行总线上的多个节点通过时钟线及脉冲信号线连接,并且,相邻两个节点之间设置有延时电路,起始节点在时钟线及脉冲信号线上同时发送信号,其他节点根据接收到的两个信号的时间差计算出各自的地址。各节点的CPU不参与其他节点的地址分配过程,因此,即使串行总线上的某个节点故障或不在线,也不会影响其他节点的地址分配。

【技术实现步骤摘要】

本专利技术涉及串行总线
,更具体的说,是涉及。
技术介绍
串行总线(如RS485、CAN等)是采用一条电缆作总线,将各个节点串接起来进行通信的方式。由于其硬件设计简单、布线方便、成本低廉等优点,在工业控制、楼宇控制、环境监测、电子设备等各种场合中广泛应用。串行总线上的各个节点挂接上同一条总线上,一个节点发送的数据包,所有其他节点都能接收到。为了区分数据包的接收方,就必须对总线上的节点进行地址编码,并在数据包中增加接收方的地址信息。现有技术中,常用的一种为串行总线上的各节点分配地址的方法,S卩,将所有串行总线上的各个节点逐个级联,然后由第I个节点设置第2个节点的地址,再由第2个节点设置第3个节点的地址,以此类推,直至最后的节点。但是,上述为串行总线上的各节点分配地址的方法存在如下问题:各节点的CPU必须参与下一个节点的地址设置过程,因此当一个节点发生故障后,后续所有节点的地址都将无法正常分配。
技术实现思路
有鉴于此,本专利技术提供了一种串行总线系统及地址分配的方法,以克服现有技术中为串行总线上的各节点分配地址的方法由于各节点的CPU必须参与下一个节点的地址设置过程而导致的当一个节点发生故障后,后续所有节点的地址都将无法正常分配的问题。为实现上述目的,本专利技术提供如下技术方案:一种串行总线系统,包括:串接有多个节点的串行总线、时钟线以及脉冲信号线;相邻两个节点之间设置有延时电路;其中,任意两个相邻节点之间的连接方式具体如下:第一节点的第一端口通过所述脉冲信号线连接延时电路的脉冲信号输入端,所述延时电路的输出端通过所述脉冲信号线连接第二节点的第一端口;第一节点的第二端口通过所述时钟线连接延时电路的时钟信号输入端后,连接第二节点的第二端口;所述延时电路的时钟信号输入端发生上升沿变化的预设时间之后,所述延时电路的输出端为延时电路的脉冲信号输入端在时钟信号输入端发生上升沿变化的时刻的状态;所述延时电路的时钟信号输入端未发生上升沿变化时,所述延时电路的输出端的状态不改变。可选的,所述延时电路包括:D触发器和RC电路;其中,所述RC电路由电阻(R)和电容(C)组成;D触发器的第一输入端(DO)为所述延时电路的脉冲信号输入端;D触发器的第二输入端(CLKO)为所述延时电路的时钟信号输入端;D触发器的输出端(QO)与所述RC电路的电阻一端相连,所述RC电路的电阻的另一端连接所述RC电路的电容的一端后为所述延时电路的输出端;所述RC电路的电容的另一端接地。可选的,所述延时电路采用可编程逻辑器件构建。一种地址分配方法,应用于以上所述的串行总线系统,所述方法包括:为起始节点分配初始地址Si ;起始节点在脉冲信号线上发出一个脉冲,并在时钟线上发出周期为T的方波,其中所述脉冲的持续时间小于所述周期T ;当前节点计算接收到所述脉冲和所述方波的时间差;所述当前节点为除所述起始节点之外的其他节点中的任意一个节点;当前节点根据所述初始地址Si以及所述时间差计算自身地址。可选的,所述当前节点计算接收到所述脉冲和所述方波的时间差具体包括:从所述方波的第一个上升沿开始计时,到当前节点接收到的脉冲信号发生第一个上升沿时结束,获取当前节点的计时时间△ T作为所述时间差。可选的,所述根据所述初始地址Si以及所述时间差计算自身地址具体包括:根据公式sn = sl+(AT+T-t)/T计算当前节点的地址,其中,η为当前节点的顺序号,t为延时电路的延时时间,t < T/2。可选的,所述初始地址Si为O。可选的,所述初始地址Si为I。经由上述的技术方案可知,与现有技术相比,本专利技术公开了一种串行总线系统和地址分配方法,串行总线上的多个节点通过时钟线及脉冲信号线连接,并且,相邻两个节点之间设置有延时电路,起始节点在时钟线及脉冲信号线上同时发送信号,其他节点根据接收到的两个信号的时间差计算出各自的地址。各节点的CPU不参与其他节点的地址分配过程,因此,即使串行总线上的某个节点故障或不在线,也不会影响其他节点的地址分配。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例公开的一种串行总线系统的结构示意图;图2为本专利技术实施例公开的一种延时电路效果图;图3为本专利技术实施例公开的一种延时电路的具体结构;图4为本专利技术实施例公开的一种地址分配方法流程示意图;图5为本专利技术示例公开的一种串行总线系统的结构示意图;图6为本专利技术示例公开的一种电平变化示意图;图7为本专利技术实施例公开一种工业控制系统结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本专利技术的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。由
技术介绍
可知,现有技术中为串行总线上的各节点分配地址的方法由于各节点的CPU必须参与下一个节点的地址设置过程而导致当一个节点发生故障后,后续所有节点的地址都将无法正常分配。为此,本专利技术公开了一种串行总线系统和地址分配方法,串行总线上的多个节点通过时钟线及脉冲信号线连接,并且,相邻两个节点之间设置有延时电路,起始节点在时钟线及脉冲信号线上同时发送信号,其他节点根据接收到的两个信号的时间差计算出各自的地址。各节点的CPU不参与其他节点的地址分配过程,因此,即使串行总线上的某个节点故障或不在线,也不会影响其他节点的地址分配。为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本专利技术作进一步详细的说明。请参阅附图1,为本专利技术公开的一种串行总线系统的实施例1的结构示意图,该系统具体包括:串接有多个节点(节点1、节点2、……、节点m)的串行总线(LI)、时钟线(L2)以及脉冲信号线(L3);相邻两个节点之间设置有延时电路(A);其中,任意两个相邻节点之间的连接方式具体如下:第一节点的第一端口(BI)通过所述脉冲信号线连接延时电路的脉冲信号输入端,所述延时电路的输出端通过所述脉冲信号线连接第二节点的第一端口(BI);第一节点的第二端口(B2)通过所述时钟线连接延时电路的时钟信号输入端后,连接第二节点的第二端口(B2);所述延时电路的时钟信号输入端(CLK)发生上升沿变化的预设时间(即延时电路的延时时间)之后,所述延时电路的输出端(Q)为延时电路的脉冲信号输入端(D)在时钟信号输入端(CLK)发本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/CN104991881.html" title="一种串行总线系统及地址分配方法原文来自X技术">串行总线系统及地址分配方法</a>

【技术保护点】
一种串行总线系统,其特征在于,包括:串接有多个节点的串行总线、时钟线以及脉冲信号线;相邻两个节点之间设置有延时电路;其中,任意两个相邻节点之间的连接方式具体如下:第一节点的第一端口通过所述脉冲信号线连接延时电路的脉冲信号输入端,所述延时电路的输出端通过所述脉冲信号线连接第二节点的第一端口;第一节点的第二端口通过所述时钟线连接延时电路的时钟信号输入端后,连接第二节点的第二端口;所述延时电路的时钟信号输入端发生上升沿变化的预设时间之后,所述延时电路的输出端为延时电路的脉冲信号输入端在时钟信号输入端发生上升沿变化的时刻的状态;所述延时电路的时钟信号输入端未发生上升沿变化时,所述延时电路的输出端的状态不改变。

【技术特征摘要】

【专利技术属性】
技术研发人员:张国亮陈健吕炜曹焱王文伟
申请(专利权)人:浙江中控技术股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1