本发明专利技术涉及嵌入式技术领域,更具体地,涉及一种嵌入式设备及其升级方法。嵌入式设备的软件系统分割为boot区、app区和store区,分别存储升级运行程序、设备的应用程序和设备的升级文件。在app应用程序更新过程中,先进行文件ID匹配,匹配正确后再进行文件下载,下载之后用户可在方便的时候再进行重启升级;boot升级运行程序更新过程为先下载更新文件,在校验文件数据正确后即可进行重启升级。通过使用上述方法,下载文件和升级不需一次性完成,节省了升级时间;且设置了UpgradeValid、RunValid和FileValid若干标志位,分别存储升级标志、运行标志和文件标志,在升级过程中若出现异常掉电等情况,也不会导致设备数据丢失,增加了升级的安全性。
【技术实现步骤摘要】
一种嵌入式设备及其升级方法
本专利技术涉及嵌入式
,更具体地,涉及一种嵌入式设备及其升级方法。
技术介绍
嵌入式系统由系统的运行环境和产品的功能等特点决定了嵌入式系统的非开放式的运行模式,在这种情况中,对嵌入式系统进行升级能延长使用寿命,弥补产品的缺陷或增加新功能,因此,一种可靠的升级方法能以较低的成本提高产品的竞争力。现有嵌入式系统的升级方案通常使用直接擦写的方法,这种升级方式存在较高的危险性,在升级过程中如果出现异常掉电等情况,数据无法恢复,将导致设备无法正常运行,只能对设备全部再次进行刷新升级,这种方式不稳定安全性较低,出现异常掉电情况操作繁琐,升级耗费时间较多。
技术实现思路
本专利技术为克服上述现有技术所述的至少一种缺陷,提供一种安全性较高,出现异常掉电情况数据不会丢失,且不需重新刷新升级的更为可靠的一种嵌入式设备及其升级方法。为解决上述技术问题,本专利技术采用了如下技术方案:一种嵌入式设备,包括硬件设备和软件系统,其中软件系统包括boot区、app区和store区;boot区存储Start和Upgrade两个运行程序,Start进行运行标志的判断,Upgrade进行升级文件的拷贝;app区存储设备的应用程序;store区存储设备的升级文件。进一步地,store区包括FileData、FileInfo和Flag,FileData存储升级文件的有效数据;FileInfo存储升级文件的信息,包括DeviceID、FileLEN和FileCRC,其中DeviceID存储当前设备的ID号,FileLEN存储FileData中的有效数据长度,FileCRC存储FileData中有效数据的CRC校验值;Flag存储Start中选择程序跳转的标志,包括UpgradeValid、RunValid和FileValid,分别存储升级标志、运行标志和文件标志。本专利技术还提供了一种基于本专利技术提出的嵌入式设备的升级方法,包括升级app应用程序和升级boot升级运行程序,其中升级app应用程序包括如下步骤:S1-1:验证升级文件:将升级文件的ID存储到DeviceID中,对设备ID号进行验证,验证成功后将ID编译到升级文件中;S1-2:在步骤S1-1完成后,保存升级文件:将升级文件有效数据传输到FileData中;S1-3:在步骤S1-2完成后,校验升级程序:app应用程序对FileData中数据进行CRC校验,然后将FileValid置为有效并将FileData中数据的有效数据长度和CRC校验值分别保存在FileLEN和FileCRC中;S1-4:在步骤S1-3完成后,更新升级程序:Start程序判断升级数据是否正确,若正确则将RunValid置为无效,Upgrade程序将FileData中的数据写入app区,写入后校验写入数据的正确性,若校验通过则将Start程序中的FileValid置为无效,RunValid置为有效,完成程序升级;升级boot升级运行程序包括如下步骤:S2-1:接收文件:app应用程序将升级文件有效数据传输到FileData中;S2-2:在步骤S2-1完成后,更新升级程序:Start程序判断升级数据是否正确,若正确则将FileData中的数据写入Upgrade,写入后校验写入数据的正确性,若校验通过则将Start程序中的UpgradeValid置为有效,完成程序升级。进一步地,步骤S1-1中,所述的升级文件结构为,DeviceID、FileLEN、FileCRC和FileData依次排列。进一步地,步骤S1-3中,所述的数据FileCRC、FileLEN和DeviceID分别占4个字节的长度。进一步地,步骤S1-4和步骤S2-2中,Start程序判断升级数据是否正确的步骤如下:S1-41/S2-21:判断文件标志FileValid是否有效,有效则进入步骤S1-42;S1-42/S2-22:计算出对应升级文件有效数据的CRC,并与存储于FileCRC的CRC进行CRC校验。作为一种优选方案,若在Upgrade程序运行5s时间之内接收到升级指令,则将升级文件写入store区,之后重复步骤S1-4。具体地,基于上述的app应用程序和boot升级运行程序的升级方法,boot升级运行程序的整体运行流程如下:S0-1:检测升级标志UpgradeValid,若升级标志为真,则进入步骤S0-2,若升级标志为假,则说明boot升级运行程序正在升级,进入步骤S0-4;S0-2:进行app应用程序下载,判断文件标志FileValid,若文件标志为真,则进行步骤S0-3,若文件标志为假,则跳转至app应用程序;S0-3:进行app应用程序升级,升级完成跳转并至app应用程序;S0-4:进行运行标志RunValid判断,若运行标志RunValid为真,则跳转至app应用程序,若运行标志RunValid为假,则说明app应用程序正在升级,跳转回初始状态。与现有技术相比,有益效果是:用户可以先下载升级文件,待设备可以重启的时候,再重启进行升级,可以节省升级时间;在app应用程序和boot升级运行程序升级过程中,若出现意外掉电、异常等情况均不会导致设备死机,重新启动即可再次进行升级。附图说明图1是本专利技术的嵌入式设备升级方法的整体流程;图2是本专利技术的嵌入式设备的软件系统结构图;图3是升级文件的结构图;图4是升级文件的下载流程;图5是app应用程序的更新流程;图6是boot升级运行程序的更新流程。具体实施方式下面结合附图对本专利技术进行进一步说明。本专利技术所公开的一种嵌入式设备包括硬件设备和软件系统,其中软件系统如图2所示,包括boot区、app区和store区;boot区存储Start和Upgrade两个运行程序,Start进行运行标志的判断,Upgrade进行升级文件的拷贝;app区存储设备的应用程序;store区存储设备的升级文件。进一步地,store区包括FileData、FileInfo和Flag,FileData存储升级文件的有效数据;FileInfo存储升级文件的信息,包括DeviceID、FileLEN和FileCRC,其中DeviceID存储当前设备的ID号,FileLEN存储FileData中的有效数据长度,FileCRC存储FileData中有效数据的CRC校验值;Flag存储Start中选择程序跳转的标志,包括UpgradeValid、RunValid和FileValid,分别存储升级标志、运行标志和文件标志。本专利技术还公开了一种基于本专利技术提出的嵌入式设备的升级方法,包括升级app应用程序和升级boot升级运行程序。如图4、图5所示,升级app应用程序包括如下步骤:S1-1:验证升级文件:将升级文件的ID存储到DeviceID中,对设备ID号进行验证成功后将ID编译到升级文件中;S1-2:在步骤S1-1完成后,保存升级文件:将升级文件有效数据传输到FileData中;S1-3:在步骤S1-2完成后,校验升级程序:app应用程序对FileData中数据进行CRC校验,然后将FileValid置为有效并将FileData中数据的有效数据长度和CRC校验值分别保存在FileLEN和FileCRC中;S1-4:在步骤S1本文档来自技高网...
【技术保护点】
1.一种嵌入式设备,包括硬件设备和软件系统,其特征在于:所述软件系统包括boot区、app区和store区;所述boot区存储Start和Upgrade两个升级运行程序,Start进行运行标志的判断,Upgrade进行升级文件的拷贝;所述app区存储设备的应用程序;所述store区存储设备的升级文件。
【技术特征摘要】
1.一种嵌入式设备,包括硬件设备和软件系统,其特征在于:所述软件系统包括boot区、app区和store区;所述boot区存储Start和Upgrade两个升级运行程序,Start进行运行标志的判断,Upgrade进行升级文件的拷贝;所述app区存储设备的应用程序;所述store区存储设备的升级文件。2.根据权利要求1所述的一种嵌入式设备,其特征在于:所述store区包括FileData、FileInfo和Flag,FileData存储升级文件的有效数据;FileInfo存储升级文件的信息,包括DeviceID、FileLEN和FileCRC,其中DeviceID存储当前设备的ID号,FileLEN存储FileData中的有效数据长度,FileCRC存储FileData中有效数据的CRC校验值;Flag存储Start中选择程序跳转的标志,包括UpgradeValid、RunValid和FileValid,分别存储升级标志、运行标志和文件标志。3.一种基于权利要求1所述的一种嵌入式设备的升级方法,其特征在于:包括升级app应用程序和升级boot升级运行程序,升级app应用程序包括如下步骤:S1-1:验证升级文件:将升级文件的ID存储到DeviceID中,对设备ID号进行验证,验证成功后将ID编译到升级文件中;S1-2:在步骤S1-1完成后,保存升级文件:将升级文件有效数据传输到FileData中;S1-3:在步骤S1-2完成后,校验升级程序:app应用程序对FileData中数据进行CRC校验,然后将FileValid置为有效并将FileData中数据的有效数据长度和CRC校验值分别保存在FileLEN和FileCRC中;S1-4:在步骤S1-3完成后,更新升级程序:Start程序判断升级数据是否正确,若正确则将RunValid置为无效,Upgrade程序将FileData中的数据写入app区,写入后校验写入数据的正确性,若校验通过则将Start程序中的FileValid置为无效,RunValid置为有效,完成程序升级;升级boot升级运行程序包括如下步骤:S2-1:接收文...
【专利技术属性】
技术研发人员:马承志,雷一勇,郭素梅,陈伟,唐星宇,乔麟,徐伟斌,谭大作,陈慧,吴敏,彭志远,谷湘煜,李子东,马永超,林艺城,张贤超,
申请(专利权)人:广东电网有限责任公司江门供电局,深圳市朗驰欣创科技股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。