0x34(RequestDownload)请求下载
0x34(RequestDownload)服务通常和0x36(TransferData)、0x37(RequestTransferExit)服务一起使用。
举例如下:
tester 发送:
0x34 0x00 0x44 0x80 01 C0 00 0x00 01 C0 00
Data FormatIdentifer00: Neither compress Method nor encrypting Method is used
AddressAndLengthFormatIdentifer44: memory size is 4, memory address is 4.
Memory Address 80 01 C0 00: the start address of Memory where data is to be written to.
Memory Size 00 01 C0 00: the total amount of data transferred during the 0x36 Services is 0x01 C0 00, 112KB
举例如下:
tester 发送:
0x34 0x00 0x44 0x80 01 C0 00 0x00 01 C0 00
ECU响应:
0x74 0x20 0x0FFF (Positive response starting with 0x34+ 0x40 = 0x74, the length of maxNumberOfBlockLength is 0x2 Byte, maxNumberOfBlockLength is 0FFF, 3KB, the amount of data block transferred by each 0x36 Service.)
0x36(TransferData)数据传输
需要注意的是,第一个0x34请求对应的0x36服务的BlockSequenceCounter参数值从 0x01开始,后续每个0x36服务该参数依次+1. 当累计值达到0xFF后,该参数从0x00开始下一轮传输。
举例如下:
tester发送:
0x36 0x00 (TransferData request 0x36, blockSequenceCounter is 0x00)
ECU响应:
0x76 0x00 (Positive response starting with 0x36+ 0x40 = 0x76)
0x37(RequestTransferExit)退出数据传输
举例如下:
tester发送:
0x37 (RequestTransferExit)
ECU响应:
0x77 (Positive response starting with 0x37+ 0x40 = 0x77)