UDS(七)应用层 28/85

1. CommunicationControl (0x28) service
该服务是控制某类通讯关闭/开启接收或者发送。当uds需要下载升级或者传输大量数据时需要将can总线资源让出来,提高传输效率。这时候可以通过28服务关闭某类的通讯发送报文到can总线上,待下载升级或传输数据完成后再通过28服务将通讯开启即可。

1.1 请求格式:
在这里插入图片描述
由上图可以28服务请求格式分为四个部分

第一部分:第一字节为SID 0x28

第二部分:第二字节为sub function,控制该类通讯的接收和发送是开启还是关闭
0x00 enableRxAndTx (使能接收和发送)
0x01 enableRxAndDisableTx(使能接收和关闭发送)
0x02 disableRxAndEnableTx(使能发送和关闭接收)
0x03 disableRxAndTx(关闭接收和发送)
0x04 enableRxAndDisableTxWithEnhancedAddressInformation(使能接收和关闭发送,针对特定的地址)
0x05 enableRxAndTxWithEnhancedAddressInformation(使能接收和发送,针对特定的地址)
0x06 - 0x7F都是保留或者留给厂商自定义的。

第三部分:communicationType:控制哪种类型通讯
在这里插入图片描述
由上图可知communicationType占一个字节,本人只使用0-2bit的参数。0x1代表普通应用报文,0x2代表网络管理报文,0x3代表普通应用报文和网络管理报文。

1.2 响应格式:

在这里插入图片描述
由上图可知,响应格式分为两个部分:第一部分:response SID ,第二部分:sub function。两个部分各自占用一个字节。

1.3 举例

诊断仪请求ECU关闭普通应用报文的接收和发送,即sub function:0x03,communication Type:0x01。发送请求和响应如下图所示:
在这里插入图片描述

2. ControlDTCSetting (0x85) service

该服务用于控制ECU的DTC存储,这个服务常常和前面提到的28服务一起使用,比如,在开始写参数之前,为了获得更快的传输速度,我们用28服务把所有ECU的通信关闭了,但此时因为收到不到相关的报文,ECU会没有必要地存储很多DTC,这时如果我们使用85服务把ECU存储DTC的功能暂时性地禁止掉,则不会造成这种麻烦。比如:ECU会检测can总线报文情况,当使用28服务关闭接收和发送报文时,can总线没有了报文,ECU会存储CAN总线错误的DTC,所以有时候会在使用28服务之前使用85服务关闭响应DTC存储功能。

2.1 请求格式:
在这里插入图片描述
请求格式分为三个部分;

第一部分:请求SID 0x85

第二部分:sub function,占用一个字节,参数如下
0x00 : ISOSAEReserved(保留)
0x01 : on (DTC 开启)
0x02 : off (DTC 关闭)
0x03-0x7F :保留或者厂家自定义

第三部分:DTCSettingControlOptionRecord 厂家自定义,比如,可以用FF FF FF 来表示这条诊断命令针对所有的DTC。

2.2 响应格式

在这里插入图片描述
响应格式分为两个部分,第一部分:response SID :0xC5; 第二部分:DTCSettingType:请求 sub function的echo。

2.3 举例
诊断仪请求ECU关闭所有DTC存储,厂家自定义请求参数DTCSettingControlOptionRecord= 0xFFFFFF为所有DTC存储控制码。请求与响应如下图所示:
在这里插入图片描述

参考知乎:https://zhuanlan.zhihu.com/p/33852614

UDS协议栈系列文章:

UDS(一)入门概述

UDS(二)网络层

UDS(三)网络层时间参数

UDS(四)应用层

UDS(五)应用层10/3E

UDS(六)应用层11/27

UDS(七)应用层28/85

UDS(八)应用层22/2E

UDS(九)应用层14/19

UDS(十)应用层34/36/37

  • 7
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值