升级数据处理方法、上位机、下位机、设备及存储介质技术

技术编号:30804430 阅读:14 留言:0更新日期:2021-11-16 08:11
本申请提供一种升级数据处理方法、上位机、下位机、设备及存储介质,属于软件技术的领域,其中一种方法应用于上位机,上位机与下位机通信连接,该方法包括:将升级目标文件划分成多个升级数据包,以每次发送一行升级数据的方式,向下位机连续发送单个升级数据包中的升级数据,直至发送完单个升级数据包的升级数据后,向下位机发出包结束命令,并在接收到下位机发送的空闲命令后,继续以每次发送一行升级数据的方式,向下位机连续发送下一个升级数据包的升级数据,直至下位机接收完所述升级目标文件,从而能够减少上位机和下位机在数据传输过程中的应答次数和等待对方应答造成的时耗。过程中的应答次数和等待对方应答造成的时耗。过程中的应答次数和等待对方应答造成的时耗。

【技术实现步骤摘要】
升级数据处理方法、上位机、下位机、设备及存储介质


[0001]本申请涉及软件技术的领域,尤其是涉及一种升级数据处理方法、上位机、下位机、设备及存储介质。

技术介绍

[0002]随着电子技术和信息技术的发展,汽车或者农机领域电控系统智能化程度越来越高,电控系统的程序文件随之增大,同时功能更新也越来越快,从而电子控制单元(Electronic Control Unit,ECU控制器)的固件程序更新频率也越来越高,ECU控制器软件升级大多数都是基于CAN总线的。由于CAN总线一般数据域都采用8个字节,而CAN报文中数据域在整帧报文中占的比例在50%左右,使得CAN总线传输数据时的有效数据的载荷率较低。
[0003]目前,升级软件一般采用的方法为:上位机每发完一行或者一帧报文,下位机应答上位机一次。采用这样的升级方法,每传输一行数据,上位机和下位机就要进行一次交互,升级的目标文件越大时,交互次数越多,从而存在升级时耗长、体验差的问题。

技术实现思路

[0004]本申请的目的包括,提供一种升级数据处理方法、上位机、下位机、设备及存储介质,能够改善现有技术中由于交互次数越多,而导致的升级时耗长、体验差的问题。
[0005]第一方面,本申请提供一种升级数据处理方法,采用如下的技术方案:一种升级数据处理方法,应用于上位机,所述上位机与下位机通信连接,所述方法包括:应用于上位机,所述上位机与下位机通信连接,所述方法包括:将升级目标文件划分成多个升级数据包,每个所述升级数据包包括多行升级数据;以每次发送一行升级数据的方式,向所述下位机连续发送单个所述升级数据包中的升级数据,直至发送完单个所述升级数据包的升级数据后,向所述下位机发出包结束命令,所述包结束命令用于促使所述下位机对接收的单个所述升级数据包的升级数据逐行进行有效校验;接收到所述下位机发送的空闲命令后,继续以每次发送一行升级数据的方式,向所述下位机连续发送下一个所述升级数据包的升级数据,直至所述下位机接收完所述升级目标文件。
[0006]在一种可行的实施方式中,所述方法还包括:在所述下位机接收完所述升级目标文件后,向所述下位机发送文件结束命令,所述文件结束命令用于促使所述下位机对接收到的所述升级目标文件的有效升级数据进行升级校验,所述有效升级数据为通过有效校验的升级数据。
[0007]在一种可行的实施方式中,在所述向所述下位机发出包结束命令的步骤之后,在
所述接收到所述下位机发送的空闲命令的步骤之前,所述方法还包括:接收所述下位机发送的第一校验值,所述第一校验值是所述下位机根据对接收的单个所述升级数据包的升级数据逐行进行有效校验,而得到的用于表征所述下位机接收的升级数据包的每行升级数据的有效情况;对所述第一校验值进行解析,若解析结果表明至少有一行升级数据未被所述下位机有效接收,则以每次发送一行升级数据的方式,向所述下位机重新发送未被有效接收的升级数据,直至该未被有效接收的升级数据被所述下位机有效接收。
[0008]在一种可行的实施方式中,所述以每次发送一行升级数据的方式,向所述下位机连续发送单个所述升级数据包中的升级数据的步骤,包括:向所述下位机发送包开始命令,所述包开始命令用于促使所述下位机做好接收准备;接收到所述下位机在做好接收准备之后发送的待收命令后,以每次发送一行升级数据的方式,向所述下位机发送单个所述升级数据包中的升级数据。
[0009]在一种可行的实施方式中,所述在所述下位机接收完所述升级目标文件后,向所述下位机发送文件结束命令的步骤,包括:在所述下位机接收完所述升级目标文件,向所述下位机发送文件结束命令,所述文件结束命令包括所述升级目标文件的第一CRC校验值,所述升级目标文件的第一CRC校验值是根据向所述下位机发送的所述升级数据计算得到的;所述文件结束命令用于促使所述下位机根据接收到的所述升级目标文件的有效升级数据计算得到第二CRC校验值,并与所述第一CRC校验值进行比较;所述升级校验为在所述第一CRC校验值与所述第二CRC校验值一致的情况下进行升级,在所述第一CRC校验值与所述第二CRC校验值不一致的情况下不进行升级。
[0010]第二方面,本申请提供一种升级数据处理方法,采用如下的技术方案:一种升级数据处理方法,应用于下位机,所述下位机与上位机通信连接,所述上位机存储有包括多个升级数据包的升级目标文件,每个所述升级数据包包括多行升级数据,所述方法包括:接收所述上位机以每次发送一行升级数据的方式所连续发送的单个所述升级数据包的升级数据;在接收到所述上位机发送的包结束命令后,对接收的单个所述升级数据包的升级数据逐行进行有效校验以生成第一校验值,并向所述上位机发送所述第一校验值,所述第一校验值用于促使所述上位机得到所述下位机未有效接收的升级数据;接收所述上位机以每次发送一行升级数据的方式重新发送的升级数据,直至有效接收完单个所述升级数据包的所有升级数据,所述重新发送的升级数据为所述下位机未有效接收的升级数据;对有效接收完的单个所述升级数据包的所有升级数据进行写入处理,并在写入处理结束后向所述上位机发送空闲命令,直至有效接收完所述升级目标文件,所述空闲命令用于促使所述上位机继续发送下一个所述升级数据包的升级数据。
[0011]在一种可行的实施方式中,所述方法还包括:接收所述上位机在所述下位机接收完所述升级目标文件后发送的文件结束命令,
所述文件结束命令包括所述升级目标文件的第一CRC校验值,所述第一CRC校验值是所述上位机根据向所述下位机发送的所述升级数据计算得到的;根据接收的所述升级目标文件的有效升级数据,计算得到第二CRC校验值,并将所述第二CRC校验值与第一CRC校验值进行比较,以进行升级校验;所述有效升级数据为通过有效校验的升级数据。
[0012]在一种可行的实施方式中,所述对有效接收完的单个所述升级数据包的所有升级数据进行写入处理的步骤,包括:解析每一行升级数据,从所述升级数据包的所有升级数据中提取需要写入闪存的数据和地址,并将该提取出的数据和地址写入闪存镜像缓存;当所述闪存镜像缓存写满后,将所述闪存镜像缓存内的数据写入闪存。
[0013]第三方案,本申请提供一种上位机,采用如下的技术方案:一种上位机,应用于上位机,所述上位机与下位机通信连接,用于实现如第一方面所述的升级数据处理方法。
[0014]第四方面,本申请提供一种下位机,采用如下的技术方案:一种下位机,所述下位机与上位机通信连接,用于实现如第二方面所述的升级数据处理方法。
[0015]第五方面,本申请提供一种电子设备,采用如下的技术方案:一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面或第二方面所述的方法。
[0016]第六方面,本身提供一种计算机可读存储设置,采用如下的技术方案:一种存储介质,所述存储介质包括计算机程序,所述计算机程序运行时控制所述存储介质所在的电子设备执行如第一方面或第二方面所述的方法。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种升级数据处理方法,其特征在于,应用于上位机,所述上位机与下位机通信连接,所述方法包括:将升级目标文件划分成多个升级数据包,每个所述升级数据包包括多行升级数据;以每次发送一行升级数据的方式,向所述下位机连续发送单个所述升级数据包中的升级数据,直至发送完单个所述升级数据包的升级数据后,向所述下位机发出包结束命令,所述包结束命令用于促使所述下位机对接收的单个所述升级数据包的升级数据逐行进行有效校验;接收到所述下位机发送的空闲命令后,继续以每次发送一行升级数据的方式,向所述下位机连续发送下一个所述升级数据包的升级数据,直至所述下位机接收完所述升级目标文件。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述下位机接收完所述升级目标文件后,向所述下位机发送文件结束命令,所述文件结束命令用于促使所述下位机对接收到的所述升级目标文件的有效升级数据进行升级校验,所述有效升级数据为通过有效校验的升级数据。3.根据权利要求1或2所述的方法,其特征在于,在所述向所述下位机发出包结束命令的步骤之后,在所述接收到所述下位机发送的空闲命令的步骤之前,所述方法还包括:接收所述下位机发送的第一校验值,所述第一校验值是所述下位机根据对接收的单个所述升级数据包的升级数据逐行进行有效校验,而得到的用于表征所述下位机接收的升级数据包的每行升级数据的有效情况;对所述第一校验值进行解析,若解析结果表明至少有一行升级数据未被所述下位机有效接收,则以每次发送一行升级数据的方式,向所述下位机重新发送未被有效接收的升级数据,直至该未被有效接收的升级数据被所述下位机有效接收。4.根据权利要求1或2所述方法,其特征在于,所述以每次发送一行升级数据的方式,向所述下位机连续发送单个所述升级数据包中的升级数据的步骤,包括:向所述下位机发送包开始命令,所述包开始命令用于促使所述下位机做好接收准备;接收到所述下位机在做好接收准备之后发送的待收命令后,以每次发送一行升级数据的方式,向所述下位机发送单个所述升级数据包中的升级数据。5.根据权利要求2所述的方法,其特征在于,所述在所述下位机接收完所述升级目标文件后,向所述下位机发送文件结束命令的步骤,包括:在所述下位机接收完所述升级目标文件,向所述下位机发送文件结束命令,所述文件结束命令包括所述升级目标文件的第一CRC校验值,所述升级目标文件的第一CRC校验值是根据向所述下位机发送的所述升级数据计算得到的;所述文件结束命令用于促使所述下位机根据接收到的所述升级目标文件的有效升级数据计算得到第二CRC校验值,并与所述第一CRC校验值进行比较;所述升级校验为在所述第一CRC校验值与所述第二CRC校验值一致的...

【专利技术属性】
技术研发人员:梁晓良吴贵龙贺龙钊
申请(专利权)人:广东皓耘科技有限公司
类型:发明
国别省市:

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

1