这里写目录标题

  • 一、UDS介绍
    • 1.1 UDS数据交互简介
    • 1.2 UDS的7种常用服务
  • 二、UDS 26种服务
    • 2.1 $10诊断会话控制
      • 2.1.2 上电后的情况
      • 2.1.3 四种报文类型
    • 2.2 $3E待机握手
    • 2.3 $27安全访问

前言:重点学习ISO 15765-2和ISO 14229-1的协议内容,之后可以将Git上的开源UDS协议栈移植到你熟悉的嵌入式平台上,进行数据收发;或使用CAN盒与支持UDS诊断的设备进行数据收发,对UDS有一个大致的认识。


一、UDS介绍

UDS(Unified Diagnostic Services,统一的诊断服务)诊断协议是ISO 15765 和ISO 14229 定义的一种汽车通用诊断协议。可在不同的汽车总线(例如CAN, LIN, Flexray, Ethernet 和 K-line)上实现。UDS协议的应用层定义是ISO 14229-1

1.1 UDS数据交互简介

  • UDS诊断有6大类(26种),每种都有独立的诊断SID。
  • 肯定响应:回复[SID+0x40],如请求10,响应50;请求22,响应62(SID在首字节)
  • 否定响应:回复7F+SID+NRC(前3字节)

1.2 UDS的7种常用服务

  • $10 Diagnostic Session Control(诊断会话),
  • $14 Clear Diagnostic Information(清除诊断信息),
  • $19 Read DTC Information,
  • $22 Read Data By Identifier(通过ID读数据),
  • $27 Security Access(安全访问),
  • $2E Write Data By Identifier(通过ID写数据),
  • $3E Tester Present(待机握手)。
    (小于0x10的服务是OBD协议中)

二、UDS 26种服务

2.1 $10诊断会话控制

因为权限问题将$10诊断分了三个模式

  • 1)Default默认会话
    默认会话权限最小,可操作的服务少

  • 2) Extended扩展会话
    扩展模式通常用于解锁高权限诊断服务,例如写入数据/参数、读写诊断码

  • 3) Programming编程会话
    编程模式用于解锁bootloader相关的诊断服务,即程序烧录。(不具备扩展模式的某些权限)

2.1.2 上电后的情况

ECU上电时,进入的是默认会话(Default)
如果您进入了一个非默认会话的状态,一个定时器会运转,如果一段时间内没有请求,那么到时间后,诊断退回到默认会话01(最低权限)。当然,我们有一个$3E的服务,可以使诊断保持在非默认的状态

2.1.3 四种报文类型

请求命令有4种构成方式:(和下面的不同,没看明白)

  • SID,
  • SID+SF(Sub-function),
  • SID+DID(Data Identifier)(读写用),
  • SID+SF+DID

NRC:Negative Response Code(否定响应码)。如果ECU拒绝了一个请求,它会回应一个NRC。不同的NRC有不同的含义。

实例:以CAN总线网络举例

  • 八个数据字节,第一字节被网络层占用。

请求(Request):
02 10 02 xx xx xx xx xx

02中的0代表网络层单帧SF,2代表 数据域有2个字节;10是SID,02是子功能。

肯定响应:
02 50 02 xx xx xx xx xx

02同上,10+40表示对SID的肯定回复,02是子功能。

否定响应:
03 7F 10 22 xx xx xx xx;

03同上,7F表示否定响应,10是SID,22是NRC。

2.2 $3E待机握手

实例

02 3E 80 00 00 00 00 00,
发送一个3E服务的报文,保持非默认会话状态。80表示无需回复。

2.3 $27安全访问


未完待续


AUTOSAR--UDS诊断报文相关推荐

  1. uds帧格式_如何看懂UDS诊断报文

    UDS介绍 UDS(Unified Diagnostic Services,统一的诊断服务)诊断协议是ISO 15765 和ISO 14229 定义的一种汽车通用诊断协议,位于OSI模型中的应用层,它 ...

  2. X-Analyser 总线分析软件:CANopen、1939解析、UDS诊断、NMEA2000 协议解析、DBC文件解析、仿真工具、CAN报文分析、仿CANoe曲线显示 CAN仪表模拟器

    X-Analyser 总线分析软件主要用于:CANopen协议解析.J1939解析 J1939地址ISO15765(UDS诊断) .NMEA2000 协议解析.DBC文件解析 DBC仿真工具.CANo ...

  3. UDS诊断全方位解析,AutoSAR技术精要揭秘

    UDS诊断全方位解析,AutoSAR技术精要揭秘 近期整理了一份关于UDS诊断的详尽资料,以及对AutoSAR技术进行了深入探究.本文将为您呈现这份2000字的综合文章,其中也包含相关的源代码示例,希 ...

  4. UDS诊断系列介绍08-19服务

    本文框架 1. 系列介绍 1.1 19服务概述 1.2 DTC故障码定义 1.3 DTC状态位 2. 19服务常用子服务 2.1 19 01服务 2.2 19 02服务 2.3 19 04服务 2.4 ...

  5. UDS诊断看这篇就够了,吐血整理

    传送门 ==>> AutoSAR入门和实战系列总目录 1 简介与概述 不同诊断通信协议的开发,调整,实施和维护会给车辆制造商,系统供应商和ECU供应商带来不必要的成本.为了解决此问题,将不 ...

  6. 五、AUTOSAR架构诊断功能

    AUTOSAR架构诊断功能类似于VxWorks653的HM和OMS功能. AUTOSAR的诊断功能包括两部分: ①在线诊断模式(Onboard Diagnostic System), 易于被用户感知的 ...

  7. 【车载开发系列】UDS诊断---读取DTC信息($0x19)

    [车载开发系列]UDS诊断-读取DTC信息($0x19) UDS诊断---读取DTC信息($0x19) [车载开发系列]UDS诊断---读取DTC信息($0x19) 一.概念定义 1)DTC概念 2) ...

  8. UDS诊断服务—物理寻址,功能寻址区别

    如果我们说UDS诊断服务是实现人或设备与ECU控制器交流的一种语言,那么诊断服务的响应规则就如同是语法,而SID(Service ID)定义就如同词汇.因此了解响应规则和SID的意义就基本能了解与EC ...

  9. 车载网络测试 - UDS诊断篇 - 诊断RID/IOID($2F/$31)

    UDS诊断在之前的文章中已经介绍了诊断报文在各个服务中的格式,以及故障码和DID的一些介绍,为了完整性,今天这篇继续进行补充,来介绍下RID和IOID(即Routine Control和IO cont ...

  10. UDS诊断服务的会话层和寻址方式

    文章目录 1 诊断服务的会话层和寻址方式 传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录 1 诊断服务的会话层和寻址方式 根据14229 uds诊断协议的要求 ...

最新文章

  1. 世界-中国-省-市-县 天气预报
  2. PHP的var_dump(‘1‘==‘1e0‘)的结果为true
  3. 基于Emgu CV+百度人脸识别,实现视频动态 人脸抓取与识别
  4. 对属性可以赋值的位置
  5. 硬核!这所大学包下高铁,接滞留湖北的学生返校!
  6. 不良事件总结怎么写_护理不良事件总结分析.doc
  7. 深度学习2.0-1.tensorflow的基础操作之数据类型
  8. [No0000CE]检测非空格字符作为密码的密码强度
  9. python圣诞树代码_用Python画一棵带音乐的雪夜圣诞树
  10. 人工智能白皮书(2022年) 附下载
  11. java lambda函数_Java中的Lambda函数
  12. Pigsty:开箱即用的数据库发行版
  13. python微信刷票脚本在哪_微信刷票Python脚本教程
  14. 驱动开发:实现字符设备
  15. Python数据分析学习总结——替代Matlab
  16. c语言中文拼音排序,为sqlite增加汉字拼音排序功能
  17. 矩阵与矩阵转置的加法
  18. WordPress BuddyPress 越权RCE漏洞复现(CVE-2021-21389)
  19. 资讯汇总230207
  20. 初识马尔科夫模型(Markov Model)

热门文章

  1. linux网站5秒盾,宝塔面板建站后接入CF自动开启5秒盾证码脚本
  2. 苹果群控的安装和使用
  3. 多图详解WBS任务分解法
  4. 三通道HART / Modbus网关HTM-631
  5. 如何将文档转换为一个链接
  6. 基于JAVA的私人牙科诊所管理系统
  7. Java实现数组排序
  8. 关于APP接口设计 注意事项
  9. 电商扣减库存_什么样的电商产品经理更值钱?先解决这个难题!
  10. 企业如何利用OA系统轻松管理员工请休假