【ISO14229_UDS_0x28服务详解】

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

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

2、请求消息格式

请求消息的格式定义:

字节序号参数值约定字节值
#1CommunicationControl Request SIDM0x28
#2sub-function = [ controlType ]M0x00-0xFF
#3communicationTypeM0x00-0xFF
#4nodeIdentificationNumber (high byte)C0x00-0xFF
#5nodeIdentificationNumber (low byte)C0x00-0xFF

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

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

Bits 6-0描述约定
0x00enableRxAndTx
使能报文发送和接收
U
0x01enableRxAndDisableTx
使能报文接收,抑制发送
U
0x02disableRxAndEnableTx
抑制接收,使能发送
U
0x03disableRxAndTx
抑制接收和发送
U
0x04enableRxAndDisableTxWithEnhancedAddressInformation
节点切换到诊断模式,使能接收,抑制发送
U
0x05enableRxAndTxWithEnhancedAddressInformation
节点切换到应用模式,使能报文接收和发送
U
0x06 - 0x3FISOSAEReserved
ISO保留
U
0x40 - 0x5FvehicleManufacturerSpecific
汽车制造厂商使用
U
0x60 - 0x7EenableRxAndTx
供应商使用
U
0x7FenableRxAndTx
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、肯定应答消息

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

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

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

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

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

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

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

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

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

字节顺序Description字节值
#1CommunicationControl Request SID0x28
#2controlType = enableRxAndDisableTx,
      suppressPosRspMsgIndicationBit = FALSE
0x01
#3communicationType = network management0x02

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

字节顺序Description字节值
#1CommunicationControl Request SID0x68
#2controlType0x01

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

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

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

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

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

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

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

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

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

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

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值