基于MCU系统的程序执行方法、装置和终端制造方法及图纸

技术编号:18083658 阅读:41 留言:0更新日期:2018-05-31 12:15
本发明专利技术提出一种基于MCU系统的程序执行方法、装置和终端,通过在MCU系统中执行第一存储区域内所存储的第一程序,进而在第一程序执行失败时,在系统的信息存储体中对第一存储区域标记故障信息,在对系统进行重启时,根据信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序,在系统中执行该第二程序。第一程序和第二程序分别为系统最近一次升级前后的程序,通过系统中同时存储最近一次升级前以及最近一次升级后的程序,实现在系统存在故障时,进行系统恢复,以保证系统的运行状态,解决现有技术中系统恢复效率较低的技术问题。

【技术实现步骤摘要】
基于MCU系统的程序执行方法、装置和终端
本专利技术涉及车辆控制
,尤其涉及一种基于MCU系统的程序执行方法、装置和终端。
技术介绍
在微控制单元(MicrocontrollerUnit,MCU)系统中,通常采用程序安全控制策略对MCU系统的程序进行控制,从而保证系统中程序执行的可靠性。若在系统的运行过程中,程序出现问题,程序安全控制策略仅能够通过车辆的控制界面对用户进行提醒,程序安全控制策略无法进一步对故障进行排除。在此情况下,用户仅能够暂停或者关闭系统,依靠线下专用的检测调试设备进行检测,以对故障模块的程序进行修复,从而来实现对整个MCU系统的程序更新和修复,恢复系统的正常运行。但是,这种依赖于线下对程序进行更新和修复的方式,会影响用户对系统的使用,也就是说,现有的程序安全控制策略由于无法对故障进行排除导致了系统恢复效率较低。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的第一个目的在于提出一种基于MCU系统的程序执行方法,该方法可通过在系统中同时存储最近一次升级前以及最近一次升级后的程序,实现在系统存在故障时,进行系统恢复,以保证系统的运行状态,从而为系统运行过程中的程序更新和修复,以对系统进行故障排除打下了基础,解决现有技术中系统恢复效率较低的技术问题。为达上述目的,本专利技术第一方面实施例提出了一种基于MCU系统的程序执行方法,包括以下步骤:在所述MCU系统中执行第一存储区域内所存储的第一程序;其中,所述第一程序为所述系统最近一次升级后的程序;在所述第一程序执行失败时,在所述系统的信息存储体中对所述第一存储区域标记故障信息;在对所述系统进行重启时,根据所述信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序;其中,所述第二程序为所述系统最近一次升级前的程序;在所述系统中执行所述第二程序。本专利技术实施例的基于MCU系统的程序执行方法,通过在所述MCU系统中执行第一存储区域内所存储的第一程序,进而在第一程序执行失败时,在系统的信息存储体中对第一存储区域标记故障信息,在对系统进行重启时,根据信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序,在系统中执行该第二程序。由于第一程序为系统最近一次升级后的程序,第二程序为系统最近一次升级前的程序,可见,通过系统中同时存储最近一次升级前以及最近一次升级后的程序,实现在系统存在故障时,进行系统恢复,以保证系统的运行状态,从而为系统运行过程中的程序更新和修复,以对系统进行故障排除打下了基础,解决现有技术中系统恢复效率较低的技术问题。另外,本专利技术实施例的基于MCU系统的程序执行方法,还具有如下附加的技术特征:在本专利技术的一个实施例中,所述在系统中执行所述第二程序过程中,还包括:从车辆服务器下载最新版本的第三程序;将所述第三程序存储至第三存储区域;将所述第三存储区域内所存储的第三程序,与所述第一存储区域内所存储的第一程序进行对比校验;若对比校验结果为有误,将所述第三程序拷贝至所述第一存储区域;在所述系统的信息存储体中,更改对所述第一存储区域所标记的故障信息。在本专利技术的一个实施例中,所述在所述系统的信息存储体中,更改对所述第一存储区域所标记的故障信息之后,还包括:在对所述系统进行重启时,根据更改后的故障信息,读取所述第一存储区域内所存储的第三程序;在所述系统中执行所述第三程序。在本专利技术的一个实施例中,所述在所述系统中执行所述第三程序之后,还包括:在所述系统提示故障时,对所述第一存储区域内所存储的第三程序,与所述第三存储区域内所存储的第三程序进行对比校验;若对比校验结果为有误,确定所述第一存储区域存在故障;若对比校验结果为正确,确定车辆组件存在故障。在本专利技术的一个实施例中,所述在所述MCU系统中执行第一存储区域内所存储的第一程序之前,还包括:在所述系统执行所述第二存储区域内所存储的第二程序时,执行升级过程;从所述车辆服务器下载最新版本的所述第一程序;将所述第一程序存储至所述第一存储区域;在所述系统的信息存储体中,利用所述第一程序的程序信息对所述第一存储区域进行标记;当所述系统再次启动时,根据所述信息存储体中对各存储区域所标记的程序信息,选择存储有最新版本程序的所述第一存储区域进行读取,以执行所述第一存储区域内所存储的第一程序。为达上述目的,本专利技术第二方面实施例提出了一种基于MCU系统的程序执行装置,包括:执行模块,用于在所述MCU系统中执行第一存储区域内所存储的第一程序;其中,所述第一程序为所述系统最近一次升级后的程序;标记模块,用于在所述第一程序执行失败时,在所述系统的信息存储体中对所述第一存储区域标记故障信息;重启模块,用于在对所述系统进行重启时,根据所述信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序;其中,所述第二程序为所述系统最近一次升级前的程序;所述执行模块,还用于在所述系统中执行所述重启模块所读取到的第二程序。本专利技术实施例的基于MCU系统的程序执行装置,通过执行模块在所述MCU系统中执行第一存储区域内所存储的第一程序,进而在第一程序执行失败时,标记模块在系统的信息存储体中对第一存储区域标记故障信息,在对系统进行重启时,重启模块根据信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序,以使执行模块在系统中执行该第二程序。由于第一程序为系统最近一次升级后的程序,第二程序为系统最近一次升级前的程序,可见,通过系统中同时存储最近一次升级前以及最近一次升级后的程序,实现在系统存在故障时,进行系统恢复,以保证系统的运行状态,从而为系统运行过程中的程序更新和修复,以对系统进行故障排除打下了基础,解决现有技术中系统恢复效率较低的技术问题。另外,本专利技术实施例的基于MCU系统的程序执行装置,还具有如下附加的技术特征:在本专利技术的一个实施例中,所述装置,还包括:下载模块,用于在所述系统执行所述第二程序的过程中,从车辆服务器下载最新版本的第三程序;存储模块,用于将所述第三程序存储至第三存储区域;校验模块,用于将所述第三存储区域内所存储的第三程序,与所述第一存储区域内所存储的第一程序进行对比校验;拷贝模块,用于若对比校验结果为有误,将所述第三程序拷贝至所述第一存储区域;更新模块,用于在所述系统的信息存储体中,更改对所述第一存储区域所标记的故障信息。在本专利技术的一个实施例中,所述重启模块,还用于在对所述系统进行重启时,根据更改后的故障信息,读取所述第一存储区域内所存储的第三程序;所述执行模块,还用于在所述系统中执行所述第三程序。在本专利技术的一个实施例中,所述校验模块,还用于在所述系统提示故障时,对所述第一存储区域内所存储的第三程序,与所述第三存储区域内所存储的第三程序进行对比校验;故障判断模块,用于若对比校验结果为有误,确定所述第一存储区域存在故障;若对比校验结果为正确,确定车辆组件存在故障。在本专利技术的一个实施例中,所述装置,还包括:升级模块,用于在所述系统执行所述第二存储区域内所存储的第二程序时,执行升级过程;所述下载模块,还用于从所述车辆服务器下载最新版本的所述第一程序;所述存储模块,还用于将所述第一程序存储至所述第一存储区域;所述标记模块,还用于在所述系统本文档来自技高网...
基于MCU系统的程序执行方法、装置和终端

【技术保护点】
一种基于MCU系统的程序执行方法,其特征在于,包括以下步骤:在所述MCU系统中执行第一存储区域内所存储的第一程序;其中,所述第一程序为所述系统最近一次升级后的程序;在所述第一程序执行失败时,在所述系统的信息存储体中对所述第一存储区域标记故障信息;在对所述系统进行重启时,根据所述信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序;其中,所述第二程序为所述系统最近一次升级前的程序;在所述系统中执行所述第二程序。

【技术特征摘要】
1.一种基于MCU系统的程序执行方法,其特征在于,包括以下步骤:在所述MCU系统中执行第一存储区域内所存储的第一程序;其中,所述第一程序为所述系统最近一次升级后的程序;在所述第一程序执行失败时,在所述系统的信息存储体中对所述第一存储区域标记故障信息;在对所述系统进行重启时,根据所述信息存储体中标记的故障信息,读取运转正常的第二存储区域内所存储的第二程序;其中,所述第二程序为所述系统最近一次升级前的程序;在所述系统中执行所述第二程序。2.根据权利要求1所述的程序执行方法,其特征在于,所述在系统中执行所述第二程序过程中,还包括:从车辆服务器下载最新版本的第三程序;将所述第三程序存储至第三存储区域;将所述第三存储区域内所存储的第三程序,与所述第一存储区域内所存储的第一程序进行对比校验;若对比校验结果为有误,将所述第三程序拷贝至所述第一存储区域;在所述系统的信息存储体中,更改对所述第一存储区域所标记的故障信息。3.根据权利要求2所述的程序执行方法,其特征在于,所述在所述系统的信息存储体中,更改对所述第一存储区域所标记的故障信息之后,还包括:在对所述系统进行重启时,根据更改后的故障信息,读取所述第一存储区域内所存储的第三程序;在所述系统中执行所述第三程序。4.根据权利要求3所述的程序执行方法,其特征在于,所述在所述系统中执行所述第三程序之后,还包括:在所述系统提示故障时,对所述第一存储区域内所存储的第三程序,与所述第三存储区域内所存储的第三程序进行对比校验;若对比校验结果为有误,确定所述第一存储区域存在故障;若对比校验结果为正确,确定车辆组件存在故障。5.根据权利要求1-4任一项所述的程序执行方法,其特征在于,所述在所述MCU系统中执行第一存储区域内所存储的第一程序之前,还包括:在所述系统执行所述第二存储区域内所存储的第二程序时,执行升级过程;从所述车辆服务器下载最新版本的所述第一程序;将所述第一程序存储至所述第一存储区域;在所述系统的信息存储体中,利用所述第一程序的程序信息对所述第一存储区域进行标记;当所述系统再次启动时,根据所述信息存储体中对各存储区域所标记的程序信息,选择存储有最新版本程序的所述第一存储区域进行读取,以执行所述第一存储区域内所存储的第一程序。6.一种基于MCU系统的程序执行装置,其特征在于,包括:执行模块,用于在所述MCU系统中执行第一存储区域内所存储的第一程序;其中,所述第一程序为所述系统最近一次升级后的程序;标记模块,用于在所述第一程序执行失败时,在所述系统的信息存储体中对所述第一存储区域标记故障信息;重启模块,用于在对所述系统进行重启时,根据所述信息存储体中标记的故障信息,读取运转正常的第二存储区域内...

【专利技术属性】
技术研发人员:周博李奇峰杨云
申请(专利权)人:比亚迪股份有限公司
类型:发明
国别省市:广东,44

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

1