上传/下载功能单元

诊断工具(客户端)可以通过该功能单元的服务写入ECU(服务器)的新固件或读取服务器固件。下表是上传和下载功能单元提供的服务。

Service Request ServiceID Response ServiceID Sub-Function
Request Download 0x34 0x74 No
Request Upload 0x35 0x75 No
Transfer Data 0x36 0x76 No
Transfer exit 0x37 0x77 No

Request Download

Request Download,即请求下载。请求下载服务用于发送下载ECU新软件或其他数据的请求。客户端可以通过该请求发送地址和固件大小,服务器将回复允许传输的数据包大小。

请求下载服务帧格式
0x34_UDSFrame

Request Upload

Request Upload,即请求上传。请求上传服务与请求下载服务相同,诊断工具通过此服务发送请求,从ECU中读取已下载的固件。客户端发送请求时,除了需要指定地址和大小外,还需要告诉服务器发送整个数据包需要花费多长时间。

请求上传服务帧格式除了服务ID不一样,其他与请求下载服务的帧格式一样。

Transfer Data service

Transfer Data service,即传输数据服务。传输数据服务用于将允许大小的数据包传输到服务器。如果数据包传输正常,则服务器应发送一个肯定响应。否则,发送一个否定响应,该过程在整个固件无法正确传输到服务器之前,都会继续进行。

传输数据服务帧格式
0x36_UDSFrame

Transfer exit service

Transfer exit service,即传输退出服务。在此服务下,客户端请求服务器执行传输的软件完整性或发送否定响应以停止数据传输。

传输退出服务帧格式
0x37_UDSFrame

以上就是此功能单元的基本概述。因为应用程序数据因OEM而异,如果你有机会按照OEM给定的规范实施这些服务,你将会对这些概念有更深刻的认识。

回到开篇