CN106951276A - 多控制器的软件升级及地址冲突检测方法、装置 - Google Patents
多控制器的软件升级及地址冲突检测方法、装置 Download PDFInfo
- Publication number
- CN106951276A CN106951276A CN201710071434.4A CN201710071434A CN106951276A CN 106951276 A CN106951276 A CN 106951276A CN 201710071434 A CN201710071434 A CN 201710071434A CN 106951276 A CN106951276 A CN 106951276A
- Authority
- CN
- China
- Prior art keywords
- address
- controller
- upgrading
- rompaq
- conflict
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000012790 confirmation Methods 0.000 claims abstract description 107
- 230000004044 response Effects 0.000 claims description 47
- 238000001514 detection method Methods 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 28
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000004080 punching Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种多控制器的软件升级及地址冲突检测方法、装置,其中,多控制器升级后的地址冲突检测方法包括:接收第一目标控制器执行升级程序之后所发送的升级确认信息;每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;升级确认信息包括发送升级确认信息的控制器在执行升级程序之后的地址;判断是否存在所对应的升级确认信息未被接收到的第一目标控制器;当存在时,确定多个第一目标控制器执行升级程序之后存在地址冲突。通过本发明,可以控制多控制器进行升级,检测并记录升级错误的控制器的地址,再对升级错误的控制器重新升级。
Description
技术领域
本发明涉及软件技术领域,具体涉及一种多控制器的软件升级及地址冲突检测方法、装置。
背景技术
在对具有多控制器的产品进行研发及售后维护时,需要对多个控制器的软件进行升级。例如,电动汽车的核心部件之一的BMS(Battery Management System,电池管理系统)内部包括多个ECU((Electronic Control Unit,电子控制单元),各ECU之间通过CAN(Controller Area Network,控制器局域网总线)网络连接。在对BMS内部各ECU研发时以及在电动汽车售出后会对ECU内部软件进行升级优化。
现有对于多控制器进行升级的方法通常为:开发或维护人员依次将存储有升级程序的PC机与各个控制器建立通信连接,对多个控制器逐个进行升级。例如,对于BMS内部通过CAN网络连接的多个ECU,PC机首先与第一ECU建立通信连接,向第一ECU发送升级程序使其开始升级;待第一ECU升级完毕后,PC机再与第二ECU建立通信连接,向第二ECU发送升级程序使其开始升级;待第二ECU升级完毕后,PC机再与第三ECU建立通信连接,向第三ECU发送升级程序使其开始升级……直至所有ECU均升级完毕。
发明人发现,若PC与错误的控制器建立通信连接,或者PC机将错误的升级程序发送给控制器,则会由于控制器升级出错使得多个控制器中有两个以上的控制器地址冲突,现有技术无法自动解决由于升级出错所导致的地址冲突问题,确保多个控制器均得以正确升级。
发明内容
有鉴于此,本发明实施例提供了一种多控制器的软件升级及地址冲突检测方法、装置,以解决现有技术中没有对程序升级后的控制器的地址冲突检测的方法导致在地址冲突的情况下无法自动对误升级的控制器进行重新升级的问题。
根据第一方面,本发明实施例提供了一种多控制器升级后的地址冲突检测方法,适用于上位机,该方法包括:接收第一目标控制器执行升级程序之后所发送的升级确认信息;所述升级程序为预先发送给多个第一目标控制器的,每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;所述升级确认信息包括发送所述升级确认信息的控制器在执行升级程序之后的地址;根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器;当存在所对应的升级确认信息未被接收到的第一目标控制器时,确定多个第一目标控制器执行升级程序之后存在地址冲突。
根据第二方面,本发明实施例提供了一种多控制器的软件升级方法,适用于上位机,该方法包括:根据多个第一目标控制器的地址,向所述多个第一目标控制器分别发送升级程序;每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;第一方面所述的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突;当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器;所述地址冲突处理命令用于控制每个所述第一目标控制器将其自身升级前的地址与所述冲突控制器升级前的地址进行比对,并控制升级前的地址与所述冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为所述冲突控制器升级前的地址;根据所述冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。
可选地,所述根据多个第一目标控制器的地址,向所述多个第一目标控制器分别发送升级程序的步骤之前,还包括:根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;接收第二目标控制器返回的应答信息,并将返回所述应答信息的第二目标控制器确定为第一目标控制器;所述应答信息用于告知上位机发送所述应答信息的控制器可以开始升级,其中携带有发送所述应答信息的控制器的地址。
根据第三方面,本发明实施例提供了一种多控制器的软件升级方法,适用于控制器,该方法包括:接收上位机所发送的升级程序;所述升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;执行所述升级程序,将自身的软件升级为新的版本,并将自身的地址修改为所述升级程序中所携带的第一目标控制器的地址;向所述上位机发送升级确认信息,所述升级确认信息用于所述上位机通过第一方面所述的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突;接收所述上位机在检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被所述上位机接收到的第一目标控制器;判断自身升级前的地址与所述冲突控制器升级前的地址是否一致;当自身升级前的地址与所述冲突控制器升级前的地址一致时,将自身的地址修改为所述冲突控制器升级前的地址。
可选地,所述接收所述上位机所发送的升级程序的步骤之前,还包括:接收所述上位机所发送的升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;判断所述需要进行升级的控制器的地址是否包括自身的地址;当所述需要进行升级的控制器的地址包括自身的地址时,向所述上位机发送应答信息;所述应答信息用于告知所述上位机自身可以开始升级,其中携带有自身的地址。
根据第四方面,本发明实施例提供了一种多控制器升级后的地址冲突检测装置,适用于上位机,该装置包括:第一接收单元,用于接收第一目标控制器执行升级程序之后所发送的升级确认信息;所述升级程序为预先发送给多个第一目标控制器的,每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;所述升级确认信息包括发送所述升级确认信息的控制器在执行升级程序之后的地址;第一判断单元,用于根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器;确定单元,用于当存在所对应的升级确认信息未被接收到的第一目标控制器时,确定多个第一目标控制器执行升级程序之后存在地址冲突。
根据第五方面,本发明实施例提供了一种多控制器的软件升级装置,适用于上位机,该装置包括:第一发送单元,用于根据多个第一目标控制器的地址,向所述多个第一目标控制器分别发送升级程序;每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;第四方面所述的多控制器升级后的地址冲突检测装置中的所述第一接收单元、所述第一判断单元、所述确定单元;第二发送单元,用于当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器;所述地址冲突处理命令用于控制每个所述第一目标控制器将其自身升级前的地址与所述冲突控制器升级前的地址进行比对,并控制升级前的地址与所述冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为所述冲突控制器升级前的地址;第三发送单元,用于根据所述冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。
可选地,该装置还包括:第四发送单元,用于根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;第二接收单元,用于接收第二目标控制器返回的应答信息,并将返回所述应答信息的第二目标控制器确定为第一目标控制器;所述应答信息用于告知上位机发送所述应答信息的控制器可以开始升级,其中携带有发送所述应答信息的控制器的地址。
根据第六方面,本发明实施例提供了一种多控制器的软件升级装置,适用于控制器,该装置包括:第三接收单元,用于接收上位机所发送的升级程序;所述升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;执行单元,用于执行所述升级程序,将自身的软件升级为新的版本,并将自身的地址修改为所述升级程序中所携带的第一目标控制器的地址;第五发送单元,用于向所述上位机发送升级确认信息,所述升级确认信息用于所述上位机通过第四方面所述的多控制器升级后的地址冲突检测装置检测升级后的多个第一目标控制器是否存在地址冲突;第四接收单元,用于接收所述上位机在检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被所述上位机接收到的第一目标控制器;第二判断单元,用于判断自身升级前的地址与所述冲突控制器升级前的地址是否一致;修改单元,用于当自身升级前的地址与所述冲突控制器升级前的地址一致时,将自身的地址修改为所述冲突控制器升级前的地址。
可选地,该装置还包括:第五接收单元,用于接收所述上位机所发送的升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;第三判断单元,用于判断所述需要进行升级的控制器的地址是否包括自身的地址;当所述需要进行升级的控制器的地址包括自身的地址时,执行所述接收所述上位机所发送的升级程序的步骤。
上述多控制器升级后的地址冲突检测方法及装置,预先给控制器发送的每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为升级程序所携带的第一目标控制器的地址;控制器执行升级程序后,会向上位机发送升级确认信息,该升级确认信息包括发送该升级确认信息的控制器在执行升级程序之前的地址;上位机接收该升级确认信息后,根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器,当存在时,便可以确定多个第一目标控制器执行升级程序之后存在地址冲突。通过本实施例,在向多个控制器发送升级程序使其软件升级为新版本后,能够自动检测这多个控制器升级之后是否存在地址冲突。
上述多控制器的软件升级方法及装置,上位机向多个第一目标控制器分别发送升级程序,每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;控制器接收上位机所发送的升级程序,执行升级程序,将自身的软件升级为新的版本,并将自身的地址修改为升级程序中所携带的第一目标控制器的地址;然后控制器向上位机发送升级确认信息,该升级确认信息中携带有升级后的地址;然后上位机通过上述地址冲突检测方法根据控制器所发送的升级确认信息检测升级后的多个第一目标控制器是否存在地址冲突;当存在地址冲突时,上位机向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;控制器接收该地址冲突处理命令和冲突控制器升级前的地址,判断自身升级前的地址与冲突控制器升级前的地址是否一致,当一致时将自身的地址修改为冲突控制器升级前的地址;上位机再根据冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。通过本实施例,上位机可以控制多控制器进行升级,检测并记录升级错误的控制器的地址,再对升级错误的控制器重新升级。
附图说明
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
图1示出了根据本发明实施例的多控制器升级后的地址冲突检测方法的流程图;
图2示出了根据本发明实施例的多控制器的软件升级方法的流程图;
图3示出了上位机向控制器发送升级程序的示意图;
图4示出了控制器向上位机发送升级确认信息的示意图;
图5示出了根据本发明另一实施例的多控制器的软件升级方法的流程图;
图6示出了根据本发明再一实施例的多控制器的软件升级方法的流程图;
图7示出了根据本发明实施例的多控制器升级后的地址冲突检测装置的示意图;
图8示出了根据本发明实施例的多控制器的软件升级装置的示意图;
图9示出了根据本发明另一实施例的多控制器的软件升级装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供了一种多控制器升级后的地址冲突检测方法,适用于与多个控制器通信连接的上位机,该上位机包括计算机、服务器或者移动终端。如图1所示,该方法包括下列步骤:
S101:接收第一目标控制器执行升级程序之后所发送的升级确认信息。
此处升级程序为上位机预先发送给多个第一目标控制器的,每个升级程序中包括第一目标控制器所需升级为的软件新版本(或者该第一目标控制器已有软件的补丁程序),并携带有该升级程序所对应的该第一目标控制器的地址。升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。升级确认信息包括发送升级确认信息的控制器在执行升级程序之后的地址。
例如,上位机向控制器A(其地址为0001)发送升级程序,该升级程序中携带有控制器A的地址0001。控制器A执行该升级程序后将其地址修改为升级程序中所携带的控制器A的地址,即将地址从0001修改为0001。当控制器A的升级程序没有出错时,控制器A升级前与升级后的地址是一致的。
这种机制下,当控制器A采用错误的升级程序升级时,会使得控制器A的地址被修改为0001之外的地址,如0002。
S102:根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器。
沿用上例,上位机分别向控制器A(地址为0001)、B(地址为0002)、C(地址为0003)、D(地址为0004)发送升级程序。
若控制器A、B、C均采用了正确的升级程序,从而向上位机所发送的升级确认信息中所包括的是其原先的地址,即分别为0001、0002、0003。此外,控制器D采用了错误的升级程序,如采用了控制器A的升级程序升级,从而控制器D的地址就从0004修改为了0001,从而控制器D向上位机所发送的升级程序中所包括的是地址0001。
由此,上位机所接收到的来自控制器A、B、C、D的升级确认信息中所包括的地址分别为0001、0002、0003、0001,即控制器A、B、C所对应的升级确认信息均被接收到,而控制器D所对应的升级确认信息(即包括了控制器D升级前的地址0004的升级确认信息)未被接收到。
S103:当存在所对应的升级确认信息未被接收到的第一目标控制器时,确定多个第一目标控制器执行升级程序之后存在地址冲突。
沿用上例,根据控制器D所对应的升级确认信息未被接收到便可以确定控制器A、B、C、D执行升级程序后存在了地址冲突。
需要补充说明的是,控制器所对应的升级确认信息是指:升级信息中所包括的地址与控制器的地址相同。沿用上例,包括地址0001的升级确认信息对应于控制器A,包括地址0004的升级确认信息对应于控制器D。
上述多控制器升级后的地址冲突检测方法,预先给控制器发送的每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为升级程序所携带的第一目标控制器的地址;控制器执行升级程序后,会向上位机发送升级确认信息,该升级确认信息包括发送该升级确认信息的控制器在执行升级程序之前的地址;上位机接收该升级确认信息后,根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器,当存在时,便可以确定多个第一目标控制器执行升级程序之后存在地址冲突。通过本实施例,在向多个控制器发送升级程序使其软件升级为新版本后,能够自动检测这多个控制器升级之后是否存在地址冲突。
实施例二
本实施例提供了一种多控制器的软件升级方法,适用于与多个控制器通信连接的上位机,该上位机计算机、服务器或者移动终端。如图2所示,该方法包括下列步骤:
S201:根据多个第一目标控制器的地址,向多个第一目标控制器分别发送升级程序。每个升级程序中包括第一目标控制器所需升级为的软件新版本(或者该第一目标控制器已有软件的补丁程序),并携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。
如图3所示,上位机有升级程序a、b、c、d分别对应控制器A(其地址为0001)、B(其地址为0002)、C(其地址为0003)、D(其地址为0004)。每个升级程序中包括第一目标控制器所需升级为的软件新版本(或者该第一目标控制器已有软件的补丁程序),并携带有该升级程序所对应的该第一目标控制器的地址,即:升级程序a中携带有控制器A的地址,升级程序b中携带有控制器B的地址,升级程序c中携带有控制器C的地址,升级程序d中携带有控制器D的地址。升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。升级确认信息包括发送升级确认信息的控制器在执行升级程序之后的地址。
上位机确定控制器A、B、C、D为第一目标控制器后,将每个升级程序分别发送给对应的控制器。
每个控制器接收到升级程序后,执行该升级程序,以将自身的软件升级为新的版本,同时会将自身的地址修改为其所执行升级程序所携带的第一目标控制器地址。沿用上例,控制器A接收到升级程序a之后,将其自身地址修改为升级程序a所携带的地址,即修改为0001。若控制器所执行的升级程序出错,如控制器D执行了升级程序a,则控制器D会将自身地址修改为0001。
控制器执行升级之后,会向上位机发送升级确认信息,该升级确认信息中包括控制器执行升级程序之后的地址。沿用上例,如图4所示,控制器A所发送的升级确认信息包括地址0001,控制器B所发送的升级确认信息包括地址0002,控制器C所发送的升级确认信息包括地址0003,控制器D所发送的升级确认信息包括地址0001。
需要补充说明的是,所发送的升级程序可以是不相同的,每个升级程序对应一个第一目标控制器,在向控制器发送升级程序前,预先建立各个控制器与升级程序之间的对应关系;或者,也可以有升级程序对应多个第一目标控制器,沿用上例,升级程序a可以同时对应控制器A和B,在向控制器A和B发送升级程序a之前,预先建立升级程序a与控制器A和控制器B的对应关系,在发送前先获取与控制器A所对应的升级程序a的副本a1(携带有地址0001)、与控制器B所对应的升级程序a的副本a2(携带有地址0002),然后将升级程序a的副本a1、a2分别发送给控制器A和控制器B。
S202:采用图1所示的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突。
步骤S202请参照实施例一,在此不再赘述。
S203:当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址。
冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器。沿用上例,通过上述步骤S202,可以确定控制器D所对应的升级确认信息未被接收到,则控制器D为冲突控制器。
地址冲突处理命令用于控制每个第一目标控制器将其自身升级前的地址与冲突控制器升级前的地址进行比对,并控制升级前的地址与冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为冲突控制器升级前的地址。沿用上例,通过上述确定冲突控制器的地址为0004,当控制器A接收到该地址时,将其与自身执行升级程序之前的地址0001进行比对,二者不一致,则不进行任何处理;当控制器D接收到该地址时,将其与自身执行升级程序之前的地址0004进行比对,二者一致,则将自身的地址修改为该地址,即控制器D(执行升级程序后的地址为0001)将其地址修改为0004。
S204:根据冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。
通过步骤S203可以记录下升级错误的控制器的地址,并将升级错误的控制器的地址恢复为其执行错误升级程序之前的地址,从而根据记录下的升级错误的控制器的地址,使升级错误的控制器重新升级。
沿用上例,根据冲突控制器的地址0004,向地址为0004的控制器(即控制器D)发送对应的升级程序。
上述多控制器的软件升级方法,先向多个第一目标控制器分别发送升级程序,每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;然后通过实施例一所述的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突;当存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;再根据冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。通过本实施例,可以控制多控制器进行升级,检测并记录升级错误的控制器的地址,再对升级错误的控制器重新升级。
作为本实施例的一种可选实施方式,在步骤S201之前,还包括下列步骤S205和S206。
S205:根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知。升级通知中携带有需要进行软件升级的控制器的地址。
在发送升级程序之前,选择好需要进行软件升级的控制器,如控制器A、B、C、D、E(其地址为0005)、F(其地址为0006)等六个控制器,向这些需要进行软件升级的控制器发送升级通知,即第二目标控制器即为所选择的需要进行软件升级的控制器。这六个控制器收到升级通知后,会返回应答信息。
S206:接收第二目标控制器返回的应答信息,并将返回应答信息的第二目标控制器确定为第一目标控制器。应答信息用于告知上位机发送应答信息的控制器可以开始升级,其中携带有发送应答信息的控制器的地址。
沿用上例,控制器所返回的应答信息中包括各自的地址。例如,接收到的控制器A、B、C、D所发送的应答信息所包括的地址分别为0001、0002、0003、0004,则将这四个地址所对应的控制器确定为第一目标控制器。由此可以看出第一目标控制器的数量小于或等于第二目标控制器的数量。
上述步骤S205和S206,在向控制器发送升级程序前,首先选择需要升级的控制器并向其发送升级通知,然后将返回应答信息的控制器确定为第一目标控制器,才会向第一目标控制器发送升级程序,由此可以防止需要进行软件升级的控制器无法升级(如控制器断电,或者电动汽车上的控制器正在控制电动汽车运行、电动汽车上的控制器正在控制电池充电或放电等)时而导致后续接收不到其所发送的升级确认信息,进而导致冲突控制器的判断出错。
实施例三
本实施例提供了一种多控制器的软件升级方法,适用于与上位机通信连接的控制器,该控制器包括嵌入式处理器,或者计算机、服务器、移动终端等电子设备内的处理器或控制器。如图5所示,该方法包括下列步骤:
S301:接收上位机所发送的升级程序。升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。
如图3所示,上位机有升级程序a、b、c、d分别对应控制器A(其地址为0001)、B(其地址为0002)、C(其地址为0003)、D(其地址为0004)。每个升级程序中包括第一目标控制器所需升级为的软件新版本(或者该第一目标控制器已有软件的补丁程序),并携带有该升级程序所对应的该第一目标控制器的地址,即:升级程序a中携带有控制器A的地址,升级程序b中携带有控制器B的地址,升级程序c中携带有控制器C的地址,升级程序d中携带有控制器D的地址。升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。
S302:执行升级程序,将自身的软件升级为新的版本,并将自身的地址修改为升级程序中所携带的第一目标控制器的地址。
沿用上例,控制器A接收到升级程序a之后,将其自身地址修改为升级程序a所携带的地址,即修改为0001。若控制器所执行的升级程序出错,如控制器D执行了升级程序a,则控制器D会将自身地址修改为0001。
S303:向上位机发送升级确认信息。
升级确认信息用于上位机通过图1所示的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突。
沿用上例,如图4所示,控制器A所发送的升级确认信息包括地址0001,控制器B所发送的升级确认信息包括地址0002,控制器C所发送的升级确认信息包括地址0003,控制器D所发送的升级确认信息包括地址0001。
S304:接收上位机在检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址。冲突控制器为所对应的升级确认信息未被上位机接收到的第一目标控制器。
沿用上例,上位机可以根据实施例一所述的方法确定控制器D所对应的升级确认信息未被接收到,则控制器D为冲突控制器。上位机会将发送地址冲突处理命令和冲突控制器(即控制器D)升级前的地址(即0004)。
S305:判断自身升级前的地址与冲突控制器升级前的地址是否一致。当自身升级前的地址与冲突控制器升级前的地址一致时,执行步骤S306;否则无操作。
S306:将自身的地址修改为冲突控制器升级前的地址。
若为控制器A,则接收到地址0004时会判断其与自身执行升级程序之前的地址0001是否一致,二者不一致,则不进行任何处理;若为控制器D,则接收到地址0004时会判断其与自身执行升级程序之前的地址0004是否一致,二者一致,则控制器D(执行升级程序后的地址为0001)将其地址修改为0004。
上述多控制器的软件升级方法,首先接收上位机所发送的升级程序;然后执行升级程序,将自身的软件升级为新的版本,并将自身的地址修改为升级程序中所携带的第一目标控制器的地址;然后向上位机发送升级确认信息,该升级确认信息中携带有升级后的地址;再接收上位机检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址,判断自身升级前的地址与冲突控制器升级前的地址是否一致,当一致时将自身的地址修改为冲突控制器升级前的地址。通过本实施例,上位机可以控制多控制器进行升级,检测并记录升级错误的控制器的地址,再对升级错误的控制器重新升级。
作为本实施的一种可选实施方式,在步骤S301之前,还包括下列步骤S307、S308和S309。
S307:接收上位机所发送的升级通知。升级通知中携带有需要进行软件升级的控制器的地址。
上位机在发送升级程序之前,先选择需要进行软件升级的控制器,如控制器A、B、C、D、E(其地址为0005)、F(其地址为0006)等六个控制器,上位机向这些需要进行软件升级的控制器发送升级通知,即第二目标控制器即为所选择的需要进行软件升级的控制器。这六个控制器会接收升级通知。
S308:判断需要进行升级的控制器的地址是否包括自身的地址。当需要进行升级的控制器的地址包括自身的地址时,执行步骤S309;否则无操作。
S309:向上位机发送应答信息。该应答信息用于告知上位机自身可以开始升级,其中携带有自身的地址。
沿用上例,控制器所返回的应答信息中包括各自的地址。例如,控制器A、B、C、D向上位机所发送的应答信息所包括的地址分别为0001、0002、0003、0004,则将这四个地址所对应的控制器确定为第一目标控制器。由此可以看出第一目标控制器的数量小于或等于第二目标控制器的数量。
上述步骤S307、S308和S309,在接收上位机所发送的升级程序前,首先接收上位机所发送的升级通知,判断需要进行升级的控制器的地址是否包括自身的地址,当需要进行升级的控制器的地址包括自身的地址时,向上位机发送应答信息,以便上位机可以根据应答信息可以确定第一目标控制器,并向第一目标控制器发送升级程序,由此可以防止需要进行软件升级的控制器无法升级(如控制器断电,或者电动汽车上的控制器正在控制电动汽车运行、电动汽车上的控制器正在控制电池充电或放电等)时而导致后续上位机接收不到其所发送的升级确认信息,进而导致上位机对于冲突控制器的判断出错。
实施例四
本实施例提供了一种多控制器的软件升级方法,如图6所示。具体地,该方法包括如下步骤:
S401:根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知。升级通知中携带有需要进行软件升级的控制器的地址。该步骤请参照步骤S205,在此不再赘述。
S402:接收上位机所发送的升级通知。该步骤请参照步骤S307,在此不再赘述。
S403:判断需要进行升级的控制器的地址是否包括自身的地址。当需要进行升级的控制器的地址包括自身的地址时,执行步骤S404;否则无操作。该步骤请参照步骤S308,在此不再赘述。
S404:向上位机发送应答信息。该应答信息用于告知上位机自身可以开始升级,其中携带有自身的地址。该步骤请参照步骤S309,在此不再赘述。
S405:接收第二目标控制器返回的应答信息,并将返回应答信息的第二目标控制器确定为第一目标控制器。该步骤请参照步骤S206,在此不再赘述。
S406:根据多个第一目标控制器的地址,向多个第一目标控制器分别发送升级程序。每个升级程序中包括第一目标控制器所需升级为的软件新版本(或者该第一目标控制器已有软件的补丁程序),并携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。该步骤请参照步骤S201,在此不再赘述。
S407:接收上位机所发送的升级程序。该步骤请参照步骤S301,在此不再赘述。
S408:执行升级程序,将自身的软件升级为新的版本,并将自身的地址修改为升级程序中所携带的第一目标控制器的地址。该步骤请参照步骤S302,在此不再赘述。
S409:向上位机发送升级确认信息。升级确认信息包括发送升级确认信息的控制器在执行升级程序之后的地址,用于上位机通过图1所示的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突。该步骤请参照步骤S303,在此不再赘述。
S410:接收第一目标控制器执行升级程序之后所发送的升级确认信息。该步骤请参照步骤S101,在此不再赘述。
S411:根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器。当存在所对应的升级确认信息未被接收到的第一目标控制器时,执行步骤S412;否则无操作。该步骤请参照步骤S102,在此不再赘述。
S412:确定多个第一目标控制器执行升级程序之后存在地址冲突。该步骤请参照步骤S103,在此不再赘述。
S413:当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址。冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器。地址冲突处理命令用于控制每个第一目标控制器将其自身升级前的地址与冲突控制器升级前的地址进行比对,并控制升级前的地址与冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为冲突控制器升级前的地址。该步骤请参照步骤S203,在此不再赘述。
S414:接收上位机在检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址。该步骤请参照步骤S304,在此不再赘述。
S415:判断自身升级前的地址与冲突控制器升级前的地址是否一致。当自身升级前的地址与冲突控制器升级前的地址一致时,执行步骤S416;否则无操作。该步骤请参照步骤S305,在此不再赘述。
S416:将自身的地址修改为冲突控制器升级前的地址。该步骤请参照步骤S306,在此不再赘述。
S417:根据冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。该步骤请参照步骤S204,在此不再赘述。
需要补充说明的是,上述步骤S401、S405、S406、S410、S411、S412、S413和S417由上位机执行;步骤S402、S403、S404、S407、S408、S409、S414、S415、S416由控制器执行。
实施例五
本实施例提供了一种多控制器升级后的地址冲突检测装置,适用于与多个控制器通信连接的上位机,该上位机包括计算机、服务器或者移动终端。如图7所示,该装置包括第一接收单元10、第一判断单元20和确定单元30。
第一接收单元10,用于接收第一目标控制器执行升级程序之后所发送的升级确认信息。升级程序为预先发送给多个第一目标控制器的,每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。升级确认信息包括发送升级确认信息的控制器在执行升级程序之后的地址。
第一判断单元20,用于根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器。
确定单元30,用于当存在所对应的升级确认信息未被接收到的第一目标控制器时,确定多个第一目标控制器执行升级程序之后存在地址冲突。
上述多控制器升级后的地址冲突检测装置,预先给控制器发送的每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为升级程序所携带的第一目标控制器的地址;控制器执行升级程序后,会向上位机发送升级确认信息,该升级确认信息包括发送该升级确认信息的控制器在执行升级程序之前的地址;上位机接收该升级确认信息后,根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器,当存在时,便可以确定多个第一目标控制器执行升级程序之后存在地址冲突。通过本实施例,在向多个控制器发送升级程序使其软件升级为新版本后,能够自动检测这多个控制器升级之后是否存在地址冲突。
实施例六
本实施例提供了一种多控制器的软件升级装置,适用于与多个控制器通信连接的上位机,该上位机计算机、服务器或者移动终端。如图8所示,该装置包括第一发送单元40、第二发送单元50、第三发送单元60,以及实施例五所述的多控制器升级后的地址冲突检测装置中的第一接收单元10、第一判断单元20、确定单元30。
第一发送单元40,用于根据多个第一目标控制器的地址,向多个第一目标控制器分别发送升级程序。每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。
第二发送单元50,用于当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址。冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器。地址冲突处理命令用于控制每个第一目标控制器将其自身升级前的地址与冲突控制器升级前的地址进行比对,并控制升级前的地址与冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为冲突控制器升级前的地址。
第三发送单元60,用于根据冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。
上述多控制器的软件升级装置,先向多个第一目标控制器分别发送升级程序,每个升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;然后通过实施例一所述的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突;当存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;再根据冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。通过本实施例,可以控制多控制器进行升级,检测并记录升级错误的控制器的地址,再对升级错误的控制器重新升级。
作为本实施例的一种可选实施方式,该装置还包括第四发送单元70、第二接收单元80。
第四发送单元70,用于根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知。升级通知中携带有需要进行软件升级的控制器的地址。
第二接收单元80,用于接收第二目标控制器返回的应答信息,并将返回应答信息的第二目标控制器确定为第一目标控制器。应答信息用于告知上位机发送应答信息的控制器可以开始升级,其中携带有发送应答信息的控制器的地址。
实施例七
本实施例提供了一种多控制器的软件升级装置,适用于与上位机通信连接的控制器,该控制器包括嵌入式处理器,或者计算机、服务器、移动终端等电子设备内的处理器或控制器。如图9所示,该装置包括:
第三接收单元90,用于接收上位机所发送的升级程序。升级程序中携带有其所对应的第一目标控制器的地址,升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址。
执行单元100,用于执行升级程序,将自身的软件升级为新的版本,并将自身的地址修改为升级程序中所携带的第一目标控制器的地址。
第五发送单元110,用于向上位机发送升级确认信息,升级确认信息用于上位机通过权利要求6的多控制器升级后的地址冲突检测装置检测升级后的多个第一目标控制器是否存在地址冲突。
第四接收单元120,用于接收上位机在检测到升级后的多个第一目标控制器存在地址冲突时所发送的地址冲突处理命令和冲突控制器升级前的地址。冲突控制器为所对应的升级确认信息未被上位机接收到的第一目标控制器。
第二判断单元130,用于判断自身升级前的地址与冲突控制器升级前的地址是否一致。
修改单元140,用于当自身升级前的地址与冲突控制器升级前的地址一致时,将自身的地址修改为冲突控制器升级前的地址。
上述多控制器的软件升级装置,首先接收上位机所发送的升级程序;然后执行升级程序,将自身的软件升级为新的版本,并将自身的地址修改为升级程序中所携带的第一目标控制器的地址;然后向上位机发送升级确认信息,该升级确认信息中携带有升级后的地址;再接收上位机检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址,判断自身升级前的地址与冲突控制器升级前的地址是否一致,当一致时将自身的地址修改为冲突控制器升级前的地址。通过本实施例,上位机可以控制多控制器进行升级,检测并记录升级错误的控制器的地址,再对升级错误的控制器重新升级。
作为本实施例的一种可选实施方式,该装置还包括第五接收单元150和第三判断单元160。
第五接收单元150,用于接收上位机所发送的升级通知。升级通知中携带有需要进行软件升级的控制器的地址。
第三判断单元160,用于判断需要进行升级的控制器的地址是否包括自身的地址。
当需要进行升级的控制器的地址包括自身的地址时,执行接收上位机所发送的升级程序的步骤。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种多控制器升级后的地址冲突检测方法,其特征在于,包括:
接收第一目标控制器执行升级程序之后所发送的升级确认信息;所述升级程序为预先发送给多个第一目标控制器的,每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;所述升级确认信息包括发送所述升级确认信息的控制器在执行升级程序之后的地址;
根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器;
当存在所对应的升级确认信息未被接收到的第一目标控制器时,确定多个第一目标控制器执行升级程序之后存在地址冲突。
2.一种多控制器的软件升级方法,其特征在于,包括:
根据多个第一目标控制器的地址,向所述多个第一目标控制器分别发送升级程序;每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;
采用权利要求1所述的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突;
当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器;所述地址冲突处理命令用于控制每个所述第一目标控制器将其自身升级前的地址与所述冲突控制器升级前的地址进行比对,并控制升级前的地址与所述冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为所述冲突控制器升级前的地址;
根据所述冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。
3.根据权利要求2所述的多控制器的软件升级方法,其特征在于,所述根据多个第一目标控制器的地址,向所述多个第一目标控制器分别发送升级程序的步骤之前,还包括:
根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;
接收第二目标控制器返回的应答信息,并将返回所述应答信息的第二目标控制器确定为第一目标控制器;所述应答信息用于告知上位机发送所述应答信息的控制器可以开始升级,其中携带有发送所述应答信息的控制器的地址。
4.一种多控制器的软件升级方法,其特征在于,包括:
接收上位机所发送的升级程序;所述升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;
执行所述升级程序,将自身的软件升级为新的版本,并将自身的地址修改为所述升级程序中所携带的第一目标控制器的地址;
向所述上位机发送升级确认信息,所述升级确认信息用于所述上位机通过权利要求1所述的多控制器升级后的地址冲突检测方法检测升级后的多个第一目标控制器是否存在地址冲突;
接收所述上位机在检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被所述上位机接收到的第一目标控制器;
判断自身升级前的地址与所述冲突控制器升级前的地址是否一致;
当自身升级前的地址与所述冲突控制器升级前的地址一致时,将自身的地址修改为所述冲突控制器升级前的地址。
5.根据权利要求4所述的多控制器的软件升级方法,其特征在于,所述接收所述上位机所发送的升级程序的步骤之前,还包括:
接收所述上位机所发送的升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;
判断所述需要进行升级的控制器的地址是否包括自身的地址;
当所述需要进行升级的控制器的地址包括自身的地址时,向所述上位机发送应答信息;所述应答信息用于告知所述上位机自身可以开始升级,其中携带有自身的地址。
6.一种多控制器升级后的地址冲突检测装置,其特征在于,包括:
第一接收单元,用于接收第一目标控制器执行升级程序之后所发送的升级确认信息;所述升级程序为预先发送给多个第一目标控制器的,每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;所述升级确认信息包括发送所述升级确认信息的控制器在执行升级程序之后的地址;
第一判断单元,用于根据预先存储的多个第一目标控制器升级前的地址,判断是否存在所对应的升级确认信息未被接收到的第一目标控制器;
确定单元,用于当存在所对应的升级确认信息未被接收到的第一目标控制器时,确定多个第一目标控制器执行升级程序之后存在地址冲突。
7.一种多控制器的软件升级装置,其特征在于,包括:
第一发送单元,用于根据多个第一目标控制器的地址,向所述多个第一目标控制器分别发送升级程序;每个升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;
权利要求6所述的多控制器升级后的地址冲突检测装置中的所述第一接收单元、所述第一判断单元、所述确定单元;
第二发送单元,用于当升级后的多个第一目标控制器存在地址冲突时,向多个第一目标控制器发送地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被接收到的第一目标控制器;所述地址冲突处理命令用于控制每个所述第一目标控制器将其自身升级前的地址与所述冲突控制器升级前的地址进行比对,并控制升级前的地址与所述冲突控制器升级前的地址一致的第一目标控制将自身的地址修改为所述冲突控制器升级前的地址;
第三发送单元,用于根据所述冲突控制器升级前的地址,向其对应的第一目标控制器重新发送对应的升级程序。
8.根据权利要求7所述的多控制器的软件升级装置,其特征在于,还包括:
第四发送单元,用于根据多个第二目标控制器的地址,向多个第二目标控制器发送升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;
第二接收单元,用于接收第二目标控制器返回的应答信息,并将返回所述应答信息的第二目标控制器确定为第一目标控制器;所述应答信息用于告知上位机发送所述应答信息的控制器可以开始升级,其中携带有发送所述应答信息的控制器的地址。
9.一种多控制器的软件升级装置,其特征在于,包括:
第三接收单元,用于接收上位机所发送的升级程序;所述升级程序中携带有其所对应的第一目标控制器的地址,所述升级程序被执行时会使执行其的控制器的软件升级为新的版本,并将执行其的控制器的地址修改为其所携带的第一目标控制器的地址;
执行单元,用于执行所述升级程序,将自身的软件升级为新的版本,并将自身的地址修改为所述升级程序中所携带的第一目标控制器的地址;
第五发送单元,用于向所述上位机发送升级确认信息,所述升级确认信息用于所述上位机通过权利要求6所述的多控制器升级后的地址冲突检测装置检测升级后的多个第一目标控制器是否存在地址冲突;
第四接收单元,用于接收所述上位机在检测到升级后的多个第一目标控制器存在地址冲突后所发送的地址冲突处理命令和冲突控制器升级前的地址;所述冲突控制器为所对应的升级确认信息未被所述上位机接收到的第一目标控制器;
第二判断单元,用于判断自身升级前的地址与所述冲突控制器升级前的地址是否一致;
修改单元,用于当自身升级前的地址与所述冲突控制器升级前的地址一致时,将自身的地址修改为所述冲突控制器升级前的地址。
10.根据权利要求9所述的多控制器的软件升级装置,其特征在于,还包括:
第五接收单元,用于接收所述上位机所发送的升级通知;所述升级通知中携带有需要进行软件升级的控制器的地址;
第三判断单元,用于判断所述需要进行升级的控制器的地址是否包括自身的地址;
当所述需要进行升级的控制器的地址包括自身的地址时,执行所述接收所述上位机所发送的升级程序的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710071434.4A CN106951276B (zh) | 2017-02-09 | 2017-02-09 | 多控制器的软件升级及地址冲突检测方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710071434.4A CN106951276B (zh) | 2017-02-09 | 2017-02-09 | 多控制器的软件升级及地址冲突检测方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106951276A true CN106951276A (zh) | 2017-07-14 |
CN106951276B CN106951276B (zh) | 2020-05-12 |
Family
ID=59466324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710071434.4A Active CN106951276B (zh) | 2017-02-09 | 2017-02-09 | 多控制器的软件升级及地址冲突检测方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106951276B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650099A (zh) * | 2020-11-27 | 2021-04-13 | 苏州精控能源科技有限公司 | 一种电池监控平台的控制方法及控制系统 |
CN117459393A (zh) * | 2023-12-25 | 2024-01-26 | 天地阳光通信科技(北京)有限公司 | 组网设备升级方法、系统、电子装置及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070195627A1 (en) * | 2006-02-23 | 2007-08-23 | Hynix Semiconductor Inc. | Dynamic semiconductor memory with improved refresh mechanism |
CN101309185A (zh) * | 2008-07-16 | 2008-11-19 | 杭州华三通信技术有限公司 | 堆叠系统中多主用设备的处理方法和堆叠成员设备 |
CN101610182A (zh) * | 2009-06-26 | 2009-12-23 | 杭州华三通信技术有限公司 | 堆叠中多主用设备冲突检测方法及堆叠成员设备 |
CN102402444A (zh) * | 2011-11-15 | 2012-04-04 | 北京世纪瑞尔技术股份有限公司 | 一种软件远程升级的方法 |
US20160275027A1 (en) * | 2015-03-16 | 2016-09-22 | Dell Products, Lp | System and Method to Avoid SMBus Address Conflicts via a Baseboard Management Controller |
-
2017
- 2017-02-09 CN CN201710071434.4A patent/CN106951276B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070195627A1 (en) * | 2006-02-23 | 2007-08-23 | Hynix Semiconductor Inc. | Dynamic semiconductor memory with improved refresh mechanism |
CN101026003A (zh) * | 2006-02-23 | 2007-08-29 | 海力士半导体有限公司 | 具有改善刷新机制的动态半导体存储器 |
CN101309185A (zh) * | 2008-07-16 | 2008-11-19 | 杭州华三通信技术有限公司 | 堆叠系统中多主用设备的处理方法和堆叠成员设备 |
CN101610182A (zh) * | 2009-06-26 | 2009-12-23 | 杭州华三通信技术有限公司 | 堆叠中多主用设备冲突检测方法及堆叠成员设备 |
CN102402444A (zh) * | 2011-11-15 | 2012-04-04 | 北京世纪瑞尔技术股份有限公司 | 一种软件远程升级的方法 |
US20160275027A1 (en) * | 2015-03-16 | 2016-09-22 | Dell Products, Lp | System and Method to Avoid SMBus Address Conflicts via a Baseboard Management Controller |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650099A (zh) * | 2020-11-27 | 2021-04-13 | 苏州精控能源科技有限公司 | 一种电池监控平台的控制方法及控制系统 |
CN117459393A (zh) * | 2023-12-25 | 2024-01-26 | 天地阳光通信科技(北京)有限公司 | 组网设备升级方法、系统、电子装置及可读存储介质 |
CN117459393B (zh) * | 2023-12-25 | 2024-03-19 | 天地阳光通信科技(北京)有限公司 | 组网设备升级方法、系统、电子装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106951276B (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103677946B (zh) | 电梯设备控制程序的更新方法和系统 | |
CN103314359B (zh) | 用于更新固件的系统和方法 | |
CN105259806B (zh) | 控制器升级方法和系统及主控制器和从控制器 | |
CN101268620B (zh) | 用于管理设备管理对象的设备管理系统和方法 | |
CN109654666B (zh) | 一种调试机组的方法、装置及设备 | |
CN103873295A (zh) | 自动电缆标识验证系统 | |
JP4047458B2 (ja) | 不正位置にあるscsi機器の検知 | |
CN104991800A (zh) | 一种未联网设备固件升级方法、装置和系统 | |
CN106951276A (zh) | 多控制器的软件升级及地址冲突检测方法、装置 | |
CN113095227B (zh) | 一种机器人定位方法、装置、电子设备及存储介质 | |
CN104125218A (zh) | 一种设备识别方法、装置以及系统 | |
CN109753044A (zh) | 电池管理系统控制器升级方法及装置 | |
CN103761131A (zh) | 一种基于内存共享的多板卡部件自动更新方法及系统 | |
CN109388603A (zh) | 状态信息获取和反馈方法、装置、介质、终端及示教器 | |
CN106095474A (zh) | 用于更新运输工具中的软件的方法和装置 | |
CN113596619B (zh) | 消防物联网多设备状态判断方法、装置、设备及存储介质 | |
CN107168725A (zh) | 一种控制器的软件升级方法、装置及系统 | |
CN112532678B (zh) | 车载控制装置、信息处理装置、车辆用网络系统、应用程序提供方法及非易失性存储介质 | |
JP2020147249A (ja) | 電子制御装置、サーバ、通信システム | |
CN108924325A (zh) | 数据处理方法及相关装置 | |
CN113347570B (zh) | 共享车辆功能更新方法、装置及共享车辆 | |
CN109446008A (zh) | 一种故障原因检测方法、故障原因检测装置及终端设备 | |
CN105808268A (zh) | 一种信息处理方法、电子设备及系统 | |
CN104869531A (zh) | 一种群组成员更新方法和装置 | |
US11171857B2 (en) | Identifying an electronic device connected to a communication network that has XCP enabled |
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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 215129 West of Building 28, No. 2, Mount Taishan Road, Suzhou High tech Zone, Suzhou, Jiangsu Province Patentee after: Suzhou Jingkong Energy Technology Co.,Ltd. Address before: Room 102, Building 12, Suzhou High tech Software Park, No. 78 Keling Road, High tech Zone, Suzhou City, Jiangsu Province, 215011 Patentee before: SUZHOU JK ENERGY Ltd. |