1. 概述
36服务就是用来在诊断仪和ECU之间传输数据的,有两个方向:在下载流程中,是诊断仪发送的请求报文中包含数据,在上传流程中,是ECU返回的肯定响应中包含数据。
36服务必须在34或35服务后开始执行。
在传输数据的时候,因为网络层传输能力大小的限值,大多数情况下要传输的数据都不能用一次请求和响应传输完成,要分成多个36服务来传输,我们通常把每个36服务请求或响应中传输的数据叫做一个数据块。
2. 请求报文格式
36服务的请求报文格式如下:
- transferRequestParameterRecord:就是指所要传输的数据,在下载流程中是必须的,在上传流程中不存在。
- blockSequenceCounter:数据块序号,1字节无符号数,第一个36报文的序号是1,之后每次加1,加到255后要从0重新开始。这个数据块可被诊断仪或ECU用来校验当前数据块传输是否成功,能在出错的时候实现