[发明专利]一种减少电力设备固件升级量的方法有效
申请号: | 201610022885.4 | 申请日: | 2016-01-14 |
公开(公告)号: | CN105487909B | 公开(公告)日: | 2018-12-28 |
发明(设计)人: | 陈昊琦;尹建丰;季海涛 | 申请(专利权)人: | 江苏林洋能源股份有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/658;H04L29/08 |
代理公司: | 南京天华专利代理有限责任公司 32218 | 代理人: | 王尧;夏平 |
地址: | 226200 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 减少 电力设备 升级 方法 | ||
一种减少电力设备固件升级量的方法,它包括:S1、电力设备固件的数据组织步骤;S2、电力设备固件的区域内函数组织步骤;S3、电力设备固件的全局变量、数组、函数参数的组织步骤;S4、电力设备固件的远程升级步骤。本发明提出的一种减少电力设备固件升级量的方法,可以实现产品投运后,根据功能需求变化只对更改了功能的区域进行升级,从而避免替换全部程序,减少了固件升级量,减少了升级过程对网络资源的消耗,提高了固件升级的效率,另外降低了产品投运后的维护成本,增强了产品的市场竞争力。
技术领域
本发明涉及电力设备固件升级领域,尤其涉及一种减少电力设备固件升级量的方法。
背景技术
目前,随着智能电网建设的不断推进,电力设备中MCU的应用越来越广泛,在很多情况下,如现场使用的设备需要增加新功能、现场运行后发现BUG等等,都要求更新MCU的固件程序;同时由于电力设备往往工作在无人值守的环境下,且数量众多,一旦需要对数以万计的终端进行现场更新,就会耗费大量现场服务的人力、物力和时间。
当前各厂家基于远程通信网络使用IAP在线编程技术实现设备远程固件升级。该方案虽然解决了现场升级的繁重工作量,但存在着弊端,新旧固件即使只有略微的差别,仍需要下载完整的新固件进行替换升级。这种每次升级都需要替换整个固件的方式增加了升级过程时间,消耗了大量网络通信资源,增加了升级失败率。
发明内容
本发明的目的在于提供一种减少电力设备固件升级量的方法,旨在解决现有技术对电力设备固件升级时出现的效率低、浪费网络资源等问题。
本发明的技术方案是:
一种减少电力设备固件升级量的方法,它包括:
S1、电力设备固件的数据组织步骤;
S2、电力设备固件的区域内函数组织步骤;
S3、电力设备固件的全局变量、数组、函数参数的组织步骤;
S4、电力设备固件的远程升级步骤。
本发明的步骤S1具体包括以下步骤:
S1-1、以功能模块或者对象为单位将电力设备的固件存储空间划分成若干个独立分散的区域,各区域中对应存放相应的功能模块或者对象,并设置区域的固定位置、大小以及BIN文件名称,所述的区域中至少有一个区域存放Bootloader功能,前述Bootloader功能用于实现初始化设备、固件升级功能;
S1-2、在电力设备的固件存储空间中通过分散加载机制为链接器指定各区域BIN文件名称和区域位置的放置信息;
S1-3、区域划分以后通过编译程序生成对应的BIN文件;在升级单独的某个区域时,提取该区域对应的BIN文件,并通过预先固化的Bootloader功能模块将前述文件的升级数据固化到电力设备的对应固件存储空间。
本发明的步骤S1-1中,划分区域时预留一定的空间以备增加功能,若已划分的区域不够用时,能够再划出一块还未使用的区域,不影响其他区域。
本发明的步骤S2具体包括以下步骤:
S2-1、在电力设备固件中使用函数壳和伪指令控制区域的连带关系,为区域之间存在相互调用关系的函数建立相应的函数壳,区域之间调用函数时都需要先通过函数壳,再执行真正的功能;
S2-2、使用伪指令固定函数壳在区域内的位置,编译生成后函数地址不改变,修改函数壳对应的函数只改变本区域,不影响到调用它的其他区域。
本发明的步骤S2-1中,函数壳作为函数之间调用的中间人,函数壳采用下述表达式:
function NAME() { __NAME() }
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏林洋能源股份有限公司,未经江苏林洋能源股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610022885.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:防震动、晃动溢水水杯
- 下一篇:一种滤网水杯