UDS 诊断 - RequestDownload(请求下载)(0x34)服务

UDS 诊断服务系列文章目录

诊断和通信管理功能单元
UDS 诊断 - DiagnosticSessionControl(诊断会话控制)(0x10)服务
UDS 诊断 - ECUReset(ECU重置)(0x11)服务
UDS 诊断 - SecurityAccess(安全访问)(0x27)服务
UDS 诊断 - CommunicationControl(通信控制)(0x28)服务
UDS 诊断 - TesterPresent(测试仪保活)(0x3E)服务
UDS 诊断 - AccessTimingParameter(访问计时参数)(0x83)服务
UDS 诊断 - SecuredDataTransmission(受保护的数据传输)(0x84)服务
UDS 诊断 - ControlDTCSetting(控制DTC设置)(0x85)服务
UDS 诊断 - ResponseOnEvent(基于事件响应)(0x86)服务
UDS 诊断 - LinkControl(链路控制)(0x87)服务
数据传输功能单元
UDS 诊断 - ReadDataByIdentifier(按标识符读取数据)(0x22)服务
UDS 诊断 - ReadMemoryByAddress(按地址读取内存)(0x23)服务
UDS 诊断 - ReadScalingDataByIdentifier(按标识符读取换算数据)(0x24)服务
UDS 诊断 - ReadDataByPeriodicIdentifier(按周期性标识符读取数据)(0x2A)服务
UDS 诊断 - DynamicallyDefineDataIdentifier(动态定义数据标识符)(0x2C)服务
UDS 诊断 - WriteDataByIdentifier(按标识符写数据)(0x2E)服务
UDS 诊断 - WriteMemoryByAddress(按地址写内存)(0x3D)服务
存储数据传输功能单元
UDS 诊断 - ClearDiagnosticInformation(清除诊断信息)(0x14)服务
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(1) - 服务说明
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(2) - 请求消息
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(3) - 响应消息
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(4) - 示例
输入输出控制功能单元
UDS 诊断 - InputOutputControlByIdentifier(按标识符的输入输出控制)(0x2F)服务
例程功能单元
UDS 诊断 - RoutineControl(例程控制)(0x31)服务
上传下载功能单元
UDS 诊断 - RequestDownload(请求下载)(0x34)服务

本文可能涉及的文章
addressAndLengthFormatIdentifier(地址和长度格式标识符)示例值


一、 服务说明

客户端利用 requestDownload (请求下载)服务启动客户端到服务器之间的数据传输(下载)。

服务器收到 requestDownload(请求下载)请求消息后,应在其发送肯定响应消息之前采取必要行动接收数据。

二、请求消息

1. 请求消息定义

字节参数名称Cvt字节值
#1RequestDownload (请求下载) 请求 SIDM0x34
#2dataFormatIdentifier(数据格式标识符)M0x00 - 0xFF
#3addressAndLengthFormatIdentifier(地址和长度格式标识符)M0x00 - 0xFF

#4

#(m-1)+4
memoryAddress[] = [
byte#1(MSB)

byte#m ]

M

C1

0x00 - 0xFF

0x00 - 0xFF

#n-(k-1)

#n
memorySize[] = [
byte#1(MSB)

byte#m ]

M

C2

0x00 - 0xFF

0x00 - 0xFF

C1:此参数的存在性取决于 addressAndLengthFormatIdentifier 的地址长度信息参数。

C2:此参数的存在性取决于 addressAndLengthFormatIdentifier 的内存大小长度信息。

2. 请求消息数据参数定义

定义
dataFormatIdentifier(数据格式标识符)
此数据参数是一个单字节值,每半字节均单独编码。高效半字节指定 “compressionMethod(压缩方法)”,低效半字节指定 “encryptingMethod(加密法)“。字节值 0x00 不得使用压缩法或加密法。0x00 以外的字节值由车辆制造商规定。
addressAndLengthFormatIdentifier(地址和长度格式标识符)
此参数是一个单字节值,每个半字节均单独编码:
- 第 7 至 4 位:memorySize(内存大小)参数的长度(字节数)
- 第 3 至 0 位:memoryAddress(内存地址)参数的长度(字节数)
memoryAddress(内存地址)
参数 memoryAddress 是数据被写入服务器内存的起始地址。该地址所用的字节数由 addressAndLengthFormatIdentifier 的低效半字节(第 3 至 0 位)确定。memoryAddress 参数的第 m 个字节始终为服务器中当前所引用的地址的最低有效字节。地址的最高有效字节可以用作内存标识符。
内存表示符的使用示例可为一个带 16 位寻址和内存地址重叠的双处理器服务器(给定地址适用于处理器但得出不同的物理内存设备或使用内部和外部闪存的情况下)。在该情况下,可将 memoryAddress 参数中另外未使用的字节指定为用于选择期望内存设备的内存标识符。此功能的使用应由车辆制造商/系统供应商确定。
memorySize
服务器应利用此参数对比内存大小与执行 TransferData(传输数据)服务期间传输的数据总量。这增加了编程安全性。该内存大小所用的字节数由 addressAndLengthFormatIdentifier 的高效半字节(第 7 至 4 位)确定。如果数据压缩,则由车辆制造商规定内存大小是否支持压缩或未压缩大小。

三、肯定响应消息

1. 肯定响应消息定义

字节参数名称Cvt字节值
#1RequestDownload (请求下载)响应SIDM0x74
#2lengthFormatIdentifier(长度格式标识符)M0x00 - 0xF0

#3

#n
maxNumberOfBlockLength[] = [
byte#1(MSB)

byte#m ]

M

M

0x00 - 0xFF

0x00 - 0xFF

2. 肯定响应消息数据参数的定义

定义
lengthFormatIdentifer(长度格式标识符)
此数据参数是一个单字节值,每个半字节均单独编码:
- 第 7 至 4 位:maxNumberOfBlockLength(最大信息组长度)参数的长度(字节数)
- 第 3 至 0 位:文件保留,设置为 “0“
除了低效半字节须设置为 “0”,此参数的格式与请求消息中的 addressAndLengthFormatIdentifier 参数的格式兼容。
maxNumberOfBlockLength(最大信息组长度)
RequestDownload(请求下载)肯定响应消息利用此参数通知客户端其发出的 TransferData(传输数据)请求消息中应包含多少数据字节(maxNumberOfBlockLength(最大信息组长度))。此长度反应了完整的消息长度,包括 TransferData 请求消息中出现的服务表示符和数据参数。该参数允许客户端在开始向服务器传输数据之前适应服务器的接收缓冲大小。服务器接收的 TransferData 请求长度须与其报告的 maxNumberOfBlockLength 长度相等。TransferData 请求长度与 maxNumberOfBlockLength 间的允许公差(如有)可以视特定服务器而定。注意指定信息组内的最后一个 TransferData 请求可能要比 maxNumberOfBlockLength 短。服务器不得写入 TransferData 消息(压缩格式或未压缩格式)中未存储的其他数据字节(如填充字节),因为这会对写入后续 transferData 请求数据的内存地址造成影响。

四、受支持的 NRC

NRC说明
0x13消息不正确或格式无效
0x22条件不正确
如果服务器在接受软件或校准模块下载的同事接收到此项服务请求,则此 NRC 会被退回。这种情况的发生可能是由于模块下载过程中服务器与客户端之间的数据大小不匹配导致。
0x31请求超过限值
下述情况下,应返回此 NRC:
- 特定 dataFormatIdentifier 无效。
- 特定 addressAndLengthFormatIdentifier 无效。
- 特定 memoryAddress / memorySize 无效。
0x33安全访问被拒绝
如果接收到此项服务请求时服务器比较安全(针对支持 SecurityAccess(安全访问)服务的服务器),则此 NRC 会被退回。
0x70不接收上传下载
该 NRC 表示由于某些故障条件无法下载到服务器内存。

下图为 0x34 服务的 NRC 处理。

0x34 服务的 NRC 处理

图例
1 最小为 5(SI + dataFormatIdentifier + addressAndLengthFormatIdentifier + 最小 memoryAddress + 最小 memorySize)
2 长度可以通过 addressAndLengthFormatIdentifier 计算

  • 14
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值