固件生成方法和固件升级方法技术

技术编号:35309579 阅读:24 留言:0更新日期:2022-10-22 13:00
本申请提供一种固件生成方法和固件升级方法,应用于家用电器的固件升级场景。该固件生成方法包括:获取待生成的固件的参数数据和控制逻辑代码,其中,所述参数数据和所述控制逻辑代码独立设置;根据所述参数数据得到参数数据代码;将所述参数数据代码与所述控制逻辑代码分离存储,以形成所述固件,其中,所述固件中的参数数据代码能够单独更新。本申请提供的方法可以提升固件升级速度和效率,提升家用电器使用效果。器使用效果。器使用效果。

【技术实现步骤摘要】
固件生成方法和固件升级方法


[0001]本申请涉及数据处理技术,尤其涉及一种固件生成方法和固件升级方法。

技术介绍

[0002]固件升级的意思是对底层的软件进行修改、替换,从而使得硬件增加新功能或者可以更好的工作。固件存储于设备中的电可擦除只读存储器EEPROM或FLASH芯片中,一般可由用户通过特定的刷新程序进行升级。
[0003]随着家用电器(例如空调、泳池热泵机)的智能化与功能多样化,固件数据的体积越来越大,需要远程升级的场景越来越多。一般的固件升级,往往是修改某个参数,改动量相较于整个固件占比非常小。这种固件升级方式虽然改动量很小,也需要整个固件的下发和传输。
[0004]主控芯片和通信电路的限制使得固件升级时的数据传输速率低且升级时间过长,这就会影响家用电器的使用体验。如何提升固件升级速度和效率,提升家用电器使用效果,仍然是需要解决的。

技术实现思路

[0005]本申请提供一种固件生成方法和固件升级方法,用以提升固件升级速度和效率,提升家用电器使用效果。
[0006]一方面,本申请提供一种固件生成方法,包括:
[0007]获取待生成的固件的参数数据和控制逻辑代码,其中,所述参数数据和所述控制逻辑代码独立设置;
[0008]根据所述参数数据得到参数数据代码;
[0009]将所述参数数据代码与所述控制逻辑代码分离存储,以形成所述固件,其中,所述固件中的参数数据代码能够单独更新。
[0010]其中一个实施例中,所述根据所述参数数据得到参数数据代码,包括:
[0011]获取所述参数数据的数据结构体,所述数据结构体为代码化的结构体;
[0012]根据所述参数数据的数据结构体,将所述参数数据转换为所述参数数据代码。
[0013]其中一个实施例中,所述参数数据被存储至数据列表中,所述数据结构体为代码化的填充结构体;
[0014]所述根据所述参数数据的数据结构体,将所述参数数据转换为所述参数数据代码,包括:
[0015]将所述数据列表中的参数数据填充到所述数据结构体中,得到所述参数数据代码。
[0016]其中一个实施例中,所述数据列表中的每行或每列参数数据对应所述数据结构体中的每行代码;所述将所述数据列表中的参数数据填充到所述数据结构体中,得到所述参数数据代码,包括:
[0017]将所述每行或每列参数数据,填充到所述数据结构体中对应的代码行中;
[0018]其中,每行或每列参数数据的数量,与所述代码行中的填充项的数量相同。
[0019]其中一个实施例中,所述将所述参数数据代码与所述控制逻辑代码分离存储,包括:
[0020]对所述参数数据代码进行编译,将编译后的参数数据代码存储至参数数据区;
[0021]对所述控制逻辑代码进行编译,将编译后的控制逻辑代码存储至控制逻辑区,所述参数数据区与所述控制逻辑区独立设置。
[0022]其中一个实施例中,所述方法还包括:
[0023]在接收到固件升级设备发送的固件升级请求后,判断控制逻辑代码是否更新;
[0024]若所述控制逻辑代码未更新,则将参数数据固件包发送至所述固件升级设备,所述参数数据固件包中包括更新的参数数据代码。
[0025]另一方面,本申请还提供一种固件升级方法,包括:
[0026]在确定对固件进行升级后,从外部设备获取参数数据固件包,其中,所述参数数据固件包中包括更新的参数数据代码;
[0027]将所述更新的参数数据代码存储至参数数据区;
[0028]根据所述参数数据区中存储的更新的参数数据代码和控制逻辑区中存储的旧的控制逻辑代码,运行所述固件,其中,所述控制逻辑区和所述参数数据区相互独立。
[0029]其中一个实施例中,所述从外部设备获取参数数据固件包之前,所述方法还包括:
[0030]从外部设备获取并安装所述固件,其中,所述固件是所述外部设备通过如第一方面所述的方法生成的固件。
[0031]另一方面,本申请提供一种固件生成装置,包括:
[0032]获取模块,用于获取待生成的固件的参数数据和控制逻辑代码,其中,所述参数数据和所述控制逻辑代码独立设置;
[0033]处理模块,用于根据所述参数数据得到参数数据代码;
[0034]存储模块,用于将所述参数数据代码与所述控制逻辑代码分离存储,以形成所述固件,其中,所述固件中的参数数据代码能够单独更新。
[0035]另一方面,本申请提供一种固件升级装置,包括:
[0036]获取模块,用于在确定对固件进行升级后,从外部设备获取参数数据固件包,其中,所述参数数据固件包中包括更新的参数数据代码;
[0037]存储模块,用于将所述更新的参数数据代码存储至参数数据区;
[0038]处理模块,用于根据所述参数数据区中存储的更新的参数数据代码和控制逻辑区中存储的旧的控制逻辑代码,运行所述固件,其中,所述控制逻辑区和所述参数数据区相互独立。
[0039]另一方面,本申请提供一种泳池热泵机,包括:处理器,以及与所述处理器通信连接的存储器;
[0040]所述存储器存储计算机执行指令;
[0041]所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面所述的固件生成方法,或,如第二方面所述的固件升级方法。
[0042]另一方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存
储有计算机执行指令,当所述指令被执行时,使得计算机执行如第一方面所述的固件生成方法,或,如第二方面所述的固件升级方法。
[0043]另一方面,本申请提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的固件生成方法,或,如第二方面所述的固件升级方法。
[0044]本申请的实施例提供一种固件生成方法,包括获取待生成的固件的参数数据和控制逻辑代码,其中最重要的是,所述参数数据和所述控制逻辑代码是独立设置的。再根据所述参数数据得到参数数据代码,将所述参数数据代码和所述控制逻辑代码分离存储。如此在接收到固件升级请求时,如果只有参数数据代码是更新了的,则可以单独下发更新了的参数数据代码,使得请求进行固件升级的固件升级设备只基于更新的参数数据代码和旧的控制逻辑代码就可以完成固件升级。固件升级设备只基于更新的参数数据代码和自身存储的旧的控制逻辑代码进行固件升级,减少了升级所占用的硬件性能,使得固件升级时的数据传输速率更高,缩短了升级时间,提升了家用电器(例如空调、泳池热泵机)的使用体验。
附图说明
[0045]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0046]图1为本申请提供的固件生成方法的一种应用场景示意图;
[0047]图2为本申请的一个实施例提供的固件生成方法的流程示意图;
[0048]图3为本申请的一个实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种固件生成方法,其特征在于,包括:获取待生成的固件的参数数据和控制逻辑代码,其中,所述参数数据和所述控制逻辑代码独立设置;根据所述参数数据得到参数数据代码;将所述参数数据代码与所述控制逻辑代码分离存储,以形成所述固件,其中,所述固件中的参数数据代码能够单独更新。2.根据权利要求1所述的方法,其特征在于,所述根据所述参数数据得到参数数据代码,包括:获取所述参数数据的数据结构体,所述数据结构体为代码化的结构体;根据所述参数数据的数据结构体,将所述参数数据转换为所述参数数据代码。3.根据权利要求2所述的方法,其特征在于,所述参数数据被存储至数据列表中,所述数据结构体为代码化的填充结构体;所述根据所述参数数据的数据结构体,将所述参数数据转换为所述参数数据代码,包括:将所述数据列表中的参数数据填充到所述数据结构体中,得到所述参数数据代码。4.根据权利要求3所述的方法,其特征在于,所述数据列表中的每行或每列参数数据对应所述数据结构体中的每行代码;所述将所述数据列表中的参数数据填充到所述数据结构体中,得到所述参数数据代码,包括:将所述每行或每列参数数据,填充到所述数据结构体中对应的代码行中;其中,每行或每列参数数据的数量,与所述代码行中的填充项的数量相同。5.根据权利要求1所述的方法,其特征在于,所述将所述参数数据代码与所述控制逻辑代码分离存储,包括:对所述参数数据代码进行编译,将编译后的参数数据代码存储至参数数据区;对所述控制逻辑代码进行编译,将编译后的控制逻辑代码存储至控制逻辑区,所述参数数据区与所述控制逻辑区独立设置。6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:在接收到固件升级设备发送的固件升级请求后,判断控...

【专利技术属性】
技术研发人员:王永
申请(专利权)人:广东美的暖通设备有限公司
类型:发明
国别省市:

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

1