公开/公告号CN114816510A
专利类型发明专利
公开/公告日2022-07-29
原文格式PDF
申请/专利权人 中国兵器工业集团第二一四研究所苏州研发中心;
申请/专利号CN202210585537.3
发明设计人 刘肖飞;
申请日2022-05-27
分类号G06F8/71;G06F8/41;
代理机构南京纵横知识产权代理有限公司;
代理人邵斌
地址 215163 江苏省苏州市高新区龙山路89
入库时间 2023-06-19 16:09:34
法律状态公告日
法律状态信息
法律状态
2022-07-29
公开
发明专利申请公布
技术领域
本发明属于嵌入式软件技术领域,具体涉及一种将软件版本号和固件一一对应的方法及电子设备。
背景技术
为了方便维护产品,通常在软件中加入软件版本号,现有技术中,有以下方式:
(1)直接通过宏定义的方式,比如#define VERSIN “V1.00”这种方式只有将固件下载到设备中运行后才能知道软件版本号,不利于生产;
(2)在固定地址写入版本号,比如在地址0X801000 处写入字符串“V1.00”;这种方式可以通过读固件0X801000地址的内容知道版本号,但是这种方式需要提前预留出版本号位置,固定了固件大小,不灵活;
(3)直接在固定地址通过外部写入版本号,这种方式无法做到固件和版本号一一对应。
发明内容
为解决现有技术中的不足,本发明提供一种将软件版本号和固件一一对应的方法及电子设备,能够将软件版本号与固件进行一一对应,不需要固定地址,灵活性高。
为达到上述目的,本发明所采用的技术方案是:
第一方面,提供一种将软件版本号和固件一一对应的方法,包括:采用编程语言将软件版本号写成某个特定格式的字符串,所述特定格式的字符串为常量,编译后以明码的方式放在固件的常量池中。
进一步地,所述编程语言包括但不限于C语言。
进一步地,采用编写的固件解析工具对所述特定格式的字符串进行解析,提取出软件版本号。
进一步地,所述特定格式的字符串与固件一起存储在ROM中。
进一步地,所述特定格式的字符串为“VERSIN:[XXXX]”;其中,XXXX为软件版本号。
第二方面,提供一种电子设备,所述电子设备配置有计算机软件,所述计算机软件的软件版本号采用第一方面所述的将软件版本号和固件一一对应的方法进行配置。
与现有技术相比,本发明所达到的有益效果:
(1)本发明通过采用编程语言将软件版本号写成某个特定格式的字符串,所述特定格式的字符串为常量,编译后以明码的方式放在固件的常量池中,实现了将软件版本号与固件进行一一对应的目的,且不需要固定地址,灵活性高;
(2)本发明固件无需烧写到设备中,即可知道固件的版本号;
(3)可以使用本发明所述方法将编译日期、编译时间、其它自定义的信息固化到固件中。
具体实施方式
下面对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例一:
一种将软件版本号和固件一一对应的方法,包括:采用编程语言将软件版本号写成某个特定格式的字符串,所述特定格式的字符串为常量,编译后以明码的方式放在固件的常量池中。
本发明借用C语言编译原理,采用C语言将软件版本号写成某个特定格式的字符串,如“VERSIN:[XXXX]”;其中,XXXX为软件版本号;该特定格式的字符串为常量,编译后以明码的方式放在固件的常量池中,例如:
在编译的时候采用版本管理使用以下宏定义的方式:
#define VERSIN_NUM "a.f"
#define VERSIN "VERSIN:[V" VERSIN_NUM "]"
编译后,在固件中,字符串表现为 VERSIN:[Va.f]
编译后的该特定格式的字符串与固件一起存储在ROM中。
需要获取软件版本号时,采用编写的固件解析工具对所述特定格式的字符串进行解析,提取出软件版本号。
本发明具有以下优点:(1)本发明中固件与软件版本号一一对应;(2)软件版本号不需要固定地址,编程时无需关注这一点;(3)固件无需烧写到设备中,即可知道固件的版本号;(4)可以用同样的方式将编译日期、编译时间、其它自定义的信息固化到固件中。
实施例二:
基于实施例一所述的一种将软件版本号和固件一一对应的方法,本实施例提供一种电子设备,所述电子设备配置有计算机软件,所述计算机软件的软件版本号采用实施例一所述的将软件版本号和固件一一对应的方法进行配置。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
机译: 1个支持电子操作的安装程序(软件分发系统)和1个支持电子操作的安装方法(软件分发方法)以及供应或分发介质,1个支持电子功能的操作软件管理装置和方法以及供应或分发介质,1个仅电子设备可操作的安装程序管理装置和方法,以及供应或分配介质,1个仅电子设备可操作的安装程序生成器以及一个1个仅电子设备可操作的安装程序生成方法以及供应或分配介质,仅第一个电子设备运行允许软件和一个仅允许电子操作的软件1个仅允许电子操作的方法和供应或分配介质,1个仅允许电子操作的软件生成装置和方法,以及提供或分配介质,1个仅允许电子操作的软件商品制造
机译: 电子设备以及电子设备的软件或固件更新方法
机译: 电子设备以及用于软件或电子设备固件的方法