1、0x28服务(通讯控制服务)

  0x28服务的目的就是开启和关闭ECU中某些消息的传输和接收(例如,应用程序通讯消息)。

2、请求消息格式

请求消息的格式定义:

字节序号 参数值 约定 字节值
#1 CommunicationControl Request SID M 0x28
#2 sub-function = [ controlType ] M 0x00-0xFF
#3 communicationType M 0x00-0xFF
#4 nodeIdentificationNumber (high byte) C 0x00-0xFF
#5 nodeIdentificationNumber (low byte) C 0x00-0xFF

  C表示子函数参数—控制类型[controlType]为0x04或者0x05时,nodeIdentificationNumber才有效。

请求消息中子函数参数定义说明:
  子函数参数—controlType 包含了ECU如何修改通讯类型的信息,其具体的定义详见下表:

Bits 6-0 描述 约定
0x00 enableRxAndTx
使能报文发送和接收
U
0x01 enableRxAndDisableTx
使能报文接收,抑制发送
U
0x02 disableRxAndEnableTx
抑制接收,使能发送
U
0x03 disableRxAndTx
抑制接收和发送
U
0x04 enableRxAndDisableTxWithEnhancedAddressInformation
节点切换到诊断模式,使能接收,抑制发送
U
0x05 enableRxAndTxWithEnhancedAddressInformation
节点切换到应用模式,使能报文接收和发送
U
0x06 - 0x3F ISOSAEReserved
ISO保留
U
0x40 - 0x5F vehicleManufacturerSpecific
汽车制造厂商使用
U
0x60 - 0x7E enableRxAndTx
供应商使用
U
0x7F enableRxAndTx
ISO保留
U

请求消息中数据参数定义说明:
请求消息中数据参数的定义说明详见下表:

定义
communicationType
该参数表示被控制的通讯类型,是一个位编码型参数,其允许多种控制通讯类型参数。
Bit 0-1,0x01:正常应用报文;0x02:网络管理报文;0x03:应用与网络管理报文;
Bits 4-7,0x0:使能或抑制DCM控制的comM通道;0x1-0xE:使能或抑制子网中控制的comM通道;0xF:仅控制接收该请求的comM通道;
nodeIdentificationNumber
该参数是一个2字节参数,用于识别车辆中子网中节点,不能使用OSI中1-6层的寻址方法进行寻址。只有当子函数参数为0x04或者0x05时,这个参数才有效。

3、肯定应答消息

肯定应答消息格式定义如下:

字节序号 参数名称 约定 字节值
#1 CommunicationControl Response SID M 0x68
#2 sub-function = [ controlType ] M 0x00 - 0x7F

肯定应答消息数据参数定义:

Definition
controlType
请求消息子函数参数中的 bits 6 - 0

4、支持的否定应答码(NRC_)

  对于0x28服务,实施了如下否定应答码。哪些情况会产生哪些否定应答码具体如下表所示。当服务端在错误场景下使用该服务,以下否定应答码应该被使用。

NRC 描述
0x12 sub-functionNotSupported
子函数参数不被支持时,会发送该NRC
0x13 incorrectMessageLengthOrInvalidFormat
消息长度不正确或格式无效时,会发送该NRC
0x22 conditionsNotCorrect
当ECU激活了正常的通讯模式,无法使能或抑制请求的通讯类型,会发送该NRC
0x31 requestOutOfRange
当在communicationType或者nodeIdentificationNumber参数中,检测到错误时,则会发送该NRC

5、0x28服务(通讯控制服务)案例(抑制网络管理报文发送)使用说明

  客户端通过设置suppressPosRspMsgIndicationBit(子函数参数中的Bit7)为“FALSE”(“0”),来请求应答报文,即不抑制正响应报文消息;
  通讯控制服务请求报文使用案例如下,由客户端发向服务端(ECU):

字节顺序 Description 字节值
#1 CommunicationControl Request SID 0x28
#2 controlType = enableRxAndDisableTx,
      suppressPosRspMsgIndicationBit = FALSE
0x01
#3 communicationType = network management 0x02

  通讯控制服务肯定应答报文见下表,由服务端(ECU)发往客户端:

字节顺序 Description 字节值
#1 CommunicationControl Request SID 0x68
#2 controlType 0x01

6、0x28服务(通讯控制服务)案例(控制远程网络地址节点仅进入诊断模式)使用说明

  通讯控制服务请求报文使用案例如下,控制的远程网络节点地址为0x00AA,由客户端发向服务端(ECU):

字节顺序 Description 字节值
#1 CommunicationControl Request SID 0x28
#2 controlType =
      enableRxAndDisableTxWithEnhancedAddressInformation,
      suppressPosRspMsgIndicationBit = FALSE
0x04
#3 communicationType = normal messages 0x01
#4 nodeIdentificationNumber (high byte) 0x00
#5 nodeIdentificationNumber (low byte) 0x0A

  通讯控制服务肯定应答报文见下表,由服务端(ECU)发往客户端:

字节顺序 Description 字节值
#1 CommunicationControl Request SID 0x68
#2 controlType =
      enableRxAndDisableTxWithEnhancedAddressInformation,
      suppressPosRspMsgIndicationBit = FALSE
0x04

7、0x28服务(通讯控制服务)案例(控制子网节点进入应用模式)使用说明

  通讯控制服务请求报文使用案例如下,控制的子网节点地址为0x00AA,进入应用模式,报文由客户端发向服务端(ECU):

字节顺序 Description 字节值
#1 CommunicationControl Request SID 0x28
#2 controlType =
      enableRxAndTxWithEnhancedAddressInformation,
      suppressPosRspMsgIndicationBit = FALSE
0x05
#3 communicationType = normal messages 0x01
#4 nodeIdentificationNumber (high byte) 0x00
#5 nodeIdentificationNumber (low byte) 0x0A

  通讯控制服务肯定应答报文见下表,由服务端(ECU)发往客户端:

字节顺序 Description 字节值
#1 CommunicationControl Request SID 0x68
#2 controlType =
      enableRxAndTxWithEnhancedAddressInformation,
      suppressPosRspMsgIndicationBit = FALSE
0x05

返回UDS诊断服务功能单元介绍目录

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐