一种同一固件兼容不同设备的方法及装置制造方法

文档序号:6540916阅读:151来源:国知局
一种同一固件兼容不同设备的方法及装置制造方法
【专利摘要】本发明提供一种同一固件兼容不同设备的方法及装置,其中本发明的装置包括如下模块:硬件识别标识记录模块:用于记录硬件识别标识;硬件识别执行模块:用于读取硬件识别标识并执行与硬件识别标识对应的操作;逆操作生成模块:用于生成所执行的操作的逆操作的记录;以及恢复模块:用于在系统升级功能被激活时执行所述的逆操作。本发明针对不同设备在初始化或者升级时都只需一个软件包,大大减少了不同设备具有多个软件包带来的高维护成本的问题。
【专利说明】一种同一固件兼容不同设备的方法及装置
【技术领域】
[0001]本发明涉及电子设备【技术领域】,尤其涉及一种同一固件兼容不同设备的方法及装置。
【背景技术】
[0002]在电子产品的开发过程中,特别是嵌入式系统电子产品,越来越多地出现硬件差异不大、软件定制不同的情况,即同一类型的产品有多种衍生版本,产生了不同的设备。硬件差异如有LCD、TP不同,键盘不同(多语言键盘),C0DEC、WIFI模块不同等。软件差异有第三方定制的差异、GMS包差异等。在这种情况下,如果每种衍生版本都对应一版本软件,特别是出口不同国家的产品,这样从产品研发、生产到维护上均需要维护不同的固件,这样工作量较大,造成维护成本比较大。
[0003]为了解决上述的不同设备造成软件版本过多的问题,现有的具有以下两个方案。
[0004]现有方案一:同一款硬件设备烧写相同的system固件,专门做一个分区烧写定制化固件,销售往不同的国家。方案一的优点system固件在系统起来后不会发生变化,不影响OTA升级(系统升级),且有个独立分区,软件实现了模块化,便于管理;缺点:N个国家需要N个定制化固件、不支持多款硬件不同的设备。
[0005]现有方案二:不同硬件的设备(如LCD的尺寸不同)烧写相同的system固件,系统运行后根据BID号执行不同的操作,达到不同的效果,销售往不同的国家。BID (Board ID的缩写)号可以由硬件(如GP10,外部EEPR0M)指定,也可以由工具烧写到芯片内部FLASH中。方案二的优点:真正实现了一个固件兼容多个产品,销往不同的国家唯一要做的是烧写不同的BID号;缺点:系统运行后会修改系统分区,因此不支持OTA升级,同时根据BID号修改了较多framework层代码,兼容性不好。

【发明内容】

[0006]本发明要解决的技术问题,在于提供一种同一固件兼容不同设备的方法及装置,解决现有不同设备间固件过多或者是固件无法OTA升级、兼容性不好的问题。
[0007]本发明是这样实现的:
[0008]一种同一固件兼容不同设备的方法,包括如下步骤:
[0009]读取硬件识别标识并执行与硬件识别标识对应的操作,生成所执行的操作的逆操作的记录,在系统升级功能被激活时执行所述的逆操作。
[0010]进一步地,所述读取硬件识别标识为从存储模块中读取或从硬件设备中读取。
[0011]进一步地,所述的与硬件识别标识对应的操作包括复制与硬件识别标识对应的数据到系统区。
[0012]进一步地,所述的与硬件识别标识对应的数据所在的区与所述的系统区为不同分区。
[0013]进一步地,所述的与硬件识别标识对应的操作包括设置与硬件识别标识对应的属性。
[0014]以及本发明在上述一种同一固件兼容不同设备的方法的基础上还提供一种同一固件兼容不同设备的装置,包括如下模块:
[0015]硬件识别标识记录模块:用于记录硬件识别标识;
[0016]硬件识别执行模块:用于读取硬件识别标识并执行与硬件识别标识对应的操作;
[0017]逆操作生成模块:用于生成所执行的操作的逆操作的记录;
[0018]以及恢复模块:用于在系统升级功能被激活时执行所述的逆操作。
[0019]进一步地,所述的硬件识别标识记录模块为存储模块或硬件设备。
[0020]进一步地,还包括系统区和差异化数据区,所述的差异化数据区用于存储所述与硬件识别标识对应的数据,所述的与硬件识别标识对应的操作包括从差异化数据区复制与硬件识别标识对应的数据到系统区。
[0021]进一步地,系统区和差异化数据区为不同分区。
[0022]进一步地,硬件识别执行模块包括属性设置单元,所述的属性设置单元用于设置与硬件识别标识对应的属性。
[0023]本发明具有如下优点:采用本发明后不同设备在研发时使用一套代码一套固件,软件管理比较方便;在生产时烧写相同固件,硬件不相同或出口不同的国家时,只需要烧写不同的硬件识别标识即可,所有的软件定制会在程序起来时自动完成,很大程度上增强了生产时的一致性;后期产品维护时,解决所有产品共性问题,只需一个OTA包即可,能很大程度上能降低维护成本。
【专利附图】

【附图说明】
[0024]图1为本发明的方法的流程图;
[0025]图2为本发明装置的优选实施例的结构示意图。
【具体实施方式】
[0026]为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
[0027]请参阅图1以及图2,本发明提供了一种同一固件兼容不同设备的方法,本方法用于差异不大的设备上,如硬件或软件上有所差异。包括如下步骤:步骤SlOl读取硬件识别标识。通过读取硬件识别标识可以区分不同的硬件。在本实施例中,硬件识别标识存储在存储模块中,如ROM或SD卡,此时的硬件识别标识可以通过烧录工具烧录到存储模块中;在某些实施例中,硬件识别标识可以从硬件设备中读取,如从GPIO、WIFI模块、蓝牙模块、显示屏或触摸屏模块中读取这些硬件设备的ID作为硬件识别标识。硬件识别标识的形式可以是任意的,在便于直观识别的情况下可以采用版本号。
[0028]而后在步骤S102执行与硬件识别标识对应的操作。可以通过存储各个硬件识别标识与之对应的操作的记录集,通过在记录集中检索读取到的硬件识别标识,而后执行对应的操作。此记录集的记录形式可以是任意的,如脚本或表格等。具体应用时,为了在硬件识别标志增加更多更复杂的内容,如区域、语言等,在执行与硬件识别标识对应的操作还要对硬件识别标识进行解析后再执行。在某些实施例中,这些操作包括设置与硬件识别标识对应的属性。如根据不同的硬件识别标识设置系统的语言、系统的时区以及时间等。在某些实施例中,这些操作包括复制与硬件识别标识对应的数据到系统区,如复制开机图片、铃声、驱动或默认软件到系统区(如安卓系统中,系统区为system分区)。
[0029]通过步骤SlOl和步骤S102,不同的设备可以在同一固件下根据不同的硬件识别标识进行系统的初始化,并且初始化成与设备运行所需要的状态,满足不同设备的系统需求。同时为了使得系统可以更新和升级,本发明还包括步骤S103生成所执行的操作的逆操作的记录,并且在步骤S104在系统升级功能被激活时执行所述的逆操作。通过步骤S103和步骤S104,设备再次恢复到原始状态(即在本方法应用之前状态),则可以进行升级或更新。
[0030]在某些实施例中,步骤S102中所有与各个硬件识别标识对应的数据(即不同硬件所需的不同的数据)是存放在某一个文件夹下或者某个存储区中,为了避免与系统区的数据混淆,优选地,与硬件识别标识对应的数据所在的区与所述的系统区为不同分区。同时可以设定上述的与硬件识别标识对应的数据所在的区为隐藏的模式,避免用户的误操作。
[0031]在某些实施例中,逆操作的记录的形式可以是脚本、文本或表格,如TXT文本或者XML 表。
[0032]同时本发明在上述一种同一固件兼容不同设备的方法的基础上还提供一种同一固件兼容不同设备的装置,包括如下模块:
[0033]硬件识别标识记录模块:用于记录硬件识别标识;硬件识别标识记录模块为存储模块(如:R0M或SD卡等)或硬件设备(如:GP10、WIFI模块、蓝牙模块、显示屏或触摸屏等)。
[0034]硬件识别执行模块:用于从硬件识别标识记录模块中读取硬件识别标识并执行与硬件识别标识对应的操作;逆操作生成模块:用于生成所执行的操作的逆操作的记录;以及恢复模块:用于在系统升级功能被激活时执行所述的逆操作。本装置在针对不同设备会进行不同的设备初始化(即执行与引荐设别标识对应的操作),使得设备满足系统正常运行时(即初始化后)的软硬件要求,同时在系统升级时恢复最原始的状态,则设备可完成升级与更新。
[0035]在本优选实施例中,本发明的装置还包括系统区和差异化数据区,所述的差异化数据区用于存储所述与硬件识别标识对应的数据,所述的与硬件识别标识对应的操作包括从差异化数据区复制与硬件识别标识对应的数据到系统区。同时,在本实施例中,系统区和差异化数据区为不同分区。
[0036]进一步地,硬件识别执行模块包括属性设置单元,所述的属性设置单元用于设置与硬件识别标识对应的属性。
[0037]综上,使用本发明的使用者在开发针对不同设备的系统时,可以只采用一套固件或代码,而后不同设备在系统初始化时会根据硬件识别标识自动进行系统初始化,完成对软件的定制,解决了不同设备需要多套固件的问题。同时在后期升级维护时,系统可还原到可升级状态,解决了不可升级的问题。同时维护时只需一个升级包即可,升级包可放置所有的不同设备的更新内容,更新后在系统初始化时同样根据硬件识别标识自动进行对应的升级,大大减少了维护的复杂性,降低了维护的成本。
[0038]以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种同一固件兼容不同设备的方法,其特征在于:包括如下步骤: 读取硬件识别标识并执行与硬件识别标识对应的操作,生成所执行的操作的逆操作的记录,在系统升级功能被激活时执行所述的逆操作。
2.根据权利要求1所述的一种同一固件兼容不同设备的方法,其特征在于:所述读取硬件识别标识为从存储模块中读取或从硬件设备中读取。
3.根据权利要求1所述的一种同一固件兼容不同设备的方法,其特征在于:所述的与硬件识别标识对应的操作包括复制与硬件识别标识对应的数据到系统区。
4.根据权利要求3所述的一种同一固件兼容不同设备的方法,其特征在于:所述的与硬件识别标识对应的数据所在的区与所述的系统区为不同分区。
5.根据权利要求1所述的一种同一固件兼容不同设备的方法,其特征在于:所述的与硬件识别标识对应的操作包括设置与硬件识别标识对应的属性。
6.一种同一固件兼容不同设备的装置,其特征在于:包括如下模块: 硬件识别标识记录模块:用于记录硬件识别标识; 硬件识别执行模块:用于读取硬件识别标识并执行与硬件识别标识对应的操作; 逆操作生成模块:用于生成所执行的操作的逆操作的记录; 以及恢复模块:用于在系统升级功能被激活时执行所述的逆操作。
7.根据权利要求6所述的一种同一固件兼容不同设备的装置,其特征在于:所述的硬件识别标识记录模块为存储模块或硬件设备。
8.根据权利要求6所述的一种同一固件兼容不同设备的装置,其特征在于:还包括系统区和差异化数据区,所述的差异化数据区用于存储所述与硬件识别标识对应的数据,所述的与硬件识别标识对应的操作包括从差异化数据区复制与硬件识别标识对应的数据到系统区。
9.根据权利要求8所述的一种同一固件兼容不同设备的装置,其特征在于:系统区和差异化数据区为不同分区。
10.根据权利要求6所述的一种同一固件兼容不同设备的装置,其特征在于:硬件识别执行模块包括属性设置单元,所述的属性设置单元用于设置与硬件识别标识对应的属性。
【文档编号】G06F9/445GK103823703SQ201410100204
【公开日】2014年5月28日 申请日期:2014年3月18日 优先权日:2014年3月18日
【发明者】罗伟, 毛明康, 张昊, 蔡建清 申请人:福州瑞芯微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1