[发明专利]一种基于CAN通信的兼容多设备平台的软件更新方法有效
申请号: | 201911107841.1 | 申请日: | 2019-11-13 |
公开(公告)号: | CN110851163B | 公开(公告)日: | 2023-04-28 |
发明(设计)人: | 张志鹏;高锦;雒拓 | 申请(专利权)人: | 陕西重型汽车有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 朱海临 |
地址: | 710200 陕西*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 can 通信 兼容 设备 平台 软件 更新 方法 | ||
1.一种基于CAN通信的兼容多设备平台的软件更新方法,其特征在于,包括如下步骤:
步骤一,上位机采用不同类型的下载设备与下位机连接,上位机与下位机连接后,首先在上位机中创建一个API接口,定义下载设备的驱动方法,然后根据不同的下载设备驱动创建API的实现类,同时实现API接口中下载设备驱动功能的抽象方法,最后,通过工厂类来选择与下载设备类型对应的实现类来创建API接口对象;上位机中设置有与不同类型的下载设备对应的下载设备驱动,每次连接都在上位机中创建一个与下载设备类型对应的API接口对象,直到将所有使用的下载设备的API接口对象均创建完成;
步骤二,将上位机采用下载设备与下位机连接,匹配与下载设备对应的API接口对象,在上位机中选取与下载设备类型对应的下载设备驱动,完成连接;
步骤三,完成连接后,下位机开始从上位机中下载软件更新数据:上位机首先向下位机定时发送BootLoader请求指令,下位机收到Bootloader请求后进入Bootloader,然后上位机通过CAN通信协议将软件更新数据传送给下位机,并使用编程指令对下位机进行编程;上位机向下位机发送数据时,将软件更新数据逐行发送,进行软件更新,软件更新数据每行至少两个字符表示一组16进制数据;
步骤四,所有所需更新的软件数据下载完成后,更新完成。
2.根据权利要求1所述的一种基于CAN通信的兼容多设备平台的软件更新方法,其特征在于,上位机向下位机发送数据前,上位机对软件更新数据进行解析。
3.根据权利要求2所述的一种基于CAN通信的兼容多设备平台的软件更新方法,其特征在于,步骤三中,下载前,上位机根据解析的软件更新数据的地址信息向下位机发送擦除指令,擦除待编程的Flash和EEPROM区域。
4.根据权利要求1所述的一种基于CAN通信的兼容多设备平台的软件更新方法,其特征在于,步骤三中,在下位机进入BootLoader后使用硬件过滤器过滤掉与BootLoader功能无关的CAN报文。
5.根据权利要求1所述的一种基于CAN通信的兼容多设备平台的软件更新方法,其特征在于,步骤三中,在接收中断时,将报文放于下位机的软件缓冲区,在处理报文时从软件缓冲区依次取出。
6.根据权利要求1所述的一种基于CAN通信的兼容多设备平台的软件更新方法,其特征在于,步骤三中,下位机设置有NVM驱动模块,可通过TBLRD读表、TBLWT写表和NVM驱动模块,控制寄存器实现运行时自编程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于陕西重型汽车有限公司,未经陕西重型汽车有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911107841.1/1.html,转载请声明来源钻瓜专利网。