车载多媒体设备的MCU软件升级方法、系统和存储装置与流程

文档序号:13445379阅读:3924来源:国知局
车载多媒体设备的MCU软件升级方法、系统和存储装置与流程

本发明涉及车载多媒体技术领域,特别涉及车载多媒体设备的mcu软件升级方法、系统和存储装置。



背景技术:

车载多媒体系统一般有两个控制器,一个mcu用作逻辑控制,一个arm运行操作系统,操作系统的升级比较方便,如arnold系统都有完善的升级方法,但mcu的升级相对比较麻烦,目前升级mcu软件需要去4s店或者下载到sd卡由用户自己升级,去4s店比较麻烦,增加用户负担,而由用户自己升级由于软件版本繁多很容易产生升级错误。

因而现有技术还有待改进和提高。



技术实现要素:

鉴于上述现有技术的不足之处,本发明的目的在于提供一种车载多媒体设备的mcu软件升级方法、系统和存储装置,能通过网络服务器推送最新版本的mcu软件至车载多媒体设备,实现网络远程升级mcu软件,提高mcu软件升级的便捷性和安全性。

为了达到上述目的,本发明采取了以下技术方案:

一种车载多媒体设备的mcu软件升级方法,其包括如下步骤:

a、获取车载多媒体设备当前mcu软件的版本号,且当车载多媒体设备接入网络后检测网络服务器提供的最新mcu软件的版本号;

b、根据当前mcu软件的版本号与最新mcu软件的版本号判断是否需要进行mcu软件升级,若是,则输出升级提示信息;

c、当检测到用户输入的升级指令时,接收网络服务器传输的最新mcu软件数据并保存;

d、最新mcu软件数据接收并保存完成后调用升级接口,按预设校验规则对最新mcu软件数据进行校验后通过所述升级接口写入至mcu的存储器中。

所述的车载多媒体设备的mcu软件升级方法中,所述步骤a之前还包括步骤:

a0、接收用户输入的升级检测指令。

所述的车载多媒体设备的mcu软件升级方法中,所述步骤b具体包括:

将当前mcu软件的版本号和最新mcu软件的版本号进行对比,判断当前mcu软件是否为最新版本,若不是,则判断为需要进行mcu软件升级,输出升级提示信息。

所述的车载多媒体设备的mcu软件升级方法中,所述步骤d包括步骤:

d1、当检测到最新mcu软件数据接收并保存完成后调用升级接口;

d2、读取最新mcu软件数据,按预设校验规则添加第一校验数据并封装后通过所述升级接口发送至mcu;

d3、当mcu接收到封装数据时,根据所述校验规则计算第二校验数据,并将所述第二校验数据与第一校验数据比较,判断校验是否成功,若是,则对封装数据进行解析并写入至mcu的存储器中。

所述的车载多媒体设备的mcu软件升级方法中,所述步骤d2包括步骤:

d21、接收mcu输出的数据请求指令;

d22、读取最新mcu软件数据中的其中一帧,添加帧头数据并按预设校验规则添加第一校验数据后封装成数据帧;

d23、将所述数据帧通过所述升级接口发送至mcu。

所述的车载多媒体设备的mcu软件升级方法中,所述步骤d3包括步骤:

d31、当mcu接收到所述数据帧时,去除帧头数据并按所述预设校验规则计算第二校验数据;

d32、判断所述第二校验数据与第一校验数据是否相同,若是则校验成功,对当前数据帧进行解析并写入至mcu的存储器中,之后继续请求下一帧数据,直到全部数据成功写入;否则校验失败,重新请求并接收当前数据帧后再次进行校验,直到当前数据帧校验成功。

所述的车载多媒体设备的mcu软件升级方法中,所述步骤d之后还包括步骤:

e、当检测到最新mcu软件数据写入完毕后,自动重启所述车载多媒体设备,更新当前mcu软件。

一种存储装置,所述存储装置存储有计算机程序,所述计算机程序适于被执行以实现如上所述的车载多媒体设备的mcu软件升级方法。

一种车载多媒体设备的mcu软件升级系统,其包括处理器、与所述处理器通信连接的存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行以实现如上所述的车载多媒体设备的mcu软件升级方法;

所述处理器用于调用所述存储器中的计算机程序,以执行如上所述的车载多媒体设备的mcu软件升级方法。

相较于现有技术,本发明提供的车载多媒体设备的mcu软件升级方法、系统和存储装置中,所述车载多媒体设备的mcu软件升级方法通过获取车载多媒体设备当前mcu软件的版本号,且当车载多媒体设备接入网络后检测网络服务器提供的最新mcu软件的版本号;根据当前mcu软件的版本号与最新mcu软件的版本号判断是否需要进行mcu软件升级,若是,则输出升级提示信息;当检测到用户输入的升级指令时,接收网络服务器传输的最新mcu软件数据并保存;最新mcu软件数据接收并保存完成后调用升级接口,按预设校验规则对最新mcu软件数据进行校验后通过所述升级接口写入至mcu的存储器中。能通过网络服务器推送最新版本的mcu软件至车载多媒体设备,实现网络远程升级mcu软件,提高mcu软件升级的便捷性和安全性。

附图说明

图1为本发明提供的车载多媒体设备的mcu软件升级方法的流程图。

图2为本发明提供的车载多媒体设备的mcu软件升级方法优选实施例的流程图。

图3为本发明提供的车载多媒体设备的mcu软件升级系统的结构框图。

具体实施方式

鉴于现有技术中车载多媒体系统的mcu软件升级方式复杂、便捷度不够等缺点,本发明的目的在于提供一种车载多媒体设备的mcu软件升级方法、系统和存储装置,能通过网络服务器推送最新版本的mcu软件至车载多媒体设备,实现网络远程升级mcu软件,提高mcu软件升级的便捷性和安全性。

为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

请参阅图1,本发明提供的车载多媒体设备的mcu软件升级方法包括如下步骤:

s100、获取车载多媒体设备当前mcu软件的版本号,且当车载多媒体设备接入网络后检测网络服务器提供的最新mcu软件的版本号;

s200、根据当前mcu软件的版本号与最新mcu软件的版本号判断是否需要进行mcu软件升级,若是,则输出升级提示信息;

s300、当检测到用户输入的升级指令时,接收网络服务器传输的最新mcu软件数据并保存;

s400、最新mcu软件数据接收并保存完成后调用升级接口,按预设校验规则对最新mcu软件数据进行校验后通过所述升级接口写入至mcu的存储器中。

所述步骤s400之后还包括步骤:

s500、当检测到最新mcu软件数据写入完毕后,自动重启所述车载多媒体设备,更新当前mcu软件

本发明在车载多媒体设备开机后获取当前mcu软件的版本号,并在车载多媒体设备接入网络后与网络服务器进行通讯,检测网络服务器提供的最新mcu软件的版本号,例如车载多媒体设备科通过wifi、运营商的4g/3g/gprs等等通道与网络服务器进行通讯,从而检测最新mcu软件的版本号;之后根据当前mcu软件的版本号与最新mcu软件的版本号判断是否需要进行mcu软件升级,若有更新的软件版本需要升级,则输出升级提示信息提示用户升级;之后当检测到用户输入的升级指令时接收网络服务器传输的最新mcu软件数据并保持,例如判断出需要进行mcu软件后,在车载多媒体设备的显示界面弹出升级提示窗口,显示提示信息“检测到xx版本,是否进行升级”以供用户选择是否进行升级,当用户点击“是”时,接收服务器推送的最新mcu软件数据,并缓存在车载多媒体设备中;当最新mcu软件数据接收并保存完成后调用升级接口,按预设校验规则对最新mcu软件数据进行校验后通过所述升级接口写入至mcu的存储器中,最新mcu软件数据写入完毕后,自动重启所述车载多媒体设备,从而完成mcu软件的更新。本发明无需去到4s店或者通过sd卡自助升级,通过网络服务器即可推送最新版本的mcu软件至车载多媒体设备,实现网络远程升级mcu软件,提高mcu软件升级的便捷性和安全性。

进一步地,所述步骤s100之前还包括步骤:

s101、接收用户输入的升级检测指令。

即本发明提供的车载多媒体设备的mcu软件升级方法中,用户可主动输入升级检测指令,检测是否有新版本的mcu软件需更新,提高mcu软件升级的灵活性。

具体地,所述步骤s200具体包括:

将当前mcu软件的版本号和最新mcu软件的版本号进行对比,判断当前mcu软件是否为最新版本,若不是,则判断为需要进行mcu软件升级,输出升级提示信息。

本实施例中,在获取了当前mcu软件的版本号和最新mcu软件的版本号后,将二者进行对比,判断当前mcu软件是否为最新版本,例如对比当前mcu软件的版本号是否与最新mcu软件的版本号相同,若相同则为最新版本,判断为不需要进行升级;若不相同则不是最新版本,判断为需要进行mcu软件升级,之后输入升级提示信息,从而根据软件的版本号准确地判断当前mcu软件是否为最新版,进而判断是否需要更新,提高升级检测的准确性。

进一步地,所述步骤s400包括步骤:

s401、当检测到最新mcu软件数据接收并保存完成后调用升级接口;

s402、读取最新mcu软件数据,按预设校验规则添加第一校验数据并封装后通过所述升级接口发送至mcu;

s403、当mcu接收到封装数据时,根据所述校验规则计算第二校验数据,并将所述第二校验数据与第一校验数据比较,判断校验是否成功,若是,则对封装数据进行解析并写入至mcu的存储器中。

本实施例中,检测到数据接收保存完成后调用升级接口,所述升级接口优选为android接口,之后读取最新mcu软件数据,按预设校验规则添加第一校验数据并进行数据封装后通过所述升级接口发送至mcu,而mcu接收到封装数据后,根据同样的校验规则计算第二校验数据,并将所述第二校验数据与第一校验数据进行比较,判断校验是否成功,具体为判断第二校验数据与第一校验数据是否相同,若相同则校验成功,对封装数据进行解析并写入至mcu的存储器中,从而完成数据校验与写入过程,保证升级过程中数据的正确性。

具体地,所述步骤s402包括步骤:

s421、接收mcu输出的数据请求指令;

s422、读取最新mcu软件数据中的其中一帧,添加帧头数据并按预设校验规则添加第一校验数据后封装成数据帧;

s423、将所述数据帧通过所述升级接口发送至mcu。

所述步骤s403包括步骤:

s431、当mcu接收到所述数据帧时,去除帧头数据并按所述预设校验规则计算第二校验数据;

s432、判断所述第二校验数据与第一校验数据是否相同,若是则校验成功,对当前数据帧进行解析并写入至mcu的存储器中,之后继续请求下一帧数据,直到全部数据成功写入;否则校验失败,重新请求并接收当前数据帧后再次进行校验,直到当前数据帧校验成功。

本实施例中,在进行mcu软件数据写入更新时,接收mcu输出的数据请求指令,之后将mcu软件数据以行为单位进行更新,具体为读取最新mcu软件数据中的其中一帧,添加帧头数据并按预设校验规则添加第一校验数据后封装成数据帧,将所述数据发送至mcu,mcu在接收到所述数据帧后,去除枕头数据并按所述预设校验规则计算第二校验数据,之后判断所述第二校验数据与第一校验数据是否相同,若是则校验成功,对当前数据帧进行解析并写入至mcu的存储器中,并继续请求下一帧数据,重复数据封装、发送、校验、写入的过程,直到全部数据成功写入即完成mcu软件版本更新;否则校验失败,重新请求并接收当前数据帧后再次进行校验,直到当前数据帧校验成功。

具体来说,本实施例中的数据帧封装格式如表1所示:

表1

数据帧由同步数据头(0xff66)+数据长度(0xnn)+数据类型(0xnn)+具体命令(0xnn、0xnn两字节)+数据内容(0-n字节)+校验和(0xnn)组成,校验和记为校验数据。

其中所述数据长度计算规则为:

数据长度=数据类型(一字节)+具体命令(两字节)+数据内容(n个字节)。

所述校验和的计算规则,即本实施例中的预设校验规则为:

校验和={数据长度+数据种类+具体命令(两字节)+数据内容(0-n字节)}取反再加1。

根据每一帧的数据以及上述计算规则即可对每一帧数据进行校验后再解析写入,保证每一帧数据的正确性,保证mcu软件升级的稳定性。

请一并参阅图2,其为本发明提供的车载多媒体设备的mcu软件升级方法优选实施例的流程图,本发明优选实施例中,mcu的软件分为eb和mb两部分,其中,eb是bootloader,即mcu的开机引导程序,mb是mcu的主程序,正常运行时的程序,开机时先运行引导程序,引导程序启动主程序进入正常运行状态,即设备开机的时候先运行eb,eb加载mb并运行。一般系统主要运行在mb状态。当升级mb的时候,需要跳到eb去更新mb在存储器上的代码,升级eb的时候由于eb的存储位置跟当前运行的mb存储位置不冲突,直接在mb中进行升级即可。

并且本发明优选实施例中升级接口为mcu软件升级的android接口,其主要包括以下几部分相互配合以完成数据更新流程:

1、驱动层:驱动层通过tty驱动的n_mouse链路打开mcu与arm连接的串口。

2、硬件适配层:适配层实现打开关闭、读写驱动层的方法。

3、jni层:jni层将硬件适配层的本地方法转换为java层的方法。

4、服务层:服务器通过jni提供的方法实现升级服务接口。

5、客户端:客户端获得服务层的一个实例,导出升级mcu的方法供应用层调用。

6、应用层:应用层调用服务层的接口实现开始升级,写入升级数据,获取反馈等功能。

具体地,本发明优选实施例的实现流程为:开启后获取当前mcu版本,并且车载多媒体系统中的arm控制器通过网络与服务器通讯,请求服务器返回最新mcu版本,之后接收服务器返回的mcu最新版本,判断是否需要更新,若需要则提示用户升级,接收到升级指令后请求服务器下载mcu最新版本,下载完成后arm控制器通过串口与mcu进行通信,通知mcu升级eb或mb,当升级mb的时候,需要跳到eb运行,升级eb的时候直接在mb中进行升级即可,升级时由mcu请求数据,amr控制器读取一行数据并校验封装后发送给mcu,此时若mcu校验失败则重新发送请求,amr控制器则重新发送上一帧数据,若校验成功则解析数据并写入存储器中,请求下一帧数据直到所有数据写入完毕,此时升级完成,重启系统后即更新为新版本的mcu软件。

基于上述车载多媒体设备的mcu软件升级方法,本发明还相应提供一种存储装置,所述存储装置存储有计算机程序,所述计算机程序适于被执行以实现如上所述的车载多媒体设备的mcu软件升级方法。由于上文已对所述车载多媒体设备的mcu软件升级方法进行了详细描述,此处不作详述,具体请参阅上述方法对应的实施例。

基于上述车载多媒体设备的mcu软件升级方法,本发明还相应提供一种车载多媒体设备的mcu软件升级系统,如图2所示,所述车载多媒体设备的mcu软件升级系统包括处理器10、与所述处理器10通信连接的存储器20,以及用于信号传输的通信接口30,所述处理器10、存储区20以及通信接口30均通过通信总线40连接。其中,所述存储器20存储有计算机程序,所述计算机程序被处理器10执行以实现如上所述的车载多媒体设备的mcu软件升级方法;所述处理器10用于调用所述存储器20中的计算机程序,以执行如上所述的车载多媒体设备的mcu软件升级方法。由于上文已对所述车载多媒体设备的mcu软件升级方法进行了详细描述,此处不作详述,具体请参阅上述方法对应的实施例。

综上所述,本发明提供的车载多媒体设备的mcu软件升级方法、系统和存储装置中,所述车载多媒体设备的mcu软件升级方法通过获取车载多媒体设备当前mcu软件的版本号,且当车载多媒体设备接入网络后检测网络服务器提供的最新mcu软件的版本号;根据当前mcu软件的版本号与最新mcu软件的版本号判断是否需要进行mcu软件升级,若是,则输出升级提示信息;当检测到用户输入的升级指令时,接收网络服务器传输的最新mcu软件数据并保存;最新mcu软件数据接收并保存完成后调用升级接口,按预设校验规则对最新mcu软件数据进行校验后通过所述升级接口写入至mcu的存储器中。能通过网络服务器推送最新版本的mcu软件至车载多媒体设备,实现网络远程升级mcu软件,提高mcu软件升级的便捷性和安全性。

可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1