基于UDS协议的CANoe软件刷写流程
Secure_Flash的基本流程
比较完整的过程如下:
[刷写前准备步骤]
1.进入扩展会话模式:10 03
2.编程条件检查:31服务 (有些项目可能没有此步骤)
3.DTC使能关闭:85 02(有些项目可能没有此步骤)
4.通信控制 28 XX XX XX XX(有些项目可能没有此步骤)
[开始刷写]
刷写驱动部分(5-9)
5.进入编程会话模式:10 02
6.请求种子 27 01/03/05/07/09
7.发送key 27 02/04/06/08/0A
8.请求下载 34服务
下载36服务
退出下载37服务
9.完整性检查 31服务
依赖性检查 31服务
刷写appl部分(10-12)
10.擦除内存 31服务
11.请求下载 34服务
下载36服务
退出下载37服务
12.完整性检查 31服务
依赖性检查 31服务
[下载完成后重启]
13.电控单元复位 11服务
27服务
是secure_flash的一种安全机制,首先服务器(就是我们的电脑连接CAN盒子)向DUT(被测件)发送27 01/03/05/07/09(27后面加上1,3,5,7,9等单数,具体多少根据客户规定)来请求种子。DUT收到后会返回67+SUB FUNCTION+种子。我们接收种子后根据客户提供的dll文件或者算法算出key 再通过27 02/04/06/08/0A将key发送给DUT。验证通过后会收到正响应67 +SUB FUNCTION。只有过了27服务才能进行后续的刷写。否则在下一步34服务会收到负反馈。
34,36,37
34服务是请求