【技术实现步骤摘要】
MCU升级方法及系统、计算机设备、存储介质
[0001]本申请涉及嵌入式通信
,尤其涉及一种MCU升级方法及系统、计算机设备、存储介质。
技术介绍
[0002]目前,对嵌入有微控制单元(Micro Controller Unit,MCU)的产品,通常采用软件升级方法进行MCU版本的切换,以避免出现MCU软件上的技术缺陷。相关技术通常采用如双分区升级的覆盖式MCU升级方法,即将存储MCU软件的FLASH闪存划分为BOOT区、APP运行区、APP升级区。在发起MCU升级时,BOOT区检测到MCU升级复位后,将APP升级区的新版本程序写入APP运行区,并跳转APP运行区运行新代码。虽然该方案能保证MCU升级过程中避免出现掉电等异常状态,但由于在MCU升级过程中,需要进行APP升级区和APP运行区的两次擦除写入过程,从而导致MCU升级效率较低。因此,如何提出一种能够快速实现MCU升级的方法,成为了亟待解决的技术问题。
技术实现思路
[0003]本申请实施例的主要目的在于提出了一种MCU升级方法及系统、计算机设备、存储介质,能够有效提高MCU的升级效率。
[0004]为实现上述目的,本申请实施例的第一方面提出了一种MCU升级方法,所述方法包括:
[0005]获取目标MCU的MCU内存,所述MCU内存包括第一运行区、第二运行区、激活标记区,所述激活标记区用于存储所述目标MCU的版本运行标记,所述版本运行标记用于标识所述目标MCU的初始运行区,其中,所述初始运行区为所述第一运行区或所述第二运行 ...
【技术保护点】
【技术特征摘要】
1.一种MCU升级方法,其特征在于,所述方法包括:获取目标MCU的MCU内存,所述MCU内存包括第一运行区、第二运行区、激活标记区,所述激活标记区用于存储所述目标MCU的版本运行标记,所述版本运行标记用于标识所述目标MCU的初始运行区,其中,所述初始运行区为所述第一运行区或所述第二运行区,且所述第一运行区和所述第二运行区用于存储不同的应用程序;接收发送至所述目标MCU的第一升级指令,并对所述第一升级指令进行指令类型判断,得到第一指令判断结果;若所述第一指令判断结果表示所述第一升级指令为软件下载指令,根据所述版本运行标记确定第一目标运行区,所述第一目标运行区为所述第一运行区或所述第二运行区,且所述第一目标运行区不同于所述初始运行区;根据所述软件下载指令获取版本数据包;根据所述版本数据包对所述第一目标运行区进行升级处理,得到升级处理结果;根据所述升级处理结果更新所述版本运行标记;根据更新后的所述版本运行标记重启所述目标MCU。2.根据权利要求1所述的方法,其特征在于,在所述根据更新后的所述版本运行标记重启所述目标MCU之前,所述方法还包括:接收到发送至所述目标MCU的第二升级指令,对所述第二升级指令进行指令类型判断,得到第二指令判断结果;若所述第二指令判断结果表示所述第二升级指令为软件切换指令,根据所述软件切换指令确定切换运行区,所述切换运行区为所述第一运行区或第二运行区;根据所述切换运行区更新所述版本运行标记。3.根据权利要求1所述的方法,其特征在于,所述根据所述软件下载指令获取版本数据包,包括:根据所述软件下载指令接收发送至所述目标MCU的第一分片载荷数据,所述第一分片载荷数据包括第一分片数据包、所述第一分片数据包的第一校验数据、所述第一分片数据包的第一包序号和载荷数据总包数;根据所述第一校验数据、所述第一包序号和所述载荷数据总包数对所述第一分片载荷数据进行分片数据包校验,得到第一校验结果;若所述第一校验结果表示所述第一校验数据为校验通过且所述第一包序号等于所述载荷数据总包数,根据所述第一分片数据包确定所述版本数据包。4.根据权利要求3所述的方法,其特征在于,在所述根据所述版本数据包对所述第一目标运行区进行升级处理,得到升级处理结果之前,所述方法还包括:若所述第一校验结果表示所述第一校验数据为校验通过且所述第一包序号不等于所述载荷数据总包数,根据所述软件下载指令接收发送至所述目标MCU的第二分片载荷数据,其中,所述第二分片载荷数据包括第二分片数据包、所述第二分片数据包的第二校验数据、所述第二分片数据包的第二包序号和所述载荷数据总包数,且所述第二包序号大于所述第一包序号;根据所述第二校验数据、所述第二包序号和所述载荷数据总包数对所述第二分片载荷数据进行分片数据包校验,得到第二校验结果;
若所述第二校验结果表示所述第二校验数据为校验通过且所述第二包序号等于所述载荷数据总包数,根据所述第一分片...
【专利技术属性】
技术研发人员:何顺,
申请(专利权)人:易科奇通信技术深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。