定义介绍:

UDS(Unified Diagnostic Service)诊断的诊断服务。诊断协议是面向整车所有ECU(电控单元)的一种诊断通信协议,是诊断服务的规范化标准。

UDS本质上是一系列服务的集合,UDS的服务包含了6大类,共26种,每种服务都有自己独立的ID,即SID(Service Identifier)

通信模式:

实际上是与ECU交互的过程,即诊断仪请求(Request)ECU,ECU给出对应响应(Response)。

UDS寻址模式:

1.物理寻址,点对点,一对一,可根据物理地址的不同进行访问,但只能访问单个节点。

2.功能寻址,广播模式,一对多,根据功能的不同进行访问,它可以访问多个ECU节点,其SID对于标准帧来说,通常是7DF。

UDS的服务:

罗列出常用的15种服务,支持子功能的有10、11、27、28、3E、85、19、31,子功能通常是这些服务具有某些已经定义好的功能。

1.$10

10服务是Diagnostic Session Control诊断会话控制,子功能有01、02、03三种,这三种代表10服务可以进入的3种不同的会话模式。

01 Default默认会话,02 Programming编程会话(用于解锁bootloader相关的诊断服务,即程序烧录。),03 Extended扩展会话,ECU上电时,进入的是默认会话(Default)。

指令格式:

请求:10 SF

          SF:子功能,比如01、02、03,编程会话只能通过先进扩展会话之后再进编程会话,当前为编程会话,不能直接发10 03跳转到扩展会话。

 

肯定相应:50 SF  sessionParameterRecord[](4byte)

                 0x40+SID=0x50

                 SF是对应请求的子功能,请求是什么子功能,他便显示什么子功能。

                  会话参数记录有P2Server_max(2byte)和P2*Server_max(2byte),高位在前的表示方式。

                  P2Server_max:指的是ECU在收到请求和给出响应之间的这个时间间隔,他描述了ECU的反应速度。

                   P2*Server_max:在ECU给出NRC 78(等待)之后生效,所以会需要更长的反应时间。

否定相应:7F SID NRC(否定相应码)

                 否定相应格式一定,SID对应请求的SID,NRC为Negative Response Code,即会有一些类似于一个指令格式或数据是否正确的判断,在发送不是一个正常指令时,ECU就会给你这个NRC,相当于一个提示,可以通过不同的NRC判断指令的错误原因。比如常见的7E表示SF在此会话不支持(在编程会话发10 03即会出现)、12表示SF不支持(发10 FF这种不支持的SF)、13表示发出的此SID格式长度不符合标准定义的SID的格式(10服务定义的两个byte,发10 01 01,即会得到此NRC)。

以下服务,下期再解析。

2.$11

11服务是ECU Reset复位

3.$27

27服务是Security Access安全访问

4.$28

28服务是Communication Control通讯控制

5.$85

85服务是Control DTC Setting控制DTC设置

6.$22

22服务是Read Data By Identifier读DID

7.$2E

2E服务与22服务相对,是Write Data By  Identifier写DID

8.$14

14服务是Clear Diagnostic Information清诊断信息

9.$19

19服务是Read DTC Information 读取故障码信息

10.$2F

2F服务是Input Output Control By Identifier通过ID控制输入输出

11.$31

31服务是Routine Control例程控制

12.$34

34服务是Request Download请求下载

13.$36

36服务是Transfer Data数据传输

14.$37

37服务是Request Transer Exit请求推出传输

15.$3E

3E服务是Tester Present待机握手

UDS诊断学习笔记的更多相关文章

  1. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  2. Log4j简单学习笔记

    log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...

  3. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  4. Redis学习笔记之ABC

    Redis学习笔记之ABC Redis命令速查 官方帮助文档 中文版本1 中文版本2(反应速度比较慢) 基本操作 字符串操作 set key value get key 哈希 HMSET user:1 ...

  5. TCP/IP协议学习笔记

    计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...

  6. Dynamic CRM 2013学习笔记(二)插件基本用法及调试

      插件是可与 Microsoft Dynamics CRM 2013 和 Microsoft Dynamics CRM Online 集成的自定义业务逻辑(代码),用于修改或增加平台的标准行为.也可 ...

  7. ETHREAD APC 《寒江独钓》内核学习笔记(4)

    继续学习windows 中和线程有关系的数据结构: ETHREAD.KTHREAD.TEB 1. 相关阅读材料 <windows 内核原理与实现> --- 潘爱民 2. 数据结构分析 我们 ...

  8. <老友记>学习笔记

    这是六个人的故事,从不服输而又有强烈控制欲的monica,未经世事的千金大小姐rachel,正直又专情的ross,幽默风趣的chandle,古怪迷人的phoebe,花心天真的joey——六个好友之间的 ...

  9. Oracle RAC学习笔记:基本概念及入门

    Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章]    oracle 10g real applica ...

随机推荐

  1. 快速改变文件hash值的方法

    查看哈希值命令 Linux : md5sum + 文件名 $ md5sum .png fe5c3f5ef1d207bc1b646911b463c907 .png Windows : certutil ...

  2. .NET HttpWebRequest应用

    提供基于HttpWebRequest的请求的应用类,其中包含:get请求(带参或不带参).post请求.文件传输请求 方法的具体说明: PostHttp:post请求,支持三种提交模式:FROM.JS ...

  3. Zabbix 3.0 配置企业微信报警(配置zabbix-web)

    一.添加报警媒体类型 Name:自定义 Type:选择script Scripts name:填写脚本名称 Script parameters:脚本参数 --corpid=XXX --corpsecr ...

  4. javascript中的this绑定问题

    this的绑定规则 1 默认绑定: function foo(){ console.log(this.a); } var a = 2 ; foo(); 调用 foo() 的时候其实相当于 window ...

  5. 1.3 LVM条带化

    1.什么是条带化 磁盘冲突:当多个进程同时访问一个磁盘时,可能会出现磁盘冲突.磁盘系统对访问次数(每秒的IOPS)和数据传输速率(读写速率,TPS)有限制.当达到这些限制时,后面需要访问磁盘的进程就需 ...

  6. oracle全库查找是否有某个值

    在scott用户下面,搜索含有'要找的值'的数据的表和字段穷举法: declare v_Sql ); v_count number; begin for xx in (select t.OWNER, ...

  7. static示例

    求生成对象的个数 class A{ private int i; private static int cnt = 0; //此处用static修饰,让cnt属于类,多个对象共用一个属性,减少内存分配 ...

  8. Spring security oauth2 password flow

    Spring security oauth2 包含以下两个endpoint来实现Authorization Server: AuthorizationEndpoint: 授权请求访问端点, 默认url ...

  9. 【EBS】取数SQL-平均成本更新的物料事务处理追溯到应付发票

    SELECT hou.name,--组织 aia.invoice_num,--发票编号 msib.segment1,--物料编码 mmt.transaction_id--物料事务处理 FROM mtl ...

  10. 【题解】Luogu P5324 [BJOI2019]删数

    原题传送门 易知这个数列的顺序是不用考虑的 我们看两个数列 \(1,2,3\)和\(3,3,3\)都能删完,再看两个数列\(1,2,3,4\)和\(2,2,4,4\),也都能删完 不难发现,我们珂以把 ...