CN116137618B - 通讯电路、通信地址分配方法、从机、主机和系统 - Google Patents

通讯电路、通信地址分配方法、从机、主机和系统 Download PDF

Info

Publication number
CN116137618B
CN116137618B CN202111364739.7A CN202111364739A CN116137618B CN 116137618 B CN116137618 B CN 116137618B CN 202111364739 A CN202111364739 A CN 202111364739A CN 116137618 B CN116137618 B CN 116137618B
Authority
CN
China
Prior art keywords
identity
slave
receiving
communication address
switching device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111364739.7A
Other languages
English (en)
Other versions
CN116137618A (zh
Inventor
汤振杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BYD Co Ltd
Original Assignee
BYD Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BYD Co Ltd filed Critical BYD Co Ltd
Priority to CN202111364739.7A priority Critical patent/CN116137618B/zh
Publication of CN116137618A publication Critical patent/CN116137618A/zh
Application granted granted Critical
Publication of CN116137618B publication Critical patent/CN116137618B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本公开实施例提供了一种通讯电路、通信地址分配方法、从机、主机和系统。所述通讯电路包括:收发芯片模块,第一开关器件、第二开关器件和第三开关器件;其中,第一开关器件的第一端与第三开关器件的第二端连接,第一开关器件的第一端、第二端以及第三开关器件的第二端均与收发芯片模块的第一引脚电连接;第二开关器件的第一端分别与收发芯片模块的第二引脚、第二开关器件的第二端、第三开关器件的第一端以及第三端电连接;第二开关器件的第三端与收发芯片模块的第三引脚电连接;第一开关器件的第三端与收发芯片模块的第四引脚电连接;收发芯片模块的发送端是通讯电路的发送端,收发芯片模块的接收端是通讯电路的接收端。

Description

通讯电路、通信地址分配方法、从机、主机和系统
技术领域
本公开实施例涉及通信技术领域,更具体地,本公开实施例涉及一种通讯电路、通信地址分配方法、从机、主机和系统。
背景技术
储能电池系统一般包含多大上百颗串联电芯,负责管理这些电芯的电池管理系统一般包含主控电池控制单元和从机电池管理单元,每个从机电池管理单元负责管理十数颗电芯。多个主控电池控制单元会与多个从机电池管理单元建立通信,为了更好的区分从机电池管理单元,需要对从机电池管理单元进行地址编码,以方便维护。
现有的从机通信地址分配方法,通常需要对硬件进行改进,增加许多元器件,如电流检测电路,整流电路,恒流源等,这会导致从机之间的干扰较大,影响到从机与主机之间的通信,导致通信地址的分配出现问题。因此,有必要提出一种新的从机通信地址分配方法。
发明内容
本公开实施例的一个目的是提供一种通讯电路、通信地址分配方法、从机、主机和系统,以实现从机地址的智能分配,能适应于不同的应用场景,抗干扰能力较高。
根据本公开实施例的第一方面,提供一种通讯电路,应用于从机通讯,所述从机具有唯一的身份标识,所述通讯电路包括:
收发芯片模块,第一开关器件、第二开关器件和第三开关器件;
其中,所述第一开关器件的第一端与所述第三开关器件的第二端连接,所述第一开关器件的第一端、第二端以及所述第三开关器件的第二端均与所述收发芯片模块的第一引脚电连接;
所述第二开关器件的第一端分别与所述收发芯片模块的第二引脚、所述第二开关器件的第二端、所述第三开关器件的第一端以及第三端电连接;所述第二开关器件的第三端与所述收发芯片模块的第三引脚电连接;所述第一开关器件的第三端与所述收发芯片模块的第四引脚电连接;
所述收发芯片模块包括发送端和接收端;所述收发芯片模块的发送端是所述通讯电路的发送端,所述收发芯片模块的接收端是所述通讯电路的接收端;
所述通讯电路被配置为在所述从机处于高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于关断状态,接收主机发送的第一广播信息并发送所述身份标识;
判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识是否相同;
当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识不同时,终止发送所述身份标识,再次接收到所述主机发送的第一广播消息,重新发送身份标识;
当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识相同时,接收所述主机响应所述身份标识后发送的通信地址,并基于所述通信地址与所述主机建立通讯连接;
所述通讯电路被配置为在所述从机处于非高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于导通状态。
可选地,还包括第一下拉电阻、第二下拉电阻和上拉电阻;
所述第三开关器件的第一端通过所述第一下拉电阻接地;所述第二开关器件的第三端通过所述第二下拉电阻接地;以及,所述第一开关器件的第三端通过所述上拉电阻与电源连接。
可选地,所述收发芯片模块包括发送芯片和接收芯片;
所述发送芯片的第一引脚是所述收发芯片模块的第一引脚,所述发送芯片的第二引脚是所述收发芯片模块的第二引脚;所述接收芯片的第一引脚是所述收发芯片模块的第三引脚,所述接收芯片的第二引脚是所述收发芯片模块的第四引脚。
根据本公开实施例的第二方面,提供一种应用于如本公开的第一方面中任一项所述的通讯电路,所述方法包括:
在处于高阻态状态的情况下,接收来自主机的第一广播消息;所述第一广播消息中包括通信地址分配命令;
响应于所述第一广播消息,向所述主机发送身份标识,并判断总线上的身份标识是否与发送的所述身份标识一致;
在判断所述总线上的身份标识与发送的所述身份标识一致的情况下,接收来自所述主机的通信地址;其中,所述通信地址是基于所述身份标识分配的;
将所述通信地址设置为从机的通信地址。
可选地,所述向所述主机发送身份标识,并判断总线上的身份标识是否与发送的所述身份标识一致,包括:
基于最小发送单位将所述身份标识拆分为N个子身份标识;N为大于零的整数;
按照N个子身份标识在所述身份标识中的排序,通过所述通讯电路的收发芯片模块的发送端发送所述子身份标识,并判断当前发送的所述子身份标识与通过所述通讯电路的收发芯片模块的接收端接收到的总线上的子身份标识是否一致;
在不一致的情况下,控制所述通讯电路的收发芯片模块的发送端停止发送剩余子身份标识。
可选地,所述接收来自主机的第一广播消息之前,所述方法还包括:
接收第二广播消息,所述第二广播消息中包括通信地址分配准备命令;
根据所述通信地址分配准备命令,将工作状态调整为所述高阻态状态。
可选地,所述将所述通信地址设置为从机的通信地址之后,所述方法还包括:
将所述从机的工作状态调整为非高阻态状态。
根据本公开实施例的第三方面,还提供一种通信地址分配方法,包括:
发送第一广播消息;其中,所述第一广播消息中包括通信地址分配命令;
接收来自从机的身份标识;其中,所述身份标识用于唯一标识所述从机,所述身份标识是所述从机在判断当前发送的子身份标识与所述总线上的子身份标识一致的情况下依次发送的;
根据接收到的身份标识设置所述从机的通信地址;
将所述通信地址发送至所述从机,以使所述从机将所述通信地址设置为所述从机的通信地址。
可选地,所述发送第一广播消息之前,所述方法还包括:
发送第二广播消息,所述第二广播消息中包括通信地址分配准备命令,所述通信地址分配准备命令用于使从机将工作状态调整为高阻态状态。
根据本公开实施例的第四方面,还提供一种从机,包括如本公开实施例的第一方面中任一项所述的通讯电路,所述通讯电路用于执行执行根据本公开实施例的第二方面中任一项所述的通信地址分配方法。
根据本公开实施例的第五方面,还提供一种主机,包括存储器和处理器,所述存储器用于存储可执行的指令;所述处理器用于在所述指令的控制下执行根据本公开实施例的第三方面中任一项所述的通信地址分配方法。
根据本公开实施例的第六方面,还提供一种通信地址分配系统,包括:
如本公开实施例的第五方面中所述的主机,以及多个如本公开实施例的第四方面中所述的从机;
多个所述从机与所述主机通讯连接。
本公开的一个有益效果在于,通过在从机中设置通讯电路,该通讯电路包括收发芯片模块,第一开关器件、第二开关器件和第三开关器件;其中,所述第一开关器件的第一端与所述第三开关器件的第二端连接,所述第一开关器件的第一端、第二端以及所述第三开关器件的第二端均与所述收发芯片模块的第一引脚电连接;所述第二开关器件的第一端分别与所述收发芯片模块的第二引脚、所述第二开关器件的第二端、所述第三开关器件的第一端以及第三端电连接;所述第二开关器件的第三端与所述收发芯片模块的第三引脚电连接;所述第一开关器件的第三端与所述收发芯片模块的第四引脚电连接;所述收发芯片模块包括发送端和接收端;所述收发芯片模块的发送端是所述通讯电路的发送端,所述收发芯片模块的接收端是所述通讯电路的接收端;所述通讯电路被配置为在所述从机处于高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于关断状态,接收主机发送的第一广播信息并发送所述身份标识;判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识是否相同;当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识不同时,终止发送所述身份标识,再次接收到所述主机发送的第一广播消息,重新发送身份标识;当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识相同时,接收所述主机响应所述身份标识后发送的通信地址,并基于所述通信地址与所述主机建立通讯连接;所述通讯电路被配置为在所述从机处于非高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于导通状态。这样,通过在通讯电路中增加若干个小功率器件,实现对从机的工作状态的控制,复用现有的总线实现了多从机地址的智能分配,且降低了从机之间的干扰,降低了通信地址的分配出现问题的概率,从而实现了更稳定的地址分配。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是根据本公开实施例的通讯电路实施例一的结构示意图;
图2是根据本公开实施例的通讯电路实施例二的结构示意图;
图3是根据本公开实施例的通讯电路发送身份标识的流程示意图;
图4是本公开实施例一的通信地址分配方法的流程示意图;
图5是本公开实施例二的通信地址分配方法的流程示意图;
图6是本公开实施例的例子的流程示意图;
图7是一种示例性的电子设备的硬件结构示意图;
图8是一种示例性的通信地址分配系统的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<通讯电路>
本公开实施例的通讯电路应用于从机通讯,该通讯电路可以包括收发芯片模块,第一开关器件、第二开关器件和第三开关器件;其中,所述第一开关器件的第一端与所述第三开关器件的第二端连接,所述第一开关器件的第一端、第二端以及所述第三开关器件的第二端均与所述收发芯片模块的第一引脚电连接;所述第二开关器件的第一端分别与所述收发芯片模块的第二引脚、所述第二开关器件的第二端、所述第三开关器件的第一端以及第三端电连接;所述第二开关器件的第三端与所述收发芯片模块的第三引脚电连接;所述第一开关器件的第三端与所述收发芯片模块的第四引脚电连接。所述收发芯片模块包括发送端和接收端;所述收发芯片模块的发送端是所述通讯电路的发送端,所述收发芯片模块的接收端是所述通讯电路的接收端。
进一步地,在本实施例的通讯电路中,还包括第一下拉电阻、第二下拉电阻和上拉电阻。其中,所述第三开关器件的第一端通过所述第一下拉电阻接地;所述第二开关器件的第三端通过所述第二下拉电阻接地;以及,所述第一开关器件的第三端通过所述上拉电阻与电源连接。
在本实施例中,根据所使用的收发芯片模块的类型不同,所使用的收发芯片的数量也不同。例如,在使用RS485收发芯片时,所述收发芯片模块的数量是两个,在使用RS422收发芯片时,所述收发芯片模块的数量可以是一个。在此不作具体限定。
示例性的,图1是根据本公开实施例的通讯电路实施例一的结构示意图。如图1所示,以使用一个RS422收发芯片为例,所述收发芯片模块的第一引脚为RS422收发芯片的引脚A,所述收发芯片模块的第二引脚为RS422收发芯片的引脚B,所述收发芯片模块的第三引脚为RS422收发芯片的引脚Y,所述收发芯片模块的第四引脚为RS422收发芯片的引脚Z。所述收发芯片模块的接收引脚为RS422收发芯片的引脚R,所述收发芯片模块的发送引脚为RS422收发芯片的引脚D。第一开关器件为Q1,第二开关器件为Q2,第三开关器件为Q3。第一下拉电阻为R1,第二下拉电阻为R2,上拉电阻为R3。
在所述收发芯片模块包括的情况下,所述收发芯片模块包括发送芯片和接收芯片,其中,所述发送芯片的第一引脚是所述收发芯片模块的第一引脚,所述发送芯片的第二引脚是所述收发芯片模块的第二引脚;所述接收芯片的第一引脚是所述收发芯片模块的第三引脚,所述接收芯片的第二引脚是所述收发芯片模块的第四引脚。
示例性的,图2是根据本公开实施例的通讯电路实施例二的结构示意图。如图2所示,以使用两个RS485收发芯片为例,收发芯片U1使用了发送功能,即为所述发送芯片,收发芯片U2使用了接收功能,即为所述接收芯片。
具体的,收发芯片模块的第一引脚为RS485发送芯片U1的引脚A,收发芯片模块的第二引脚为RS485发送芯片U1的引脚B;收发芯片模块的第三引脚为RS485接收芯片U2的引脚A,收发芯片模块的第四引脚为RS485接收芯片U2的引脚B,收发芯片模块的接收引脚为RS4855接收芯片U2的引脚R,收发芯片模块的发送引脚为RS4855发送芯片U1的引脚D。第一开关器件为Q1,第二开关器件为Q2,第三开关器件为Q3。第一下拉电阻为R1,第二下拉电阻为R2,上拉电阻为R3。
本实施例中,所述通讯电路被配置为在所述从机处于高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于关断状态,接收主机发送的第一广播信息并发送所述身份标识;判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识是否相同;当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识不同时,终止发送所述身份标识,再次接收到所述主机发送的第一广播消息,重新发送身份标识;当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识相同时,接收所述主机响应所述身份标识后发送的通信地址,并基于所述通信地址与所述主机建立通讯连接。
示例性的,如图3所示,在从机处于高阻态状态的情况下,从机与主机的通讯过程可以包括步骤3100~步骤3500:
步骤3100,从机接收主机发送的第一广播消息。
步骤3200,从机响应于第一广播消息,通过收发芯片模块的发送端向主机发送身份标识。
步骤3300,从机判断收发芯片模块的接收端接收到的总线上的身份标识与所述发送端发送的身份标识是否一致。若一致,执行步骤3400;若不一致,终止发送身份标识,返回步骤3100,等待接收下一次第一广播消息。
步骤3400,从机接收主机响应所述身份标识后发送的通信地址。
步骤3500,从机基于所述通信地址建立与主机的通讯连接。
其中,第一引脚A和第二引脚B之间电位由从机发送的电位和总线上的电位相与的结果确定的。
其中,在从机处于高阻态状态的情况下,收发芯片模块发送端发送的身份标识为从机自身唯一的身份标识。一般地,身份标识可为二进制字符串。当多个从机同时工作时,能够基于所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识的比较结果,筛选能够被主机分配通信地址的从机,即在判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识相同时,接收主机响应所述身份标识后发送的通信地址,以基于该通信地址与主机通讯连接,当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识不同时,终止发送所述身份标识,再次接收到所述主机发送的第一广播消息,重新发送身份标识;直至全部从机均与主机建立通讯连接。
以RS485收发芯片模块为例,对本实施例的通讯电路的实现原理进行描述。具体的,根据RS485规范,通信使用A,B两线实现一路差分的半双工通信。通常,总线上引脚A的电位大于引脚B的电位时为逻辑1,引脚A的电位小于或等于引脚B的电位时为逻辑0。
在所述从机处于高阻态状态,即总线高阻态状态的情况下,可实现如下工作逻辑:当总线上所有从机的TXD只要存在逻辑电平0时,RXD逻辑电平为0,RS485总线上的逻辑电平为0;当总线上所有从机的TXD全为逻辑电平1时,RXD逻辑电平为1,RS485总线上的逻辑电平为1。在总线上实现线与功能,即,总线上的逻辑电平等于各个从机TXD的逻辑电平与的结果。
可以理解的是,当从机处于高阻态状态后,TXD发送数据的同时,RXD能检测总线当前数据,即,从机在发送数据的同时,还从总线上接收数据。若接收到的数据不等于发送的数据,则说明总线上存在优先级更高的数据。此时接收到的数据不等于发送的数据的从机会停止发送数据,让优先级更高的从机先发送数据,即可实现优先级仲裁,当多个从机同时发送数据的时候,优先级高的从机的数据才能完整的发出来。
示例性的,假设从机1的身份标识为000,从机2的身份标识为010,从机3的身份标识为100。当从机1、从机2和从机3在向总线上发送身份标识的第一位数据,即,从机1发送0,从机2发送0,从机3发送1,与此同时,从机1、从机2和从机3会从总线上接收到数据0,此时,从机3判断出接收到的数据0与发送的数据1不相同,说明总线上存在优先级更高的数据,从机3停止发送身份标识,而从机1和从机2判断出接收到的数据0等于发送的数据0,则会继续发送身份标识的第二位数据,即,从机1发送0,从机2发送1,此时,从机2判断出接收到的数据0与发送的数据1不相同,说明总线上存在优先级更高的数据,从机2停止发送身份标识,而从机1判断出接收到的数据0等于发送的数据0,继续发送身份标识的第三位数据0。
可以看出,在实际应用中,所述优先级是根据从机的编码的大小定义的,从机的编码的数值越小,其优先级越高。本实施例不以此为限,优先级的定义可以根据实际使用需求进行设定。
所述通讯电路被配置为在所述从机处于非高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于导通状态,所述收发芯片模块的第一引脚和第二引脚之间的电位等于总线上的电位。
本实施例的通讯电路,通过在通讯电路中增加若干个小功率器件,实现对从机的工作状态的控制,复用现有的总线实现了多从机地址的智能分配,且降低了从机之间的干扰,降低了通信地址的分配出现问题的概率,从而实现了更稳定的地址分配。
<方法实施例>
图4是本公开实施例一的通信地址分配方法的流程示意图,该方法可以由从机执行,该从机中设置有如上述实施例所述的通讯电路。
如图4所示,本实施例的通信地址分配方法可以包括如下步骤4100~步骤4400:
步骤4100,在处于高阻态状态的情况下,接收来自主机的第一广播消息;所述第一广播消息中包括通信地址分配命令。
从机的工作状态包括高阻态状态和非高阻态状态,其中,高阻态状态为总线高阻态状态,非高阻态状态为常规的通信状态,工作状态的调整是根据主机的命令执行的。
具体的,在本步骤之前,所述方法还包括:接收第二广播消息,所述第二广播消息中包括通信地址分配准备命令;根据所述通信地址分配准备命令,将工作状态调整为所述高阻态状态。
在本实施例中,接收到第二广播消息的所有从机都会将自身的工作状态调整为高阻态状态,关闭其他非通信任务,为通信地址的分配做准备。
在调整好工作状态后,在预设时间段后,从机会接收到来自主机的第一广播消息。从机在接收到所述第一广播消息后,会判断自身是否已被分配通信地址,若未分配,则执行步骤4200:
步骤4200,响应于所述第一广播消息,向所述主机发送身份标识,并判断总线上的身份标识是否与发送的所述身份标识一致。
其中,所述身份标识用于唯一标识所述从机。在本实施例中,从机向主机发送身份标识时,可以基于最小发送单位将所述身份标识拆分为N个子身份标识;N为大于零的整数;按照N个子身份标识在所述身份标识中的排序,通过所述通讯电路的收发芯片模块的发送端发送所述子身份标识,并判断当前发送的所述子身份标识与通过所述通讯电路的收发芯片模块的接收端接收到的总线上的子身份标识是否一致;在不一致的情况下,说明此时有优先级更高的从机正在向主机发送身份标识,此时该从机控制所述通讯电路的收发芯片模块的发送端停止发送剩余子身份标识,等待下一次的地址分配命令(即第一广播信息);在所述子身份标识与总线上的子身份标识一致的情况下,继续发送剩余的子身份标识,直至发送结束。
示例性的,若最小发送单元为字节,则从机会将身份标识拆分为字节,当bit为0时发送0,当bit为1时发送0xff。即,在发送身份标识时,以字节为单位发送所述身份标识。
假设从机的身份标识为000111,假设发送到身份标识的第四位时,接收到的身份标识的第四位为0,与发送的子身份标识不一致,则该从机停止发送剩余子身份标识;反之,则继续发送剩余子身份标识,直至发送到身份标识的最后一位。
在所述从机将身份标识发送至所述主机后,执行步骤4300:
步骤4300,在判断所述总线上的身份标识与发送的所述身份标识一致的情况下,接收来自所述主机的通信地址;其中,所述通信地址是基于所述身份标识分配的。
具体的,在从机判断总线上的身份标识与自身的身份标识一致的情况下,表明当前在为该从机分配通信地址,若不一致,表明当前在为其他从机分配通信地址,则该从机在接收到通信地址时直接忽视即可。
步骤4400,将所述通信地址设置为从机的通信地址。
可选地,在将所述通信地址设置为从机的通信地址后,该从机还可以向所述主机发送通信地址分配响应消息,以使所述主机获知通信地址分配成功。
进一步地,所述从机在将通信地址设置为从机的通信地址后之后,还可以将所述工作状态调整为非高阻态状态。该非高阻态状态即为常规的通信状态。
以上已结合附图对本实施例的通信地址分配方法进行了说明,在本实施例中,从机在处于高阻态状态的情况下,接收来自主机的第一广播消息;所述第一广播消息中包括通信地址分配命令;响应于所述第一广播消息,向所述主机发送身份标识,并判断总线上的身份标识是否与发送的所述身份标识一致;在判断所述总线上的身份标识与发送的所述身份标识一致的情况下,接收来自所述主机的通信地址;其中,所述通信地址是基于所述身份标识分配的;将所述通信地址设置为从机的通信地址。这样,可以复用现有的总线实现多从机的地址智能分配,能适应于不同的应用场景,抗干扰能力较高,降低了通信地址的分配出现问题的概率,从而实现了更稳定的地址分配。
图5是本公开实施例二的通信地址分配方法的流程示意图,该方法可以由主机执行。
如图5所示,本实施例的通信地址分配方法可以包括如下步骤5100~步骤5400:
步骤5100,发送第一广播消息;其中,所述第一广播消息中包括通信地址分配命令。
在本步骤之前,所述方法还包括:发送第二广播消息,所述第二广播消息中包括通信地址分配准备命令,所述通信地址分配准备命令用于使从机将工作状态调整为高阻态状态。
主机可以通过第二广播消息广播通信地址分配准备命令,以使接收到第二广播消息的所有从机将自身的工作状态调整为高阻态状态,关闭其他非通信任务,为地址分配做准备。
在发送所述第二广播消息的预设时间段后,主机发送所述第一广播消息。
步骤5200,接收来自从机的身份标识;所述身份标识用于唯一标识所述从机,所述身份标识是所述从机在判断当前发送的子身份标识与所述总线上的子身份标识一致的情况下依次发送的。
需要说明的是,若在预设的时间段内,没有接收到来自从机的身份标识,则表明所有从机都已被分配通信地址,该分配通信地址的流程结束。
步骤5300,根据接收到的身份标识设置所述从机的通信地址。
步骤5400,将所述通信地址发送至所述从机,以使所述从机将所述通信地址设置为所述从机的通信地址。
主机在设置好从机的通信地址后,将通信地址发送至从机,具体的,从机可以将总线上的身份标识与该从机的所述身份标识进行比较,判断是否一致,在一致时,将通信地址设置为从机的通信地址,若不一致,表明当前的通信地址是分配给其他从机的,则忽视该通信地址即可。
可以理解的是,在发送第一广播消息后,主机还可以接收来自从机的通信地址分配响应消息,以根据所述通信地址分配响应消息确定该从机的通信地址已设置好。
以上已结合附图对本实施例的通信地址分配方法进行了说明,在本实施例中,主机通过发送第一广播消息;其中,所述第一广播消息中包括通信地址分配命令;接收来自从机的身份标识;所述身份标识用于唯一标识所述从机,所述身份标识是所述从机基于最小发送单位拆分为N个子身份标识,并按照N个子身份标识在所述身份标识中的排序,在判断当前发送的子身份标识与所述总线上的子身份标识一致的情况下依次发送的;其中,N为大于零的整数;根据接收到的身份标识设置所述从机的通信地址;将所述通信地址发送至所述从机,以使所述从机将所述通信地址设置为所述从机的通信地址。这样,可以复用现有的总线实现多从机的地址智能分配,能适应于不同的应用场景,抗干扰能力较高,降低了通信地址的分配出现问题的概率,从而实现了更稳定的地址分配。
<例子>
图6是本公开实施例的通信地址分配方法的例子的流程示意图。如图6所示,在本实施例中,可以包括如下步骤6100~步骤6700:
步骤6100,主机发送第二广播消息,所述第二广播消息中包括通信地址分配准备命令。
步骤6200,从机接收第二广播消息,所述第二广播消息中包括通信地址分配准备命令;根据所述通信地址分配准备命令,将工作状态调整为所述高阻态状态。
步骤6300,在预设时间段后,发送第一广播消息;其中,所述第一广播消息中包括通信地址分配命令。
步骤6400,从机向所述主机发送身份标识。
步骤6500,主机根据接收到的身份标识设置所述从机的通信地址。
步骤6600,主机发送通信地址。
步骤6700,将所述通信地址设置为从机的通信地址,并向所述主机发送通信地址分配响应消息。
本实施例的通信地址分配方法,通过复用现有的总线实现多从机的地址智能分配,能适应于不同的应用场景,抗干扰能力较高,降低了通信地址的分配出现问题的概率,从而实现了更稳定的地址分配。
<从机实施例>
本实施例还提供一种从机,包括如上述实施例中所述的通讯电路,所述通讯电路用于执行根据上述图4所述实施例的通信地址分配方法。
<主机实施例>
在本实施例中,还提供一种主机7000。
如图7所示,主机7000可以包括处理器7100和存储器7200,该存储器7200用于存储可执行的指令;该处理器7100用于根据指令的控制运行电子设备7000执行根据上述图5所述实施例的通信地址分配方法。
<系统实施例>
在本实施例中,该通信地址分配系统可以包括一个主机和多个从机,主机与多个从机之间通过并行的两条总线通信电缆进行通信连接。
图8是一种示例性的通信地址分配系统的结构示意图。示例性的,如图7所示,在该通信地址分配系统中,包括主机,以及从机1,从机2,从机3,从机4和从机5,从机1,从机2,从机3,从机4和从机5通过两条总线通信电缆通信连接,从而实现一路差分信号的半双工通信。
可以理解的是,在本实施例的每个从机中,均设置有如上述通讯电路实施例中所描述的通讯电路,并可基于所述通讯电路执行如图3所示实施例中的通信地址分配方法。主机可用于执行如上述图4所示实施例中的通信地址分配方法。
本实施例的通信地址分配系统,可以通过复用现有的总线实现多从机的地址智能分配,能适应于不同的应用场景,抗干扰能力较高,降低了通信地址的分配出现问题的概率,从而实现了更稳定的地址分配。
<介质实施例>
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时,实现前述任一实施例提供的通信地址分配方法。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (12)

1.一种通讯电路,应用于从机通讯,所述从机具有唯一的身份标识,其特征在于,所述通讯电路包括:
收发芯片模块,第一开关器件、第二开关器件和第三开关器件;
其中,所述第一开关器件的第一端与所述第三开关器件的第二端连接,所述第一开关器件的第一端、第二端以及所述第三开关器件的第二端均与所述收发芯片模块的第一引脚电连接;
所述第二开关器件的第一端分别与所述收发芯片模块的第二引脚、所述第二开关器件的第二端、所述第三开关器件的第一端以及第三端电连接;所述第二开关器件的第三端与所述收发芯片模块的第三引脚电连接;所述第一开关器件的第三端与所述收发芯片模块的第四引脚电连接;
所述收发芯片模块包括发送端和接收端;所述收发芯片模块的发送端是所述通讯电路的发送端,所述收发芯片模块的接收端是所述通讯电路的接收端;
所述通讯电路被配置为在所述从机处于高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于关断状态,接收主机发送的第一广播信息并发送所述身份标识;
判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识是否相同;
当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识不同时,终止发送所述身份标识,再次接收到所述主机发送的第一广播消息,重新发送身份标识;
当判断所述收发芯片模块发送端发送的身份标识和所述接收端接收的身份标识相同时,接收所述主机响应所述身份标识后发送的通信地址,并基于所述通信地址与所述主机建立通讯连接;
所述通讯电路被配置为在所述从机处于非高阻态状态的情况下,所述第一开关器件、所述第二开关器件和所述第三开关器件均处于导通状态。
2.根据权利要求1所述的通讯电路,其特征在于,还包括第一下拉电阻、第二下拉电阻和上拉电阻;
所述第三开关器件的第一端通过所述第一下拉电阻接地;所述第二开关器件的第三端通过所述第二下拉电阻接地;以及,所述第一开关器件的第三端通过所述上拉电阻与电源连接。
3.根据权利要求1所述的通讯电路,其特征在于,所述收发芯片模块包括发送芯片和接收芯片;
所述发送芯片的第一引脚是所述收发芯片模块的第一引脚,所述发送芯片的第二引脚是所述收发芯片模块的第二引脚;所述接收芯片的第一引脚是所述收发芯片模块的第三引脚,所述接收芯片的第二引脚是所述收发芯片模块的第四引脚。
4.一种通信地址分配方法,其特征在于,应用于如权利要求1~3中任一项所述的通讯电路,所述方法包括:
在处于高阻态状态的情况下,接收来自主机的第一广播消息;所述第一广播消息中包括通信地址分配命令;
响应于所述第一广播消息,向所述主机发送身份标识,并判断总线上的身份标识是否与发送的所述身份标识一致;
在判断所述总线上的身份标识与发送的所述身份标识一致的情况下,接收来自所述主机的通信地址;其中,所述通信地址是基于所述身份标识分配的;
将所述通信地址设置为从机的通信地址。
5.根据权利要求4所述的方法,其特征在于,所述向所述主机发送身份标识,并判断总线上的身份标识是否与发送的所述身份标识一致,包括:
基于最小发送单位将所述身份标识拆分为N个子身份标识;N为大于零的整数;
按照N个子身份标识在所述身份标识中的排序,通过所述通讯电路的收发芯片模块的发送端发送所述子身份标识,并判断当前发送的所述子身份标识与通过所述通讯电路的收发芯片模块的接收端接收到的总线上的子身份标识是否一致;
在不一致的情况下,控制所述通讯电路的收发芯片模块的发送端停止发送剩余子身份标识,并再次接收所述第一广播信息,发送所述身份标识。
6.根据权利要求4所述的方法,其特征在于,所述接收来自主机的第一广播消息之前,所述方法还包括:
接收第二广播消息,所述第二广播消息中包括通信地址分配准备命令;
根据所述通信地址分配准备命令,将工作状态调整为所述高阻态状态。
7.根据权利要求4所述的方法,其特征在于,所述将所述通信地址设置为从机的通信地址之后,所述方法还包括:
将所述从机的工作状态调整为非高阻态状态。
8.一种通信地址分配方法,其特征在于,包括:
发送第一广播消息;其中,所述第一广播消息中包括通信地址分配命令;
接收来自从机的身份标识;其中,所述身份标识用于唯一标识所述从机,所述身份标识是所述从机在判断当前发送的子身份标识与总线上的子身份标识一致的情况下依次发送的;
根据接收到的身份标识设置所述从机的通信地址;
将所述通信地址发送至所述从机,以使所述从机将所述通信地址设置为所述从机的通信地址,所述从机应用如权利要求1~3中任一项所述的通讯电路进行通讯。
9.根据权利要求8所述的方法,其特征在于,所述发送第一广播消息之前,所述方法还包括:
发送第二广播消息,所述第二广播消息中包括通信地址分配准备命令,所述通信地址分配准备命令用于使从机将工作状态调整为高阻态状态。
10.一种从机,包括如权利要求1~3中任一项所述的通讯电路,所述通讯电路用于执行根据权利要求4~7中任一项所述的通信地址分配方法。
11.一种主机,包括存储器和处理器,所述存储器用于存储可执行的指令;所述处理器用于在所述指令的控制下执行根据权利要求8或9所述的通信地址分配方法。
12.一种通信地址分配系统,其特征在于,包括:
如权利要求11所述的主机,以及多个如权利要求10所述的从机;
多个所述从机与所述主机通讯连接。
CN202111364739.7A 2021-11-17 2021-11-17 通讯电路、通信地址分配方法、从机、主机和系统 Active CN116137618B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111364739.7A CN116137618B (zh) 2021-11-17 2021-11-17 通讯电路、通信地址分配方法、从机、主机和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111364739.7A CN116137618B (zh) 2021-11-17 2021-11-17 通讯电路、通信地址分配方法、从机、主机和系统

Publications (2)

Publication Number Publication Date
CN116137618A CN116137618A (zh) 2023-05-19
CN116137618B true CN116137618B (zh) 2024-09-10

Family

ID=86332705

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111364739.7A Active CN116137618B (zh) 2021-11-17 2021-11-17 通讯电路、通信地址分配方法、从机、主机和系统

Country Status (1)

Country Link
CN (1) CN116137618B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108123862A (zh) * 2017-12-18 2018-06-05 合肥华凌股份有限公司 家用电器的通信系统、通信方法以及家用电器
CN214101428U (zh) * 2021-01-08 2021-08-31 汉威科技集团股份有限公司 一种总线型设备地址自动分配装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586204A (zh) * 2020-05-12 2020-08-25 广州极飞科技有限公司 通讯地址分配方法、通讯系统、主设备和从设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108123862A (zh) * 2017-12-18 2018-06-05 合肥华凌股份有限公司 家用电器的通信系统、通信方法以及家用电器
CN214101428U (zh) * 2021-01-08 2021-08-31 汉威科技集团股份有限公司 一种总线型设备地址自动分配装置

Also Published As

Publication number Publication date
CN116137618A (zh) 2023-05-19

Similar Documents

Publication Publication Date Title
US7730245B2 (en) Method and system for setting addresses for slave devices in data communication system
CN108270883A (zh) 可自动分配设备通讯地址码的方法、断路器及存储介质
CN103401726A (zh) 网络路径探测方法及装置、系统
CN110635982B (zh) 通讯总线上双主机通讯方法、系统、工控网关及储存介质
CN104516838A (zh) 管理路径确定方法及装置
CN103186440A (zh) 检测子卡在位的方法、装置及系统
CN103166765A (zh) 一种PoE功率门限切换方法和设备
CN110995889A (zh) 地址分配系统和方法
CN117640271B (zh) 数据广播装置及系统
CN108491337B (zh) 一种实现群组控制的方法
CN104683130A (zh) 一种配置堆叠端口的方法和设备
CN116137618B (zh) 通讯电路、通信地址分配方法、从机、主机和系统
CN104426816A (zh) 一种虚拟机通信方法及装置
CN107453844B (zh) 一种智能设备自动组网的方法及装置
CN113094316A (zh) 一种ncsi信号的在线切换装置及方法
CN112000019A (zh) 用于共享设备指令控制的方法、装置及设备
CN105451228A (zh) 一种信息处理方法及装置
CN110495157B (zh) 在通信设备之间进行串行通信的通信系统
CN104144076B (zh) 一种流程错误控制方法、装置和系统
CN105207866A (zh) 基于空调控制网络的控制终端的通信方法及空调控制网络
CN115334041A (zh) 一种主从站通讯设备自动分配地址的方法、主站、从站和系统
KR20170019268A (ko) 리턴 회로를 갖는 리모트 입출력 장치 및 그의 내부 버스 통신 방법
CN210518417U (zh) 地址分配系统
CN107493216B (zh) 控制器局域网can总线数据处理方法及装置
CN110971716B (zh) 地址配置方法、装置、系统和计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant