专栏中心

EEPW首页 > 专栏 > 详解UDS CAN诊断:DiagnosticSessionControl Service(SID:0X10)

详解UDS CAN诊断:DiagnosticSessionControl Service(SID:0X10)

发布人:美男子玩编程 时间:2022-11-30 来源:工程师 发布文章

诊断和通信管理功能单元(Diagnostic and communication management functional unit)包含10种服务,本篇博文将详细讲解DiagnosticSessionControl Service(SID:0X10)的特性和协议。


图片

本篇博文素材来源于:ISO 14229-1-2020:规范和要求。


在学习本篇博文之前推荐学习:
详解UDS CAN诊断:什么是UDS(ISO 14229)诊断?


DiagnosticSessionControl Service用于在服务器中启用不同的诊断会话。


诊断会话有两种:Default Session和Any Other Session,它们之间可以互相转换,如下所示:


图片图片

不同服务在Default Session和Any Other Session中的权限不同,某些服务并不支持在Default Session中运行,所有服务都可以在Any Other Session中运行,如下图(not applicable代表不支持服务,x代代表支持服务)所示:

图片

1


诊断请求

诊断请求分为具有子功能的请求和没有子功能的请求两种。


首先来看看具有子功能的请求协议,如下所示:


图片

我们只需要关注A_Data.A_PCI.SI和A_Data.Parameter 1~k数据,其他参数数值取决于客户的实际应用。


具有子功能的请求A_Data.Parameter 1字节存储的就是子功能数据。


没有子功能的请求协议,如下所示:


图片

A_Data.Parameter 1字节不再规定。


接着来看一看协议中对A_Data.A_PCI.SI和A_Data.Parameter 1~k数据的规定和使用。


启用不同的诊断会话需要客户端发送请求协议:0X10 0X**(A_Data.A_PCI.SI和A_Data.Parameter 1~k数据)。


图片

其中:

  • 0X10是服务ID(SID),1字节;

  • 0X**是服务的子功能,范围为:0X00~0XFF,1字节。


在ISO 14229-1-2020协议中规定了各类数值子功能的意义和使用场景,如下所示:


图片图片

2


诊断响应

诊断响应有肯定响应和否定响应两种类型。


2.1、肯定响应

肯定响应协议中也只需要关注A_Data.A_PCI.SI和A_Data.Parameter 1~k数据,如下所示:


图片

肯定响应表示服务端回复客户端请求成功,响应协议:0X50 0X** 0X&&(A_Data.A_PCI.SI和A_Data.Parameter 1~k数据)。


图片

其中:

  • 0X50是响应服务的SID,相当于0X10+0X40,1字节;

  • 0X**是响应服务的子功能,范围为:0X00~0XFF,1字节。例如,客户端使用0X01子服务,此时肯定响应的子服务就是0X01;

  • 0X&&记录了包含服务器报告的特定会话参数值,范围为:0X00~0XFF,4字节,协议规定如下所示:


图片

2.2、否定响应

否定响应表示客户端或者服务端存在问题,否定响应会提示失败原因。


否定响应协议中只需要关注A_Data.A_PCI.NR_SI、A_Data.A_PCI. SI和A_Data.Parameter 1数据,如下所示:


图片

响应协议:0X7F 0X** 0X&&(A_Data.A_PCI.NR_SI、A_Data.A_PCI. SI和A_Data.Parameter 1数据)。


其中:

  • 0X7F是否定响应固定数值,1字节;

  • 0X**是诊断服务ID(SID),本篇博文使用的是0X10服务,则否定响应会返回0X10,1字节;

  • 0X&&是NRC错误码,描述了返回错误的原因,1字节。


DiagnosticSessionControl Service(SID:0X10)有3种类型错误,如下所示:


图片


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: CAN

相关推荐

CAN 教程

CAN入门书

车载以太网 10BASE-T1S 迎来升级,太比特级传输速率已提上日程

PHILIPS_CAN_控制器SJA1000的BasicCAN控制模块

Microchip推出集成式紧凑型CAN FD系统基础芯片解决方案,专为空间受限应用而设计

低速串行总线调试-CAN译码

视频 2010-01-13

FullCAN函数库V1.0

资源下载 2008-01-16

dsPIC33EV 5V CAN-LIN入门工具包

使用 3.3V CAN 收发器在工业系统中实现可靠的数据传输

模拟技术 2025-01-08

如何配置控制器局域网络(CAN)位时序实现系统性能优化?

汽车电子 2024-11-21

集成隔离式 CAN 收发器 - ISO1050

视频 2010-03-18

国内首颗:纳芯微CAN FD收发器NCA1044-Q1通过丰田VeLIO认证

ISO 16845标准详解

汽车电子 2025-03-27

一文读懂|CAN总线为何要加终端电阻

2024-04-18

高工作电压5.7 kV rms隔离式CAN FD收发器

视频 2020-12-21

CAN简介与Atmel Start上CAN驱动开发培训教程

驱动汽车电子创新:RIGOL CAN-FD总线分析解决方案

测试测量 2025-05-23

南芯科技推出车规级高速CAN/CAN FD协议收发器

CAN资料

ESIE 2026:MPS发布储能BMS全栈芯片方案 以技术创新破解产业核心痛点

更多 培训课堂
更多 焦点
更多 视频

技术专区