用于微控制器单元固件升级的设备运行方法和系统技术方案

技术编号:36895230 阅读:27 留言:0更新日期:2023-03-15 22:25
本发明专利技术提供了一种用于微控制器单元固件升级的设备运行方法包括如下的步骤:将设备开机或重新启动;运行引导程序;根据引导程序对于设备的升级标志类型判断的结果,决定执行如下步骤中的任一者或多者,当升级标志为第一升级标志时,等待进入核心升级流程;当升级标志为第二升级标志时,运行应用程序,直至下一次收到升级命令;当升级标志为第三升级标志时,将升级标志设定为第二升级标志,运行应用程序,并在应用程序运行成功后,将应用程序设定为有效应用程序,直至下一次收到升级命令。本发明专利技术的设备运行方法和系统可以有效解决引导程序无法升级、应用程序和引导程序升级不流畅的问题,提升MCU固件升级的可靠性和安全性。提升MCU固件升级的可靠性和安全性。

【技术实现步骤摘要】
用于微控制器单元固件升级的设备运行方法和系统


[0001]本专利技术主要涉及数据信息处理领域,尤其涉及一种用于微控制器单元固件升级的设备运行方法和系统。

技术介绍

[0002]目前,安卓设备已经广泛运用于我们的日常生活当中,如智能手机、收银系统终端、网络系统终端、监控系统终端等等,这些终端的功能也是日渐往高复杂度趋势发展。当产品有多样化的功能需要拓展时(如:打印功能、扫码功能、卡模块功能)可能就需要在安卓设备上额外增加一个微控制器单元即MCU,以丰富安卓设备的功能,增加产品整体的拓展性及可靠性。MCU的功能主要由MCU的固件代码实现,当MCU功能需求发生更迭时MCU固件被诊断出有问题时,工程师就需要更新MCU的固件以满足新的生产需要。
[0003]但是,目前市场上的MCU固件升级方案仍然存在一些问题,例如,所谓的MCU固件升级,通常仅能升级MCU固件中的应用程序部分,而无法对MCU固件中的引导程序(BOOT)进行升级,当BOOT程序中存在问题时就需要将设备返厂拆卸再借助ARM仿真器等治具给MCU进行固件升级。进一步的,即使有一些现有技术本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种用于微控制器单元固件升级的设备运行方法,其特征在于,包括如下的步骤:将设备开机或重新启动;运行引导程序;根据所述引导程序对于设备的升级标志类型判断的结果,决定执行如下步骤中的任一者或多者,其中,所述升级标志包括第一升级标志、第二升级标志和第三升级标志:当所述升级标志为所述第一升级标志时,等待进入核心升级流程;当所述升级标志为所述第二升级标志时,运行应用程序,直至下一次收到所述升级命令;当所述升级标志为所述第三升级标志时,将所述升级标志设定为所述第二升级标志,运行所述应用程序,并在所述应用程序运行成功后,将所述应用程序设定为有效应用程序,直至下一次收到所述升级命令。2.如权利要求1所述的方法,其特征在于,若所述升级标志为所述第二升级标志或所述第三升级标志,所述方法还包括在下一次收到所述升级命令后,将当前进程中的升级标志设定为所述第一升级标志,并将所述设备重新启动。3.如权利要求1所述的方法,其特征在于,所述核心升级流程包括:接收升级命令;判断升级类型,所述升级类型包括应用程序升级和/或引导程序升级。4.如权利要求3所述的方法,其特征在于,所述引导程序包括第一引导程序和第二引导程序,所述第一引导程序的初始可运行状态与所述第二引导程序的初始可运行状态互斥,其中,在执行将设备开机或重新启动的步骤后,运行所述初始可运行状态为打开状态的引导程序。5.如权利要求4所述的方法,其特征在于,还包括在判断所述升级类型后,首先将当前进程中的升级标志设置为所述第一升级标志,并返回第一应答消息至上位机。6.如权利要求5所述的方法,其特征在于,还包括在返回所述第一应答消息至上位机后,接收擦写命令,并在擦除操作完成后返回第二应答消息至所述上位机,其中,所述擦除操作包括:当所述升级类型为应用程序升级时,擦除所述设备中的应用程序分区;当所述升级类型为引导程序升级时,擦除所述设备中的未运行的引导程序分区。7.如权利要求6所述的方法,其特征在于,还包括在擦除操作完成并返回所述第二应答消息至所述上位机后,接收升级数据包,并在对所述升级数据包进行校验后,完成对于所述升级数据包中的数据的写入操作,并返回第三应答消息至所述上位机,其中,所述写入操作包括:当所述升级类型...

【专利技术属性】
技术研发人员:崔建平林喆方梦宇
申请(专利权)人:深圳米开朗基罗科技有限公司
类型:发明
国别省市:

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

1