一种数据转发方法及电源模块技术

技术编号:33399772 阅读:11 留言:0更新日期:2022-05-11 23:20
本发明专利技术提供了一种数据转发方法及电源模块,该方法包括:各个外设内部注册自身可转发的协议ID;请求者外设向数据转发装置发送请求信息,包括待转发数据的地址、协议ID以及执行者ID;数据转发装置将待转发数据的地址、协议ID装载至执行者ID对应的执行者外设的第一预设缓存区内;执行者外设根据第一预设缓存区内的地址提取待转发数据,以及根据第一预设缓存区内的协议ID,从注册的自身可转发的协议ID中查找相应协议,并调用相应协议对待转发数据进行转发。本发明专利技术能够实现各个外设之间进行数据转发时根据请求者外设要求的协议转发数据。转发时根据请求者外设要求的协议转发数据。转发时根据请求者外设要求的协议转发数据。

【技术实现步骤摘要】
一种数据转发方法及电源模块


[0001]本专利技术属于数据传输
,尤其涉及一种数据转发方法及电源模块。

技术介绍

[0002]无论是充电桩中的电源模块、车载电源模块、军品电源模块还是电力电源模块,在进行内部设计时,通常会设计前后级结构,前后级之间通过串口通讯进行协调,从而实现电源模块的正常运行。但是,电源模块对外一般只有CAN通讯,接收到的一帧客户协议信息有可能是控制前级的操作,此时需要串口通讯模块(本文将通讯模块称为外设)直接转发CAN接收到的协议信息。即执请求者外设提出数据转发请求,执行者外设执行发送任务。
[0003]多个请求者外设请求执行者外设执行发送功能时,要求使用的转发协议可能不同,如何根据请求者外设要求的协议转发数据是亟需解决的问题。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供了一种数据转发方法及电源模块,以在各个外设之间进行数据转发时根据各个请求者外设要求的协议转发数据。
[0005]本专利技术实施例的第一方面提供了一种数据转发方法,该方法用于实现各个外设之间的数据转发,各个外设均与数据转发装置连接;
[0006]该方法包括:
[0007]各个外设内部注册自身可转发的协议ID;
[0008]请求者外设向数据转发装置发送请求信息;其中,请求信息包括待转发数据的地址、协议ID以及执行者ID;
[0009]数据转发装置将待转发数据的地址、协议ID装载至执行者ID对应的执行者外设的第一预设缓存区内;
[0010]执行者外设根据第一预设缓存区内的地址提取待转发数据,以及根据第一预设缓存区内的协议ID,从注册的自身可转发的协议ID中查找相应协议,并调用相应协议对待转发数据进行转发。
[0011]可选的,各个外设还内部注册自身可转发协议的回调函数和校验方式;
[0012]相应的,调用相应协议对待转发数据进行转发,包括:
[0013]调用注册的相应协议的回调函数和校验方式对待转发数据进行转发。
[0014]可选的,在各个外设内部注册自身可转发的协议ID之前,还包括:
[0015]各个外设判断自身已注册的协议ID数量是否达到最大值;
[0016]若自身已注册的协议ID数量达到最大值,则停止注册新的协议ID。
[0017]可选的,请求信息还包括驱动端口信息;
[0018]相应的,数据转发装置还用于将驱动端口信息装载至执行者ID对应的执行者外设的第二预设缓存区内;
[0019]相应的,执行者外设根据第一预设缓存区内的地址提取待转发数据,以及根据第
一预设缓存区内的协议ID,从注册的自身可转发的协议ID中查找并调用相应协议之后,基于第二预设缓存区内的驱动端口信息选择相应的驱动端口对待转发数据进行转发。
[0020]可选的,各个外设还将自身的外设ID、缓存区写索引地址、驱动端口信息外部注册到数据转发装置。
[0021]可选的,将待转发数据的地址、协议ID装载至执行者ID对应的执行者外设的第一预设缓存区内,将驱动端口信息装载至执行者ID对应的执行者外设的第二预设缓存区内,包括:
[0022]根据缓存区写索引地址,将待转发数据的地址、协议ID装载至执行者ID对应的执行者外设的第一预设缓存区内,将驱动端口信息装载至执行者ID对应的执行者外设的第二预设缓存区内;
[0023]以及,在装载完成后更新缓存区写索引地址。
[0024]可选的,外设的类型包括下述至少一种:CAN外设、串口外设、网口外设、SPI外设、IIC外设。
[0025]可选的,各个外设的外设ID统一编码,任意两个外设的外设ID均不相同。
[0026]可选的,各个外设可转发协议的协议ID统一编码,任意两个协议ID均不相同。
[0027]本专利技术实施例的第二方面提供了一种电源模块,包括数据转发装置和多个外设,数据转发装置与各个外设连接,各个外设之间通过如上述第一方面的数据转发方法进行数据转发。
[0028]本专利技术实施例与现有技术相比存在的有益效果是:
[0029]本专利技术实施例中各个外设之间进行数据转发时,请求者外设和执行者外设之间不进行直接联系,而是通过设置的数据转发装置进行联系,从而在具有多个请求者和多个执行者的“多对多”的转发模式下,能够减少各个外设之间的强耦合,降低转发程序复杂度和代码量;并且,请求者外设发送的请求信息中携带有协议ID,通过数据转发装置将该协议ID装载至执行者外设的第一预设缓存区,执行者外设能够根据各个请求者外设要求的协议转发数据。
附图说明
[0030]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0031]图1是本专利技术实施例提供的外设连接关系示意图;
[0032]图2是本专利技术实施例提供的系统交互示意图;
[0033]图3是本专利技术实施例提供的外设内部注册的流程示意图;
[0034]图4是本专利技术实施例提供的执行者执行数据转发的流程示意图。
具体实施方式
[0035]以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本专利技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体
细节的其它实施例中也可以实现本专利技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本专利技术的描述。
[0036]为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。
[0037]在本专利技术实施例中,电源模块需要内部的前后级电路协调运行,因此要求前后级能够串口通讯,而电源模块对外只有CAN通讯,接收到的一帧客户协议信息有可能是控制前级的操作,此时需要前后级电路中的串口外设直接转发CAN外设接收到的该协议信息。即CAN外设接收到信息后无需直接处理,而是请求其它串口外设转发出去,别的模块或者本模块的其它部分进行处理。
[0038]因此,一种外设除了需要具备自身解析能力的同时,也需要具有转发能力,以实现将本属于其它外设的数据转发给其它外设。
[0039]而当多个外设之间进行数据转发时,每一个外设可能需要请求多个其它外设转发数据,每一个外设也可能需要根据多个其它外设的转发请求转发数据。即每一个外设可能既作为提出转发请求的一方,也可能作为发送的一方。在这种转发情况属于“多对多”的转发模式下,情况复杂多变,可以想象各个外设之间耦合性强,而耦合关联不确定,根据情况不同而不同,一旦有一方稍作改变,则另一方需要做相应改变,例如一旦需要加入或减少请求者或执行者,则与之相关联的另一方也要进行改变,各个外设之间无规则混合杂糅,直接耦合并且耦合性强,导致转发程序复杂、代码量大。
[0040]另外,多个请求者均请求本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据转发方法,其特征在于,所述方法用于实现各个外设之间的数据转发,各个外设均与数据转发装置连接;所述方法包括:各个外设内部注册自身可转发的协议ID;请求者外设向所述数据转发装置发送请求信息;其中,所述请求信息包括待转发数据的地址、协议ID以及执行者ID;所述数据转发装置将所述待转发数据的地址、所述协议ID装载至所述执行者ID对应的执行者外设的第一预设缓存区内;所述执行者外设根据所述第一预设缓存区内的地址提取所述待转发数据,以及根据所述第一预设缓存区内的协议ID,从注册的自身可转发的协议ID中查找相应协议,并调用相应协议对所述待转发数据进行转发。2.如权利要求1所述的数据转发方法,其特征在于,各个外设还内部注册自身可转发协议的回调函数和校验方式;相应的,调用相应协议对所述待转发数据进行转发,包括:调用注册的相应协议的回调函数和校验方式对所述待转发数据进行转发。3.如权利要求1所述的数据转发方法,其特征在于,在各个外设内部注册自身可转发的协议ID之前,还包括:各个外设判断自身已注册的协议ID数量是否达到最大值;若自身已注册的协议ID数量达到最大值,则停止注册新的协议ID。4.如权利要求1所述的数据转发方法,其特征在于,所述请求信息还包括驱动端口信息;相应的,所述数据转发装置还用于将所述驱动端口信息装载至所述执行者ID对应的执行者外设的第二预设缓存区内;相应的,所述执行者外设根据所述第一预设缓存区内的地址提取所述待转发数据,以及根据所述第一预设缓存区内的协议ID,从注册...

【专利技术属性】
技术研发人员:马群李睿张浩司建龙郭喜斌郭禹胡迎庆徐卫东张逾良
申请(专利权)人:石家庄通合电子科技股份有限公司
类型:发明
国别省市:

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

1