跟我学UDS(ISO14229) ———— 0x31(RoutineControl)

  客户端请求启动/停止服务器中的例程或请求例程结果。客户端使用 RoutineControl 服务来控制 RID,RID 由两字节的例程标识符标识。具体的控制类型有以下三种:第一种: 启动 RID;第二种: 停止 RID;第三种: 查询 RID 执行结果。这里对 RID 的三种控制类型做一个详细的介绍:

  1. 启动 RID
    如果对诊断请求的响应是肯定或否定,则表明该请求已被执行或正在进行中,例程将从 StartRoutine 请求消息完成到第一响应消息完成之间的某个时间在服务器的内存中启动。例程可以是运行,也可以是在正常操作代码运行的情况下启用和执行的例程。特别是在第一种情况下,可能有必要在使用 StartRoutine 服务之前,使用DiagnosticSessionControl 服务在特定的诊断会话中切换服务器,或者使用 SecurityAccess 服务解锁服务器。
  2. 停止由例程标识符引用的例程
     在完成 StopRoutine 请求消息和第一次响应消息后,发送该请求,无论响应是肯定或否定,这表明停止例程的请求已经执行或者正在处理,需要服务器例程应在服务器的内存中停止。服务器例程应在服务器内存中编程或事先初始化的任何时间停止。
  3. 查询 RID 执行结果
     客户端使用此子功能来请求在服务器的内存中执行的 RID 生成的结果。基于例程结果,可能已在肯定响应中接收到该结果。 如果消息包含 stopRoutine 子功能参数,则应使用 requestRoutineResults 子功能。 RID 结果的一个示例可能是服务器收集的数据,由于服务器性能的限制,在 RID 执行期间无法传输这些数据。

诊断请求格式

  具体的格式如下:
在这里插入图片描述
当参数 sub-function 的值为 startRoutine 或 stopRoutine 时,参数 routineControlOptionRecord 是可选的参数。

sub-function definition
HexNameDescription
00ISOSAEReservedISO 保留,未定义
01startRoutine启用 RID 例程
02stopRoutine停止 RID 例程
03requestRoutineResults返回 RID 例程结果
04ISOSAEReservedISO 保留,未定义
...
7F

  对于 RID 的定义,ISO14229 同样也做了初步的定义,具体的情况如下表:
routineIdentifier definition
HexNameDescription
0000ISOSAEReservedISO 保留,未定义
...
00FF
0100TachographTestIds行驶记录仪测试结果值
...
01FF
0200vehicleManufacturerSpecific主车厂定义
...
DFFF
E000OBDTestIdsOBD / EOBD 测试结果值
...
E1FF
E200DeployLoopRoutineID启动先前选择的点火回路的部署
E201SafetySystemRoutineIDs供将来定义与安全相关的系统实施
...
E2FF
E300ISOSAEReservedISO 保留,未定义
...
EFFF
F000systemSupplierSpecific供应商定义
...
FEFF
FF00eraseMemory启用擦除内存的 RID
FF01checkProgrammingDependencies检查服务器的内存编程依赖性
FF02eraseMirrorMemoryDTCs擦除服务器镜像内存故障诊断代码
F000ISOSAEReservedISO 保留,未定义
...
FEFF

正响应格式:

  具体的格式如下:
在这里插入图片描述

负响应NRC码

  具体的NRC码如下:
在这里插入图片描述

  • 9
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小趴菜_自动驾驶搬砖人

谢谢大爷赏饭吃

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值