[发明专利]一种重编程方法、系统、重编程设备及电子控制单元有效
申请号: | 201510144548.8 | 申请日: | 2015-03-30 |
公开(公告)号: | CN104834286B | 公开(公告)日: | 2017-07-11 |
发明(设计)人: | 尚鑫 | 申请(专利权)人: | 北京经纬恒润科技有限公司 |
主分类号: | G05B19/418 | 分类号: | G05B19/418 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 王宝筠 |
地址: | 100101 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 编程 方法 系统 设备 电子 控制 单元 | ||
技术领域
本发明涉及重编程技术领域,更具体的说,涉及一种重编程方法、系统、重编程设备及电子控制单元。
背景技术
随着汽车电子产业的高速发展,越来越多的电子控制单元被装载到机动车辆上,各电子控制单元之间保持着高速稳定的通信,其中最普遍的通信方式为CAN(Controller Area Network,控制器局域网络)总线通信。CAN总线在机动车辆上的广泛应用,使得衍生出多种基于该总线的标准协议,比如,CAN标定协议。
CAN标定协议主要应用在电子控制单元开发阶段中的标定阶段,在标定过程中,标定工程师经常会携带多个版本的应用程序数据文件,然后根据自己的需要更新相应版本的应用程序。标定过程一般在台架或实车环境,而此时,电子控制单元已经被安装外壳并且装配在执行器上,因此需要通过基于CAN标定协议的重编程方法对电子控制单元进行重编程。
由于CAN标定协议本身的一些局限性,使目标电子控制单元无法确认重编程程序是否完整地下载,下载的重编程程序是否正确,因此,亟需一种可靠的重编程方法及系统在基于CAN标定协议的基础上对重编程过程进行完善,以解决因重编程程序下载不完全或是下载错误而导致的重编程功能不完善、操作过程繁琐等问题。
发明内容
有鉴于此,本发明提供一种重编程方法、系统、重编程设备及电子控制单元,以实现在基于CAN标定协议的基础上对重编程过程进行完善,解决因重编程程序下载不完全或是下载错误而导致的重编程功能不完善、操作过程繁琐等问题。
一种重编程方法,包括:
向所有目标电子控制单元发送连接Connect命令,所述Connect命令携带有重编程请求指示和与各目标电子控制单元对应的逻辑地址;
接收各在线的目标电子控制单元反馈的连接肯定响应,与各在线的目标电子控制单元建立连接,所述连接肯定响应由各在线的目标电子控制单元确定当前需要重编程后生成;
依次对每一个在线的目标电子控制单元中的应用程序进行重编程,重编程过程具体包括:
向所述目标电子控制单元发送包含刷写功能请求掩码的请求种子GetSeed命令;
接收所述目标电子控制单元通过响应报文反馈的种子,所述响应报文由所述目标电子控制单元判定刷写功能符合安全访问要求后生成;
利用安全访问算法计算所述种子对应的密钥;
将所述密钥通过密钥解锁Unlock命令发送给所述目标电子控制单元;
接收所述目标电子控制单元发送的密钥正确肯定响应和功能状态掩码,所述密钥正确肯定响应由所述目标电子控制单元在判定所述密钥符合预设要求后生成,所述功能状态掩码表征所述目标电子控制单元已将当前的刷写功能状态转变为解锁状态;
向所述目标电子控制单元发送指针放置SetMta命令和擦除ClearMemory命令,使所述目标电子控制单元从控制器局域网络CAN标定协议中MTA指针指向的应用程序擦除的首地址开始,擦除与所述ClearMemory命令相同的数据长度;
接收所述目标电子控制单元发送的擦除肯定响应,所述擦除肯定响应由所述目标电子控制单元在判定利用所述首地址和所述数据长度得到的擦除长度没有超过所述应用程序地址长度范围后发送;
向所述目标电子控制单元发送SetMta命令和Program/Program_6命令,使所述MTA指针指向所述应用程序编程的首地址,对所述应用程序进行编程;
利用校验算法计算编程数据的第一校验和;
获取所述目标电子控制单元发送的第二校验和,所述第二校验和由所述目标电子控制单元在重编程完成后对编程数据利用校验算法计算得到;
判断所述第一校验和与所述第二校验和是否相等;
若所述第一校验和与所述第二校验和相等,则向所述目标电子控制单元发送校验和通过的提示信息。
优选的,在若所述第一校验和与所述第二校验和相等,则向所述目标电子控制单元发送校验和通过的提示信息之后,还包括:
向所述目标电子控制单元发送断开连接Disconnect命令,与所述目标电子控制单元断开连接,所述Disconnect命令中携带有与所述目标电子控制单元对应的逻辑地址。
优选的,在向所述目标电子控制单元发送SetMta命令和Program/Program_6命令,使所述MTA指针指向所述应用程序编程的首地址,对所述应用程序进行编程包括:
将连续的重编程数据作为一个数据段,判断所述数据段中未进行编程的数据长度是否大于预设字节数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京经纬恒润科技有限公司,未经北京经纬恒润科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510144548.8/2.html,转载请声明来源钻瓜专利网。