System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及can总线设备领域,具体地涉及一种can总线设备升级方法。
技术介绍
1、controller area network(can)即控制器局域网,是一种串行通信协议,是国际上应用最广泛的现场总线之一。广泛应用于汽车和工业控制系统等领域。can通信协议定义了不同类型的帧,其中包括数据段和标识符(id)。
2、在can 2.0a和2.0b标准中,数据段的长度为8字节。数据段包含实际的数据信息,用于传输应用层的信息。由于can总线数据帧只有8字节长度,带宽特别低,因此,当需要更新固件时,更新的过程就非常慢。
技术实现思路
1、为了克服现有技术存在的can总线设备更新固件缓慢的问题,本专利技术提供一种can总线设备升级方法,使用该can总线设备升级方法能够对设备进行高效的固件升级。
2、为了实现上述目的,本专利技术提供一种can总线设备升级方法,所述can总线设备升级方法包括:
3、步骤一、通过开源差分算法bsdiff提取新旧固件差异部分,制作差分包;
4、步骤二、引导加载程序bootloader读取环境变量,判断是否对固件设备进行升级;
5、步骤三、需要对固件进行升级时,引导加载程序bootloader通过can接口获取差分包;
6、步骤四、引导加载程序bootloade将差分包解压缩后存入ram;
7、步骤五、差分文件结合用户应用程序app区中的老固件还原出新固件,完成固件升级。
< ...【技术保护点】
1.一种CAN总线设备升级方法,其特征在于,所述CAN总线设备升级方法包括以下步骤:
2.根据权利要求1所述的CAN总线设备升级方法,其特征在于,所述差分包制作完成后,还可以通过lzw压缩算法对所述差分包进行压缩。
3.根据权利要求2所述的CAN总线设备升级方法,其特征在于,所述环境变量包含APP长度和是否需要升级的标志位。
4.根据权利要求3所述的CAN总线设备升级方法,其特征在于,用户应用程序APP设置为能够修改所述环境变量的APP长度和标志位。
5.根据权利要求4所述的CAN总线设备升级方法,其特征在于,完成固件升级后用户应用程序APP将环境变量修改为无需升级,并对环境变量中APP长度进行更新。
6.根据权利要求1-5中任意一项所述的CAN总线设备升级方法,其特征在于,所述差分包中包含用于追踪数据包顺序的流水号。
7.根据权利要求6所述的CAN总线设备升级方法,其特征在于,所述差分包中还包含用于判断数据传输过程的数据类型。
8.根据权利要求7所述的CAN总线设备升级方法,其特征在于,所述流水
9.根据权利要求8所述的CAN总线设备升级方法,其特征在于,所述差分包包含用于判断差分包信息获取是否正确的包头信息。
10.根据权利要求9述的CAN总线设备升级方法,其特征在于,所述包头信息包含所述差分包的校验值和长度信息,以及新固件的校验值和长度信息。
...【技术特征摘要】
1.一种can总线设备升级方法,其特征在于,所述can总线设备升级方法包括以下步骤:
2.根据权利要求1所述的can总线设备升级方法,其特征在于,所述差分包制作完成后,还可以通过lzw压缩算法对所述差分包进行压缩。
3.根据权利要求2所述的can总线设备升级方法,其特征在于,所述环境变量包含app长度和是否需要升级的标志位。
4.根据权利要求3所述的can总线设备升级方法,其特征在于,用户应用程序app设置为能够修改所述环境变量的app长度和标志位。
5.根据权利要求4所述的can总线设备升级方法,其特征在于,完成固件升级后用户应用程序app将环境变量修改为无需升级,并对环境变量中app长度进行更新。
<...【专利技术属性】
技术研发人员:杨锐,
申请(专利权)人:中航华东光电有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。