System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 软件升级方法、电子设备及存储介质技术_技高网

软件升级方法、电子设备及存储介质技术

技术编号:40083508 阅读:6 留言:0更新日期:2024-01-23 15:05
本发明专利技术实施例公开了一种软件升级方法、电子设备及存储介质,其中方法包括:将Flash划分为二次引导程序区、二次升级驱动区和用户程序区;在二次引导程序区写入预先编写的二次引导程序,在二次升级驱动区写入预先编写的二次升级驱动程序;设备上电后,运行ROM内的初始引导程序,对二次引导程序进行完整性校验,校验通过后启动二次引导程序;二次引导程序对二次升级驱动程序进行完整性校验,校验通过后启动二次升级驱动程序;二次升级驱动程序判断是否进入二次升级模式,若是,则基于自定义的升级方式从上位机获取用户程序升级包,并将用户程序升级包写入到所述用户程序区。采用本发明专利技术的方法,提高了嵌入式软件升级的灵活性和安全性。

【技术实现步骤摘要】

本专利技术涉及软件升级,特别是涉及一种软件升级方法、电子设备及存储介质


技术介绍

1、芯片封装出厂后,升级驱动程序已经固化。原始的升级驱动程序普遍仅支持uart(universal asynchronous receiver-transmitter,通用异步收发器)接口升级,且不支持加密。当同一芯片使用到不同的产品时,可能会面临不同的升级需求。为满足自身需求,可对固件进行更新,但是更新固件需要使用原厂配套升级工具,容易造成不便;而且更新时采用单备份升级,升级失败时存在死机隐患。


技术实现思路

1、本专利技术实施例旨在提供一种软件升级方法、电子设备及存储介质,以解决现有技术中嵌入式软件升级存在升级驱动程序固化、无法满足不同升级需求的问题。

2、为解决上述技术问题,本专利技术实施例提供以下技术方案:

3、根据本专利技术的一方面,提供一种软件升级方法,所述方法包括:

4、将flash划分为二次引导程序区、二次升级驱动区和用户程序区;

5、在所述二次引导程序区写入预先编写的二次引导程序,在所述二次升级驱动区写入预先编写的二次升级驱动程序;

6、设备上电后,运行rom内的初始引导程序,所述初始引导程序对所述二次引导程序进行完整性校验,校验通过后启动所述二次引导程序;

7、所述二次引导程序对所述二次升级驱动程序进行完整性校验,校验通过后启动所述二次升级驱动程序;

8、所述二次升级驱动程序判断是否进入二次升级模式,若是,则基于自定义的升级方式从上位机获取用户程序升级包,并将所述用户程序升级包写入到所述用户程序区。

9、可选地,所述方法还包括:

10、若所述初始引导程序对所述二次引导程序校验失败,则启动rom中的初始升级驱动程序,并强制进入初始升级模式。

11、可选地,所述方法还包括:

12、若所述二次引导程序对所述二次升级驱动程序校验失败,则启动rom中的初始升级驱动程序,并强制进入初始升级模式。

13、可选地,所述方法还包括:

14、当预设的按键被按下的时长达到预设的时长时,将预设的升级标志设置为1;

15、所述二次升级驱动程序判断是否进入二次升级模式包括:

16、所述二次升级驱动程序判断所述升级标志是否为1,若是,则判断进入二次升级模式,若否,则判断进入正常工作模式。

17、可选地,所述方法还包括:

18、若所述二次升级驱动程序判断进入正常工作模式,则所述二次升级驱动程序对所述用户程序区的用户程序进行完整性校验,若校验通过,则启动所述用户程序,若校验不通过,则强制进入二次升级模式。

19、可选地,所述用户程序升级包为加密数据,所述将所述用户程序升级包写入到所述用户程序区的步骤包括:

20、对所述用户程序升级包解密后进行完整性校验,校验通过后再对所述解密后的用户程序升级包进行加密,并将再次加密后的所述用户程序升级包写入到所述用户程序区。

21、可选地,所述将所述用户程序升级包写入到所述用户程序区的步骤包括:

22、判断所述用户程序升级包写入的flash地址是否位于所述用户程序区,若是,则将所述用户程序升级包写入到所述地址,若否,则中止写入操作。

23、可选地,所述进入初始升级模式之后包括:

24、初始化原始升级接口,从上位机获取二次开发程序升级包,并将所述二次开发程序升级包写入到flash中,所述二次开发程序升级包包括二次引导程序、二次升级驱动程序和用户程序。

25、根据本专利技术的又一方面,提供一种电子设备,所述电子设备包括存储器、处理器及存储在存储器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项所述的软件升级方法的步骤

26、根据本专利技术的再一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,所述处理器执行上述任一项所述的软件升级方法的步骤。

27、本专利技术实施例的有益效果是:区别于现有技术的情况,本专利技术实施例中,提供了一种软件升级方法,在flash的对应区中写入预先编写的二次引导程序和二次升级驱动程序;设备上电后,先运行rom内的初始引导程序,初始引导程序对二次引导程序进行完整性校验,校验通过后启动二次引导程序,由二次引导程序对二次升级驱动程序进行完整性校验,校验通过后启动二次升级驱动程序;二次升级驱动程序判断是否进入二次升级模式,若是,则基于自定义的升级方式从上位机获取用户程序升级包,并将用户程序升级包写入到用户程序区。采用本专利技术的方法,通过在flash中写入二次引导程序和二次升级驱动程序,提高了嵌入式软件升级的灵活性。此外,本专利技术的二次升级驱动程序和初始升级驱动程序可以相辅相成,提高了嵌入式软件升级的安全性。

本文档来自技高网...

【技术保护点】

1.一种软件升级方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述用户程序升级包为加密数据,所述将所述用户程序升级包写入到所述用户程序区的步骤包括:

7.根据权利要求1至6任一项所述的方法,其特征在于,所述将所述用户程序升级包写入到所述用户程序区的步骤包括:

8.根据权利要求2或3所述的方法,其特征在于,所述进入初始升级模式之后包括:

9.一种电子设备,所述电子设备包括存储器、处理器及存储在存储器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-8任一项所述的软件升级方法的步骤。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,所述处理器执行如权利要求1-8任一项所述的软件升级方法的步骤。

...

【技术特征摘要】

1.一种软件升级方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述用户程序升级包为加密数据,所述将所述用户程序升级包写入到所述用户程序区的步骤包括:

7.根据权利要求1至6任一项所述的方法,...

【专利技术属性】
技术研发人员:许崇铭吴瀚平
申请(专利权)人:深圳市中科蓝讯科技股份有限公司
类型:发明
国别省市:

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

1