首页> 中国专利> 控制器升级方法和系统及主控制器和从控制器

控制器升级方法和系统及主控制器和从控制器

摘要

本发明公开了一种控制器升级方法和系统及主控制器和从控制器。其中,控制器包括主控制器和从控制器,该控制器升级方法包括:主控制器接收升级请求命令;主控制器判断升级请求命令是否是二级升级程序的升级请求命令,其中,二级升级程序的升级请求命令为用于请求对从控制器升级的命令;主控制器在判断出升级请求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制器以便从控制器执行升级;以及主控制器在判断出升级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级。通过本发明,达到了对从控制器执行升级的效果。

著录项

  • 公开/公告号CN105259806A

    专利类型发明专利

  • 公开/公告日2016-01-20

    原文格式PDF

  • 申请/专利权人 珠海格力电器股份有限公司;

    申请/专利号CN201510677085.1

  • 发明设计人 赵天光;马争先;孙祖祥;邝耀辉;

    申请日2015-10-16

  • 分类号G05B19/04(20060101);

  • 代理机构11240 北京康信知识产权代理有限责任公司;

  • 代理人韩建伟;李志刚

  • 地址 519070 广东省珠海市前山金鸡西路六号

  • 入库时间 2023-12-18 13:47:49

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-01-23

    授权

    授权

  • 2016-02-17

    实质审查的生效 IPC(主分类):G05B19/04 申请日:20151016

    实质审查的生效

  • 2016-01-20

    公开

    公开

说明书

技术领域

本发明涉及通信领域,具体而言,涉及一种控制器升级方法和系统及主控制器和 从控制器。

背景技术

控制器用于实现系统的控制功能,通过按照预定顺序改变主电路的连接状态,或 者通过改变电路中电阻的阻值来控制电路中的电压或者电流来实现系统的启动、运转、 停止等操作,可以由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制 器组成,在程序的控制下协调和指挥整个计算机系统实现一定的功能。比如,智能配 送柜的控制系统可以在预先设置好的程序控制下实现智能配送柜根据物品的属性对物 品进行分类存储和配送的功能。控制器包括主控制器和从控制器。主控制器为控制系 统运行的主要实现部分,从控制器基于主控制器的控制而实现控制功能。随着对控制 系统功能的不断完善,控制系统的程序不断更新。为了满足控制系统的升级需求,目 前,控制器的升级功能,尤其是主控制器的远程升级功能采用直接升级的方式,但是, 当需要对从控制器的程序执行升级时,现有技术无法满足升级需求,制约产品的发展。

针对相关技术中从控制器无法满足升级需求的问题,目前尚未提出有效的解决方 案。

发明内容

本发明的主要目的在于提供一种控制器升级方法和系统及主控制器和从控制器, 以至少解决从控制器无法满足升级需求的问题。

为了实现上述目的,根据本发明的一个方面,提供了一种控制器升级方法。其中, 控制器包括主控制器和从控制器,该控制器升级方法包括:主控制器接收升级请求命 令;主控制器判断升级请求命令是否是二级升级程序的升级请求命令,其中,二级升 级程序的升级请求命令为用于请求对从控制器升级的命令;主控制器在判断出升级请 求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制器以 便从控制器执行升级;以及主控制器在判断出升级请求命令不是二级升级程序的升级 请求命令,对自身程序执行升级。

进一步地,在主控制器将从控制器的升级程序转发至从控制器之前,该控制器升 级方法还包括:主控制器将二级升级程序的升级请求命令发送至从控制器;主控制器 接收从控制器回复的升级指令确认帧,其中,从控制器用于在接收到二级升级程序的 升级请求命令之后回复升级指令确认帧;以及主控制器将升级指令确认帧发送至上位 机,主控制器将从控制器的升级程序转发至从控制器包括:主控制器接收上位机下发 的从控制器的升级程序帧;以及主控制器将从控制器的升级程序帧发送至从控制器。

进一步地,升级程序包括多帧数据,主控制器转发升级程序至从控制器包括:主 控制器依次将多帧数据的每一帧数据发送至从控制器,并在每发送一帧数据之后,接 收从控制器对该帧数据的升级状态信息,并根据升级状态信息判断该帧数据的写入是 否成功;主控制器判断从控制器的所有升级程序是否写入完毕。

进一步地,一个主控制器对应多个从控制器,主控制器在判断出升级请求命令是 二级升级程序的升级请求命令时,该控制器升级方法还包括:主控制器判断升级请求 命令请求升级的从控制器;以及主控制器将升级程序发送至升级请求命令请求升级的 从控制器。

为了实现上述目的,根据本发明的一个方面,还提供了一种控制器升级方法。其 中,控制器包括主控制器和从控制器,该控制器升级方法包括:从控制器接收来自主 控制器的二级升级程序的升级请求命令,其中,二级升级程序的升级请求命令为用于 请求对从控制器升级的命令,主控制器用于接收升级请求命令,判断升级请求命令是 否是二级升级程序的升级请求命令,并在判断出升级请求命令不是二级升级程序的升 级请求命令,对自身程序执行升级,在判断出升级请求命令是二级升级程序的升级请 求命令时,将从控制器的升级程序转发至从控制器;以及从控制器通过升级程序执行 升级。

进一步地,在从控制器接收来自主控制器的二级升级程序的升级请求命令之后, 该控制器升级方法还包括:从控制器根据二级升级程序的升级请求命令生成升级指令 确认帧;从控制器将升级指令确认帧发送至主控制器,其中,主控制器用于转发升级 指令确认帧至上位机,接收上位机下发的升级程序。

进一步地,升级程序包括多帧数据,从控制器通过升级程序执行升级包括:从控 制器每接收主控制器发送的一帧数据,生成对该帧数据的升级状态信息,其中,升级 状态信息用于表示对该帧数据的写入是否成功;以及从控制器将升级状态信息发送至 主控制器。

为了实现上述目的,根据本发明的一个方面,还提供了一种主控制器。该主控制 器包括:接收单元,用于接收升级请求命令;判断单元,用于判断升级请求命令是否 是二级升级程序的升级请求命令,其中,二级升级程序的升级请求命令为用于请求对 从控制器升级的命令;转发单元,用于在判断出升级请求命令是二级升级程序的升级 请求命令时,将从控制器的升级程序转发至从控制器以便从控制器执行升级;以及升 级单元,用于在判断出升级请求命令不是二级升级程序的升级请求命令,对自身程序 执行升级。

为了实现上述目的,根据本发明的一个方面,还提供了一种从控制器。该从控制 器包括:接收单元,用于接收来自主控制器的二级升级程序的升级请求命令,其中, 二级升级程序的升级请求命令为用于请求对从控制器升级的命令,主控制器用于接收 升级请求命令,判断升级请求命令是否是二级升级程序的升级请求命令,并在判断出 升级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级,在判断出升 级请求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制 器;以及升级单元,用于通过升级程序执行升级。

为了实现上述目的,根据本发明的一个方面,还提供了一种控制器升级系统。该 控制器升级系统包括:包括上位机、主控制器和从控制器,其中,上位机用于发送升 级请求命令,主控制器用于接收升级请求命令,判断升级请求命令是否是二级升级程 序的升级请求命令,在判断出升级请求命令是二级升级程序的升级请求命令时,将从 控制器的升级程序转发至从控制器,在判断出升级请求命令不是二级升级程序的升级 请求命令,对自身程序执行升级,其中,二级升级程序的升级请求命令为用于请求对 从控制器升级的命令;以及从控制器用于根据从控制器的升级程序执行升级。

在本发明中,控制器包括主控制器和从控制器,采用主控制器接收升级请求命令, 主控制器然后判断升级请求命令是否是二级升级程序的升级请求命令,其中,二级升 级程序的升级请求命令为用于请求对从控制器升级的命令,主控制器在判断出升级请 求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制器以 便从控制器执行升级,主控制器在判断出升级请求命令不是二级升级程序的升级请求 命令,对自身程序执行升级,解决了从控制器无法满足升级需求的问题,进而达到了 对从控制器执行升级的效果。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实 施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明第一实施例的控制器升级系统的示意图;

图2是根据本发明第二实施例的控制器升级系统的示意图;

图3是根据本发明第一实施例的控制器升级方法的流程图;

图4是根据本发明第二实施例的控制器升级方法的流程图;

图5是根据本发明第三实施例的控制器升级方法的流程图;

图6是根据本发明第四实施例的控制器升级方法的流程图;

图7是根据本发明实施例的主控制器的示意图;以及

图8是根据本发明实施例的从控制器的示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相 互组合。下面将参考附图并结合实施例来详细说明本发明。

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的 附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例 仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领 域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于 本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第 二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这 样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语 “包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含 了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步 骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的 其它步骤或单元。

本发明实施例提供了一种控制器升级系统。

图1是根据本发明第一实施例的控制器升级系统的示意图。如图1所示,该控制 器升级系统包括上位机10,主控制器20和从控制器30。

上位机10,用于发送升级请求命令。

控制器利用升级程序来执行升级。在控制器接收升级程序之前,接收升级请求命 令,也即,接收升级程序的升级请求命令。升级请求命令可以是请求控制器的主控制 器升级的命令,也可以是请求对控制器的从控制器升级的命令,也即,二级升级程序 的升级请求命令。在控制器接收升级请求命令之后,控制器通过对当前工作状况进行 综合分析和判断来确定是否可以执行升级,从而对升级请求命令进行应答以确定控制 器是否进入升级准备。优选地,通过上位机10发送控制器的升级请求命令。上位机 10可以通过总线方式将升级请求命令发送至控制器,然后接收来自控制器的对升级请 求命令的升级指令确认帧,也即,控制器对升级请求命令的应答结果。上位机10对升 级指令确认帧进行分析,当确定控制器可以执行升级时,发送控制器的升级程序至控 制器。优选地,上位机10对升级程序进行处理,将升级程序分成多帧数据,每次发送 升级程序的一帧数据至控制器。

主控制器20,用于接收升级请求命令,判断升级请求命令是否是二级升级程序的 升级请求命令,其中,二级升级程序的升级请求命令为用于请求对从控制器升级的命 令,在判断出升级请求命令是二级升级程序的升级请求命令时,将从控制器的升级程 序转发至从控制器以便从控制器执行升级,在判断出升级请求命令不是二级升级程序 的升级请求命令,对自身程序执行升级。

控制器包括主控制器和从控制器。在主控制器20将从控制器的升级程序转发至从 控制器之前,该实施例的主控制器20接收上位机10发送的升级请求命令,对升级请 求命令进行解析。通过对升级请求命令的解析,主控制器20判断升级请求命令是否是 二级升级程序的升级请求命令。如果主控制器20判断出升级请求命令是二级升级程序 的升级请求命令,则主控制器20不执行升级,主控制器将二级升级程序的升级请求命 令发送至从控制器,请求从控制器升级,从控制器利用从控制器的升级程序执行升级。

优选地,主控制器20接收从控制器回复的升级指令确认帧,其中,从控制器用于 在接收到二级升级程序的升级请求命令之后回复升级指令确认帧。主控制器20发送升 级指令确认帧至上位机10。上位机10在接收升级指令确认帧之后发送升级程序帧至 主控制器20,主控制器20再转发升级程序帧至从控制器。

优选地,升级程序包括多帧数据,主控制器20接收来自上位机的升级程序之后, 依次将多帧数据的每一帧数据发送至从控制器,并在每发送一帧数据之后,接收从控 制器对该帧数据的升级状态信息,并根据升级状态信息判断该帧数据的写入是否成功; 主控制器20判断从控制器的所有升级程序是否写入完毕。可选地,上位机10分别发 送升级程序的多帧数据至主控制器20,主控制器20对升级程序的多帧数据分别进行 转发。在主控制器20转发升级程序的一帧数据至从控制器之后,转发从控制器发送的 对该帧数据的升级状态信息至上位机10,从控制器根据升级状态信息执行升级。上位 机10在接收升级状态信息之后发送升级程序的下一帧数据至主控制器20。主控制器 20转发升级程序的下一帧数据至从控制器,直至从控制器利用升级请求命令对应的升 级程序升级完毕。如果主控制器20判断出上位机10发送的升级请求命令不是请求从 控制器升级的二级升级程序的升级请求命令,则主控制器20对自身程序执行升级。

从控制器30,用于根据从控制器的升级程序执行升级。

从控制器30在接收主控制器20发送的二级升级程序的升级请求命令之后,从控 制器30根据升级请求命令生成升级指令确认帧。具体而言,从控制器30根据升级请 求命令对当前工作状况进行综合分析和判断来确定是否可以执行升级。如果从控制器 30确定可以执行升级,则从控制器30对二级升级程序的升级请求命令进行确定,得 到升级指令确认帧,然后将升级指令确认帧发送至主控制器20,进入升级准备。主控 制器20转发升级指令确认帧至上位机10,上位机10明确从控制器30可以执行升级, 发送从控制器升级的二级升级程序至主控制器20,主控制器20将二级升级程序转发 至从控制器30,从控制器30利用二级升级程序进行升级。

优选地,升级程序包括多帧数据,从控制器30利用二级升级程序执行升级包括: 从控制器每接收主控制器发送的一帧数据,生成对该帧数据的升级状态信息,也即, 从控制器30对来自主控制器20的二级升级程序进行响应,得到升级状态信息,其中, 升级状态信息用于表示对该帧数据的写入是否成功。可选地,从控制器30接收来自主 控制器20的二级升级程序的一帧数据,从控制器30对二级升级程序的一帧数据进行 响应,首先根据预设规则对二级升级程序进行判断,得到判断结果,比如,该升级程 序的一帧数据在主控制器的存储区中存储的位置和占用空间大小等。然后根据判断结 果将二级升级程序的一帧数据写入从控制器30的预设存储空间,得到升级状态信息, 将升级状态信息发送至主控制器20。其中,主控制器20转发升级状态信息至上位机 10,上位机10在接收升级状态信息之后,对升级状态信息进行确定,发送二级升级程 序的下一帧数据至主控制器20。从控制器30接收来自主控制器20的二级升级程序的 下一帧数据,继续对二级升级程序的下一帧数据进行响应。在从控制器30对二级升级 程序的每一帧数据进行响应的过程中,保证从控制器30接收二级升级程序的每一帧数 据的正确性,擦除存储空间的正确性和写入预设存储空间的正确性,直至从控制器30 将二级升级程序的多帧数据全部写入从控制器30的预设存储空间,则从控制器30完 成升级。

图2是根据本发明第二实施例的控制器升级系统。如图2所示,该控制器升级系 统包括上位机10,主控制器20和从控制器30。

优选地,一个主控制器20对应多个从控制器,多个从控制器包括在从控制器30 中。主控制器20在判断出升级请求命令是二级升级程序的升级请求命令时,主控制器 判断升级请求命令请求升级的从控制器,主控制器20将升级程序发送至升级请求命令 请求升级的从控制器。主控制器和从控制器通过通讯线相连,从控制器与从控制器之 间也通过通讯线连接,通过一定的通讯协议完成主控制器和从控制器的升级,其中, L表示控制器的火线,N表示控制器的零线。

该实施例通过上位机10发送升级请求命令,其中,升级请求命令为升级程序的升 级请求命令,通过主控制器20接收升级请求命令,判断升级请求命令是否是二级升级 程序的升级请求命令,其中,二级升级程序的升级请求命令为用于请求对从控制器30 升级的命令,在判断出升级请求命令是二级升级程序的升级请求命令时,将升级程序 转发至从控制器30以便从控制器30根据从控制器的升级程序执行升级,在判断出升 级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级;通过从控制器 30接收来自主控制器20的二级升级程序的升级请求命令,对二级升级程序的升级请 求命令进行确定,得到升级指令确认帧,发送升级指令确认帧至主控制器20,其中, 主控制器20转发升级指令确认帧至上位机10,上位机10在接收升级指令确认帧之后 发送升级程序至主控制器20,从控制器30接收来自主控制器20的升级程序,利用升 级程序执行升级,从而达到了对从控制器30执行升级的效果。

本发明实施例还提供了一种控制器升级方法。需要说明的是,该控制器升级方法 可用于控制器升级系统的执行。

本发明实施例提供的控制器升级方法或控制器升级系统可以用于空调器中,因而, 本发明实施例还提供了一种空调器,包括本发明实施例提供的主控制器和/或从控制 器。

图3是根据本发明第一实施例的控制器升级方法的流程图。如图3所示,该控制 器升级方法包括以下步骤:

步骤S302,主控制器接收升级请求命令。

控制器包括主控制器和从控制器,主控制器和从控制器通过通讯线连接,通过一 定的通讯协议传输数据。控制器利用升级程序来执行升级,优选地,从控制器可以通 过主控制器执行升级,主控制器接收升级请求命令。

主控制器检测是否接收到升级请求命令,也即,接收到升级程序的升级请求命令。 如果主控制器接收的不是升级程序的请求命令,则主控制器不执行升级,主控制器所 属系统的主程序正常处理系统的任务。如果主控制器接收的为上位机发送的升级请求 命令,则对控制器执行升级。升级请求命令可以是请求主控制器升级的命令,也可以 是请求从控制器升级的命令,也即,二级升级程序的升级请求命令。当升级请求命令 为二级升级程序的请求命令时,升级程序用于对从控制器升级,当升级请求命令不为 二级升级程序的请求命令时,升级程序用于对主控制器升级。优选地,升级请求命令 通过上位机以总线方式发送至主控制器,其中,上位机对升级程序进行处理,将升级 程序分成多帧数据,每次发送升级程序的一帧数据,直至升级程序的多帧数据全部发 送完。

步骤S304,主控制器判断升级请求命令是否是二级升级程序的升级请求命令,其 中,二级升级程序的升级请求命令为用于请求对从控制器升级的命令。

在主控制器接收来自上位机的升级请求命令之后,主控制器对升级请求命令进行 解析。主控制器通过对升级请求命令的解析,判断升级请求命令是否是二级升级程序 的升级请求命令。其中,二级升级程序的升级请求命令为用于请求对从控制器升级的 命令。可选地,主控制器具有升级程序判断函数,通过升级程序判断函数来完成对升 级请求命令是否是二级升级程序的升级请求命令的判断。

步骤S306,主控制器在判断出升级请求命令是二级升级程序的升级请求命令时, 将从控制器的升级程序转发至从控制器以便从控制器执行升级。

当主控制器判断出升级请求命令是二级升级程序的升级请求命令时,则主控制器 不执行升级,升级请求命令对应的升级程序用于对从控制器升级,主控制器将从控制 器的升级程序转发至从控制器以便从控制器执行升级。

优选地,在主控制器将从控制器的升级程序转发至从控制器之前,主控制器将升 级程序的升级请求命令发送至从控制器,请求从控制器升级,从控制器利用二级升级 程序执行升级。主控制器接收从控制器回复的升级指令确认帧,其中,从控制器用于 在接收到二级升级程序的升级请求命令之后回复升级指令确认帧;以及主控制器将升 级指令确认帧发送至上位机。上位机在接收升级指令确认帧之后再发送升级程序帧至 主控制器,主控制器转发升级程序帧至从控制器。

优选地,升级程序包括多帧数据,主控制器转发升级程序至从控制器包括:主控 制器依次将多帧数据的每一帧数据发送至从控制器,并在每发送一帧数据之后,接收 控制器对该帧数据的升级状态信息,并根据升级状态信息判断该帧数据的写入是否成 功;主控制器判断从控制器的所有升级程序是否写入完毕。具体而言,在主控制器发 送升级程序的一帧数据至从控制器之后,将升级程序的一帧数据写入从控制器的预设 存储区域,转发从控制器发送的升级状态信息至上位机。上位机在接收升级状态信息 之后发送升级程序的下一帧数据至主控制器,主控制器转发升级程序的下一帧数据至 从控制器,直至从控制器利用升级请求命令对应的升级程序升级完毕,从而达到了对 从控制器执行升级的效果。

可选地,主控制器转发从控制器发送的升级状态信息至上位机包括主控制器判断 在预设时间内是否接收到升级状态信息,如果主控制器判断出在预设时间内没有接收 到升级状态信息,则主控制器重新转发升级程序的一帧数据至从控制器,继续等待接 收从控制器发送的对该升级程序的一帧数据进行响应的升级状态信息。

可选地,主控制器转发从控制器发送的升级状态信息至上位机包括主控制器在接 收到从控制器发送的升级状态信息之后,判断升级状态信息是否符合预设规则,比如, 升级状态信息是否为升级程序的一帧数据正常被从控制器接收的状态,从控制器正确 擦除存储空间的状态,升级程序的一帧数据的写入是否成功。如果主控制器判断出升 级状态信息符合预设规则,则转发从控制器发送的升级状态信息至上位机,上位机在 接收到升级状态信息之后,发送升级程序的下一帧数据至主控制器。如果主控制器判 断出升级状态信息不符合预设规则,则主控制器重新转发不符合预设规则的升级状态 信息对应的升级程序的一帧数据至从控制器,从控制器对其重新进行响应。

步骤S308,主控制器在判断出升级请求命令不是二级升级程序的升级请求命令, 对自身程序执行升级。

在主控制器判断出升级请求命令不是二级升级程序的升级请求命令,则升级程序 用于对主控制器升级,主控制器对自身程序执行升级。

优选地,升级程序包括多帧数据,主控制器转发升级程序至从控制器包括:主控 制器依次将多帧数据的每一帧数据发送至从控制器,并在每发送一帧数据之后,接收 控制器对该帧数据的升级状态信息,并根据升级状态信息判断该帧数据的写入是否成 功;主控制器判断从控制器的所有升级程序是否写入完毕。

可选地,主控制器对自身程序执行升级包括升级程序由多帧数据组成,主控制器 利用升级程序的多帧数据执行升级。主控制器每接收上位机发送的升级程序的一帧数 据,对升级程序的一帧数据进行响应,得到升级状态信息。具体而言,对升级程序的 一帧数据进行判断,得到判断结果,比如,该升级程序的一帧数据在主控制器的存储 区中存储的位置和占用空间大小等。然后根据判断结果将升级程序的一帧数据写入主 控制器的预设存储空间,得到升级状态信息。主控制器将升级程序的升级状态信息发 送至上位机,上位机在接收主控制器对升级程序的升级状态信息之后,对升级状态信 息进行确定,发送升级程序的下一帧数据至主控制器,主控制器继续对升级程序的下 一帧数据进行响应。在主控制器对升级程序的每一帧数据进行响应的过程中,保证主 控制器接收升级程序的每一帧数据的正确性,擦除存储空间的正确性和写入预设存储 空间的正确性,直至主控制器将升级程序的多帧数据全部写入主控制器的预设存储空 间,则主控制器完成升级,从而达到了对主控制器执行升级的效果。

优选地,一个主控制器对应多个从控制器,主控制器在判断出升级请求命令是二 级升级程序的升级请求命令时,判断升级请求命令请求升级的从控制器,主控制器将 升级程序发送至升级请求命令请求升级的从控制器,使需要升级的从控制器进行升级。

该实施例通过主控制器接收升级请求命令,主控制器然后判断升级请求命令是否 是二级升级程序的升级请求命令,其中,二级升级程序的升级请求命令为用于请求对 从控制器升级的命令,当主控制器判断出升级请求命令是二级升级程序的升级请求命 令时,将从控制器的升级程序转发至从控制器以便从控制器执行升级,当主控制器在 判断出升级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级,从而 达到了对从控制器执行升级的效果。

图4是根据本发明第二实施例的控制器升级方法的流程图。如图4所示,该控制 器升级方法包括以下步骤:

步骤S402,主控制器判断是否为升级请求命令。

主控制器内置主控制器升级函数。具体而言,该主控制器升级函数可以检测主控 制器是否接收到升级程序的升级请求命令。如果主控制器接收的不是升级程序的请求 命令,则执行步骤S414,主控制器的主程序处理流程,也即,主控制器不执行升级, 主控制器所属系统的主程序正常处理系统的任务。如果主控制器接收的为升级程序的 升级请求命令,则执行步骤S404,主控制器判断升级请求命令是否为二级升级程序的 升级请求命令。

步骤S404,主控制器判断是否为二级升级程序的升级请求命令。

升级请求命令可以是请求主控制器升级的命令,也可以是请求从控制器升级的命 令,也即,二级升级程序的升级请求命令。在主控制器接收的为升级程序的升级请求 命令时,主控制器升级函数可以判断升级请求命令是否为二级升级程序的升级请求命 令。如果主控制器判断出升级请求命令是二级升级程序的升级请求命令时,执行步骤 S406,否则,执行步骤S410。

步骤S406,主控制器控制从控制器执行升级。

如果主控制器升级函数判断出升级请求命令为二级升级程序的升级请求命令时, 从控制器利用从控制器的升级程序,也即二级升级程序进行升级。具体而言,主控制 器转发来自从控制器的升级指令确认帧至上位机,其中,升级指令确认帧为从控制器 在接收二级升级程序的升级请求命令之后回复的帧数据,上位机在接收升级指令确认 帧之后发送升级程序至主控制器。升级程序包括多帧数据,主控制器转发升级程序至 从控制器包括:主控制器依次将多帧数据的每一帧数据发送至从控制器,并在每发送 一帧数据之后,接收控制器对该帧数据的升级状态信息,并根据升级状态信息判断该 帧数据的写入是否成功;主控制器判断从控制器的所有升级程序是否写入完毕。可选 地,主控制器转发升级程序的一帧数据至从控制器,在主控制器转发升级程序的一帧 数据至从控制器之后,转发从控制器发送的升级状态信息至上位机,其中,升级状态 信息为从控制器对升级程序的一帧数据进行响应的结果,从控制器根据升级状态信息 执行升级,上位机在接收升级状态信息之后发送升级程序的下一帧数据至主控制器, 主控制器转发升级程序的下一帧数据至从控制器,从控制器对升级程序的下一帧数据 进行响应,进而实现从控制器的升级。

步骤S408,判断从控制器是否完成升级。

主控制器将从控制器的升级程序,也即,升级程序的多帧数据转发至从控制器, 使从控制器升级程序的多帧数据进行响应,直至从控制器升级完毕。判断从控制器是 否完成升级,如果从控制器完成升级,则等待接收新的升级命令请求。如果从控制器 没有完成升级,则执行步骤S406,继续对从控制器升级,进而达到了对从控制器执行 升级的效果。

步骤S410,主控制器执行升级。

如果判断出升级请求命令不是二级升级程序的升级请求命令时,主控制器对自身 程序执行升级,具体而言,升级程序由多帧数据组成,主控制器利用升级程序的多帧 数据执行升级。主控制器每接收上位机发送的升级程序的一帧数据,对升级程序的一 帧数据进行响应,得到升级状态信息。主控制器将升级程序的升级状态信息发送至上 位机,上位机在接收主控制器对升级程序的升级状态信息之后,对升级状态信息进行 确定,发送升级程序的下一帧数据至主控制器,主控制器继续对升级程序的下一帧数 据进行响应。

步骤S412,判断主控制器是否完成升级。

在主控制器对升级程序的每一帧数据进行响应的过程中,保证主控制器接收升级 程序的每一帧数据的正确性,擦除存储空间的正确性和写入预设存储空间的正确性, 直至主控制器将升级程序的多帧数据全部写入主控制器的预设存储空间,则主控制器 完成升级。如果主控制器完成升级,则等待接收新的升级命令请求。如果主控制器没 有完成升级,则执行步骤S410,继续对主控制器升级,从而达到了对主控制器执行升 级的效果。

步骤S414,主控制器的主程序处理流程。

如果主控制器接收的不是升级程序的请求命令,比如,主控制器接收到中断请求, 对系统的其他处理任务等,主控制器不执行升级,主控制器所属系统的主程序正常处 理系统的任务。

该实施例通过判断主控制器是否接收到升级请求命令,如果判断出主控制器接收 到升级请求命令,则判断该升级请求命令是否为二级升级程序的升级请求命令,如果 判断出该升级请求命令为二级升级程序的升级请求命令,则对从控制器进行升级,直 至从控制器完成升级,如果判断出该升级请求命令不为二级升级程序的升级请求命令, 则对主控制器进行升级,直至主控制器完成升级,如果判断出主控制器接收到的不为 升级请求命令,则对系统的出程序处理,从而实现了对控制器执行升级的效果。

图5是根据本发明第三实施例的控制器升级方法的流程图。如图5所示,该控制 器升级方法包括以下步骤:

步骤S502,从控制器接收来自主控制器的二级升级程序的升级请求命令。

二级升级程序的升级请求命令可以由上位机通过总线方式发送至主控制器,主控 制器将二级升级程序的升级请求命令转发至从控制器,从控制器和主控制器通过通讯 线进行连接,在一定的通讯协议下从控制器接收二级升级程序的升级请求命令。其中, 二级升级程序的升级请求命令为用于请求对从控制器升级的命令,主控制器用于接收 升级请求命令,判断升级请求命令是否是二级升级程序的升级请求命令,并在判断出 升级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级,在判断出升 级请求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制 器。

步骤S504,从控制器通过升级程序执行升级。

在从控制器接收来自主控制器的二级升级程序的升级请求命令之后,从控制器根 据二级升级程序的升级请求命令生成升级指令确认帧;从控制器将升级指令确认帧发 送至主控制器,其中,主控制器用于转发升级指令确认帧至上位机,接收上位机下发 的升级程序。具体而言,从控制器在接收主控制器发送的二级升级程序的升级请求命 令之后,从控制器确定是否可以执行升级。如果从控制器确定可以执行升级,则对二 级升级程序的升级请求命令进行确定,得到升级指令确认帧,否则,不进行处理。从 控制器将升级指令确认帧发送至主控制器,进入升级准备。主控制器转发升级指令确 认帧至上位机,上位机明确从控制器以执行升级,发送从控制器的升级程序至主控制 器,主控制器将从控制器的升级程序发送至从控制器,从控制器通过升级程序执行升 级。

优选地,升级程序包括多帧数据,从控制器通过升级程序执行升级包括:从控制 器每接收主控制器发送的一帧数据,生成对该帧数据的升级状态信息,其中,升级状 态信息用于表示对该帧数据的写入是否成功;以及从控制器将升级状态信息发送至主 控制器。可选地,升级程序包括多帧数据,从控制器接收来自主控制器的从控制器的 升级程序的一帧数据。从控制器对升级程序的一帧数据进行响应,首先根据预设规则 对升级程序进行判断,得到判断结果,然后根据判断结果将升级程序的一帧数据写入 从控制器的预设存储空间,得到升级状态信息,再将升级状态信息发送至主控制器。 其中,主控制器转发升级状态信息至上位机,上位机在接收升级状态信息之后,对升 级状态信息进行确定,发送二级升级程序的下一帧数据至主控制器。从控制器接收来 自主控制器的升级程序的下一帧数据,继续对升级程序的下一帧数据进行响应。在从 控制器对升级程序的每一帧数据进行响应的过程中,保证从控制器接收升级程序的每 一帧数据的正确性,擦除存储空间的正确性和写入预设存储空间的正确性,直至从控 制器将升级程序的多帧数据全部写入从控制器的预设存储空间,则从控制器完成升级。

该实施例通过从控制器接收来自主控制器的二级升级程序的升级请求命令,其中, 二级升级程序的升级请求命令为用于请求对从控制器升级的命令,主控制器用于接收 升级请求命令,判断升级请求命令是否是二级升级程序的升级请求命令,并在判断出 升级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级,在判断出升 级请求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制 器,从控制器然后通过升级程序执行升级,从而达到了对从控制器执行升级的效果。

图6是根据本发明第四实施例的控制器升级方法的流程图。如图6所示,该控制 器升级方法包括以下步骤:

步骤S602,从控制器判断升级请求命令是否为二级升级程序的升级请求命令。

从控制器在接收到由主控制器转发的升级请求命令之后,可选地,从控制器再次 判断升级请求命令是否为二级升级程序的升级请求命令,从而对升级请求命令进行确 定,生成升级指令确认帧,可选地,该升级指令确认帧为确定升级请求命令为用于请 求对从控制器利用从控制器的升级程序执行升级的升级请求命令。

步骤S604,二级升级函数处理。

在从控制器判断出升级请求命令为二级升级程序的升级请求命令之后,从控制器 将升级指令确认帧发送至主控制器,然后进入升级状态准备,进入二级升级函数处理, 利用二级升级程序执行升级。可选地,该二级升级函数用于对系统进行复位、调整波 特率、进入升级函数等待状态等,可以实现对从控制器的升级程序的一帧数据进行响 应,根据预设规则对从控制器的升级程序进行判断,得到判断结果,然后根据判断结 果将从控制器的升级程序的一帧数据写入从控制器的预设存储空间,得到升级状态信 息,将升级状态信息发送至主控制器。从控制器接收来自主控制器的从控制器的升级 程序的下一帧数据,继续对从控制器的升级程序的下一帧数据进行响应,直至对二级 升级程序的多帧数据全部响应完,完成从控制器的升级。在从控制器对从控制器的升 级程序的每一帧数据进行响应的过程中,二级升级函数保证从控制器接收从控制器的 程序的每一帧数据的正确性,擦除存储空间的正确性和写入预设存储空间的正确性。

步骤S606,判断从控制器是否完成升级。

在进入二级升级函数处理之后,将从控制器将从控制器的升级程序的多帧数据写 入从控制器的预设存储空间,并且判断从控制器是否完成升级,如果判断出从控制器 完成升级,则进入从控制器的主程序处理流程,否则,执行步骤S604,继续进入二级 升级函数处理程序,对从控制器进行升级,直至从控制器执行升级完毕,从而达到了 从控制器的升级效果。

步骤S608,从控制器的主程序处理流程。

如果判断出升级请求命令不是二级升级程序的升级请求命令,则从控制器进入从 控制器的主程序处理流程,不执行升级。

该实施例通过从控制器判断升级请求命令是否为二级升级程序的升级请求命令, 如果从控制器判断出升级请求命令为二级升级程序的升级请求命令,则从控制器进入 二级升级函数处理流程,从控制器利用二级升级程序执行升级,判断从控制器是否完 成升级,如果判断出从控制器没有完成升级,则继续进入二级升级函数处理流程,如 果判断出从控制器完成升级,则从控制器等待接受新的升级命令请求,如果从控制器 判断出升级请求命令不为二级升级程序的升级请求命令,则从控制器进入从控制器的 主程序处理流程,从而达到了从而达到了从控制器的升级效果。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的 计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可 以以不同于此处的顺序执行所示出或描述的步骤。

本发明还提供了一种主控制器。需要说明的是,该主控制器可用于执行本发明实 施例的控制器升级方法。

图7是根据本发明实施例的主控制器的示意图。如图7所示,该主控制器包括: 接收单元40,判断单元50,转发单元60和升级单元70。

接收单元40,用于接收升级请求命令。

判断单元50,用于判断升级请求命令是否是二级升级程序的升级请求命令,其中, 二级升级程序的升级请求命令为用于请求对从控制器升级的命令。

转发单元60,用于在判断出升级请求命令是二级升级程序的升级请求命令时,将 从控制器的升级程序转发至从控制器以便从控制器执行升级。

升级单元70,用于在判断出升级请求命令不是二级升级程序的升级请求命令,对 自身程序执行升级。

该实施例的主控制器通过接收单元40接收上位机发送的升级请求命令,通过判断 单元50判断升级请求命令是否是二级升级程序的升级请求命令。如果判断单元50判 断出升级请求命令是二级升级程序的升级请求命令,则主控制器不执行升级,转发单 元60将二级升级程序的升级请求命令转发至从控制器,请求从控制器升级,从控制器 利用升级请求命令对应的升级程序执行升级。转发单元60还转发来自从控制器的升级 指令确认帧至上位机,其中,从控制器用于在接收到二级升级程序的升级请求命令之 后回复升级指令确认帧。上位机在接收升级指令确认帧之后发送升级程序至主控制器。 转发单元60再转发升级程序至从控制器,优选地,升级程序包括多帧数据,转发单元 60对升级程序的多帧数据进行多次转发,直至从控制器利用升级请求命令对应的升级 程序升级完毕。如果判断单元50判断出上位机发送的升级请求命令不是请求从控制器 升级的二级升级程序的升级请求命令,通过升级单元70对自身程序执行升级,达到了 对从控制器执行升级的效果。

本发明还提供了一种从控制器。需要说明的是,该从控制器可用于执行本发明实 施例的控制器升级方法。

图8是根据本发明实施例的从控制器的示意图。如图8所示,该从控制器包括: 接收单元80,升级单元90。

接收单元80,用于接收来自主控制器的二级升级程序的升级请求命令,其中,二 级升级程序的升级请求命令为用于请求对从控制器升级的命令,主控制器用于接收升 级请求命令,判断升级请求命令是否是二级升级程序的升级请求命令,并在判断出升 级请求命令不是二级升级程序的升级请求命令,对自身程序执行升级,在判断出升级 请求命令是二级升级程序的升级请求命令时,将从控制器的升级程序转发至从控制器。

升级单元90,用于通过升级程序执行升级。

该实施例的从控制器通过接收单元80在接收主控制器发送的二级升级程序的升 级请求命令之后,对当前工作状况进行综合分析和判断来确定是否可以执行升级,确 定可以执行升级,则对二级升级程序的升级请求命令进行确定,得到升级指令确认帧, 然后升级指令确认帧发送至主控制器,进入升级准备。主控制器转发升级指令确认帧 至上位机,上位机明确从控制器可以执行升级,发送从控制器的升级程序至主控制器, 主控制器将从控制器的升级程序转发至从控制器,从控制器通过接收单元80接收来自 主控制器的从控制器的升级程序,通过升级单元90利用从控制器的升级程序执行升 级,达到了对从控制器执行升级的效果。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所 组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以 将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模 块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明 不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的 任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号