主权项 |
一种重编程方法,其特征在于,包括:向所有目标电子控制单元发送连接Connect命令,所述Connect命令携带有与各目标电子控制单元对应的逻辑地址;接收各在线的目标电子控制单元反馈的连接肯定响应,与各在线的目标电子控制单元建立连接,所述连接肯定响应由各在线的目标电子控制单元确定当前需要重编程后生成;依次对每一个在线的目标电子控制单元中的应用程序进行重编程,重编程过程具体包括:向所述目标电子控制单元发送包含刷写功能请求掩码的请求种子GetSeed命令;接收所述目标电子控制单元通过响应报文反馈的种子,所述响应报文由所述目标电子控制单元判定刷写功能符合安全访问要求后生成;利用安全访问算法计算所述种子对应的密钥;将所述密钥通过密钥解锁Unlock命令发送给所述目标电子控制单元;接收所述目标电子控制单元发送的密钥正确肯定响应和功能状态掩码,所述密钥正确肯定响应由所述目标电子控制单元在判定所述密钥符合预设要求后生成,所述功能状态掩码表征所述目标电子控制单元已将当前的刷写功能状态转变为解锁状态;向所述目标电子控制单元发送指针放置SetMta命令和擦除ClearMemory命令,使所述目标电子控制单元从控制器局域网络CAN标定协议中MTA指针指向的应用程序擦除的首地址开始,擦除与所述ClearMemory命令相同的数据长度;接收所述目标电子控制单元发送的擦除肯定响应,所述擦除肯定响应由所述目标电子控制单元在判定利用所述首地址和所述数据长度得到的擦除长度没有超过所述应用程序地址长度范围后发送;向所述目标电子控制单元发送SetMta命令和Program/Program_6命令,使所述MTA指针指向所述应用程序编程的首地址,对所述应用程序进行编程;利用校验算法计算编程数据的第一校验和;获取所述目标电子控制单元发送的第二校验和,所述第二校验和由所述目标电子控制单元在重编程完成后对编程数据利用校验算法计算得到;判断所述第一校验和与所述第二校验和是否相等;若所述第一校验和与所述第二校验和相等,则向所述目标电子控制单元发送校验和通过的提示信息。 |