UDS中31服务的请求和响应的问题

请教一下各位大佬以下问题

31服务

ECU对特定的DID赋予了某些操作,这些操作是ECU去执行的。怎么去让ECU去执行这些操作呢,这个时候就需要用31服务去打开DID这个按钮。31服务可以对DID进行三种控制操作,01开启,02停止,03请求结果。只要31服务使用01/02/03三个子服务中任意一个去控制某个特定的DID,ECU就要根据这个DID的内容去执行相应的操作。

问题:

  1. 31子功的请求顺序 :使用31服务时,发送31 01,31 02,31 03 有顺序吗?必须为 31 01, 31 03, 31 02吗?

  2. 个人认为:不一定是这样的顺序,开启例程后可以发送请求例程结果(31 01 —> 31 03),开启例程后,关闭例程再请求例程结果也是可以的,因为此时请求的是关闭例程的结果,14229里面并没有对31 03做限制只对31 01有效(31 01 —> 31 02 —> 31 03)。

  3. 31 01请求后的响应数据内容: 71 01 Z1 Z2后面跟的一个byte数据有的为10 ,有的为 20 , 21,30…为什么会有不同的值呢?DID后面不应该跟响应的routinestatusrecord吗,为什么会有一些特定的值出出现呢?(内容来源于某个项目测试流程)
    图1

  • 2
    点赞
  • 1
    评论
  • 10
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值