UDS (Unified Diagnostic Services)汽车诊断标准协议

news2025/1/22 9:07:43

作者博客主页
作者 : Eterlove
一笔一画,记录我的学习生活!站在巨人的肩上Standing on Shoulders of Giants!
该文章为原创,转载请注明出处和作者

参考文献:
《道路车辆统一诊断服务(UDS) Road vehicles - Unified diagnostic services》

1.专业术语

1.TP:Tester Present待机握手
2.支持的诊断故障码(DTC) supported DTC
  当前被配置并且能够在预定义的车辆条件下执行的诊断故障代码。
3.诊断设备 tester
  控制诸如车载电子控制单元的测试,检查,监控或诊断等功能的系统,可专用于特定类型的操作员(例如专用于车库机械的非车载扫描工具,专用于装配厂的非车载测试工具或车载诊断仪)

在这里插入图片描述
在这里插入图片描述

1. 诊断会话控制(0x10)服务 Diagnostic Session Control

Diagnostic Session诊断会话有默认,编程,扩展三种模式。Note:服务端在上电时应进入默认诊断会话

/*Diagnostic Session*/
static void DigSession(struct UDSServiceInfo* i_pstUDSServiceInfo, tUdsAppMsgInfo *m_pstPDUMsg);
/*define session mode*/
#define DEFALUT_SESSION (1u << 0u)       /*default session*/
#define PROGRAM_SESSION (1u << 1u)       /*program session*/
#define EXTEND_SESSION (1u << 2u)        /*extend session*/

2. ECU 复位(0x11)服务 ECU Reset

  客户端使用 ECU 复位服务来请求服务端重置。
Note:①ECU 复位肯定响应消息(如果需要)应在服务端执行重置之前发送。含义如何解释:当ECU复位以后,“丢掉记忆,重新开始,它就不记得之前干过(收到什么指令)什么!”故执行复位前,应该先肯定响应消息后复位。
②还有一点值得注意:服务端重置成功后,将激活默认会话

3. 安全访问(0x27)服务 Security Access

  使用该服务的典型示例如下所示:客户端请求“种子”,服务端发送“种子”,客户端发送“密钥”(与接收的种子配对),服务端响应“密钥”有效,并且它将自行解锁。
Note:举个生活通俗例子:Tester通过手机获取验证码,ECU发送验证码过来,然后Tester使用验证码登录,ECU密码有效登录成功!

4. 通信控制(0x28)服务 Communication Control

  该服务的目的是开启/关闭服务端(例如应用程序 通信消息)的某些消息的发送和/或接收。

5. 诊断设备在线(0x3e)服务 Tester Present

  客户端向服务端指示客户端仍然与网络连接。还有一个叫法:待机握手,”就是说我客户端(诊断设备)还在和网络握手,还没有断开连接,你可要知道这个情况呀“。
Note:谈谈这东西的用法,我们知道诊断会话有三种模式:默认,编程,扩展。如果你不想要服务端保留在默认模式,可以通过定期发送诊断设备在线请求消息达到这一目的。

6. 控制诊断故障码(DTC)设置(0x85)服务 Control DTC Setting

在这里插入图片描述
数据传输中以下四种服务常用:

1. 通过标识符读取数据(0x22)服务 Read Data By Identifier

2. 通过地址读取内存(0x23)服务 Read Memory By Address

3. 通过标识符写入数据(0x2E)服务Write Data By Identifier

4. 通过地址写入内存(0x3D)服务Write Memory By Address

在这里插入图片描述

1. 请求下载(0x34)服务 RequestDownload

2. 请求上传(0x35)服务 RequestUpload

3. 传输数据(0x36)服务 TransferData

4. 请求终止传输(0x37)服务 RequestTransferExit

5. 例行控制(0x31)服务 RoutineControl

正在更新!待续

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/883623.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Windows 常用工具系列 8 -- 修改鼠标光标(指针)大小和颜色的快速方法方法】

文章目录 修改方法 上篇文章&#xff1a;Windows 常用工具系列 7 – 禁用win10自带的微软输入法 修改方法 Win键 i 快捷键进入设置页面&#xff0c;然后输入光标... 就会跳出修改鼠标大小与光标颜色的选项。 Win键是在计算机键盘左下角Ctrl和Alt键之间的按键 根据自己的需求…

强训第32

选择 D B A A 发送TCP意思应该是已经建立了连接&#xff0c;会超时重传。在未建立连接的时候&#xff0c;会放弃该链接 C A 80端口是http A 交换机攻击主要有五种&#xff1a;VLAN跳跃攻击 生成树攻击 MAC表洪水攻击 ARP攻击 VTP攻击 B A 2^(32-26)2^(32-27)2^(32-27)128 减去…

6.3 社会工程学攻击

数据参考&#xff1a;CISP官方 目录 社会工程学攻击概念社会工程学攻击利用的人性 “弱点”典型社会工程学攻击方式社会工程学攻击防护 一、社会工程学攻击概念 什么是社会工程学攻击 也被称为 "社交工程学" 攻击利用人性弱点 (本能反应、贪婪、易于信任等) 进…

你永远想象不到有多折磨的 Android 开发 react-native gradle*!¥%#

很难过&#xff0c;拿到项目运行不起来&#xff0c;错误报告研究几天没研究明白&#xff0c;改代码&#xff0c;装gradle&#xff0c;忙和好久还是一个样&#xff0c;也不知道是码的问题还是什么&#xff0c;一开始 后面装完gradle&#xff0c;不报错了&#xff0c;但是也跑不起…

leetcode 力扣刷题哈希表初尝试

哈希表 刷题初尝试 哈希表基础知识242. 有效的字母异位词383. 赎金信49. 字母异位词分组438. 找到字符串中所有字母异位词 哈希表基础知识 哈希表是一种数据结构&#xff0c;也叫散列表。哈希表中存储的是键值对&#xff0c;即(key&#xff0c;value)&#xff0c;根据key直接查…

draw.io导出矢量图到word报错text is not svg - cannot display

先参考https://blog.csdn.net/a625750076/article/details/126384831 如果不行&#xff0c;可能是转存的问题 解决方法&#xff1a;直接在draw.io上操作 第一步 第二步 然后再word中粘贴&#xff0c;依旧是矢量图哦&#xff01;

LeetCode150道面试经典题-- 汇总区间(简单)

1.题目 给定一个 无重复元素 的 有序 整数数组 nums 。 返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说&#xff0c;nums 的每个元素都恰好被某个区间范围所覆盖&#xff0c;并且不存在属于某个范围但不属于 nums 的数字 x 。 列表中的每个区间范围 [a,…

Wi-Fi 安全在学校中的重要性

Wi-Fi 是教育机构的基础设施&#xff0c;从在线家庭作业门户到虚拟教师会议&#xff0c;应有尽有。大多数 K-12 管理员对自己的 Wi-Fi 网络的安全性充满信心&#xff0c;并认为他们现有的网络安全措施已经足够。 不幸的是&#xff0c;这种信心往往是错误的。Wi-Fi 安全虽然经常…

Excel设置某列或者某行不某行不可以编辑,只读属性

设置单元格只读的三种方式: 1、通过单元格只读按钮&#xff0c;设置为只为 设置行或者列的只读属性&#xff0c;可以设置整行或者整列只读 2、设置单元格编辑控件为标签控件(标签控件不可编辑) 3、通过锁定行&#xff0c;锁定行的修改。锁定的行与只读行的区别在于锁定的行不…

docker-compose部署nacos 2.2.3

1、编写docker-compose.yml文件 version: "3.1" services:nacos:restart: alwaysimage: nacos/nacos-server:v2.2.3container_name: nacosenvironment:- NACOS_AUTH_ENABLEtrue- MODEstandalone- NACOS_AUTH_TOKEN8b92c609089f74db3c5ee04bd7d4d89e8b92c609089f74db…

高层建筑全景vr火灾隐患排查模拟培训软件助力群众防范火灾伤害

随着城市化进程的加快&#xff0c;楼宇建筑的数量也在不断增加。然而&#xff0c;楼宇消防安全问题也日益突出。为了提高楼宇员工和居民的消防安全意识&#xff0c;楼宇VR消防安全教育培训应运而生。VR安全培训公司深圳华锐视点制作的楼宇vr消防安全教育培训&#xff0c;包括消…

初出茅庐的小李博客之STM32CubeMx配置定时器的编码器模式

STM32CubeMx配置定时器的编码器模式 上次文章写了编码器是如何工作的&#xff0c;今天就来用STM32F103C8T6的TIM3的通道1跟通道2编写一个编码器识别程序。 编程思路&#xff1a; A相:TIM3_CH1 B相:TIM3_CH2 SWITCH:PB5&#xff08;外部中断的方式&#xff09; 实现效果&a…

threejs实现水面的效果

实现水波纹的效果&#xff1a;加入几何形状&#xff0c;可以将平台的几何形状 const waterGeometry new THREE.PlaneGeometry( 10000, 10000 ); 引入水的插件&#xff0c;并修改水的材质。 import { Water } from three/addons/objects/Water.js;const water new Water(water…

【Java】常见面试题:网络

目录 1. 为什么需要网络协议的分层&#xff1f;2. 【封装和分用】3. Socket套接字主要针对传输层协议划分为如下三类&#xff08;了解&#xff09;4. 简单说一下TCP和UDP的区别&#xff1a;5. TCP中的长短连接6. 应用层重点协议7. TCP可靠传输机制&#xff08;三次握手四次挥手…

excel中定位条件,excel中有哪些数据类型、excel常见错误值、查找与替换

一、如何定位条件 操作步骤&#xff1a;开始 - 查找和选择 - 定位条件&#xff08;ctrl G 或 F5&#xff09; 注&#xff1a;如果F5不可用&#xff0c;可能是这个快捷键被占用了 案例&#xff1a;使用定位条件选择取余中空单元格&#xff0c;填入100&#xff0c;按组合键ct…

C++之signal信号应用实例(一百七十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

Docker容器:docker基础及安装

文章目录 一.docker容器概述1.什么是容器2. docker与虚拟机的区别2.1 docker虚拟化产品有哪些及其对比2.2 Docker与虚拟机的区别 3.Docker容器的使用场景4.Docker容器的优点5.Docker 的底层运行原理6.namespace的六项隔离7.Docker核心概念 二.Docker安装 及管理1.安装 Docker1.…

视频联网报警厂家怎么找?

视频联网报警厂家怎么找&#xff1f;要找到联网报警设备厂家&#xff0c;可以按照以下步骤进行&#xff1a; 1. 在互联网上搜索&#xff1a;可以使用搜索引擎&#xff0c;如谷歌或百度&#xff0c;搜索关键词&#xff0c;如“联网报警设备厂家”、“安防设备厂家”等&#xff…

生信豆芽菜-相关性热图

网址&#xff1a;http://www.sxdyc.com/panCancerHeatMap 1、数据准备 第一个文件&#xff1a;相关性矩阵 行为泛癌&#xff0c;列为通路的评分&#xff0c;数值为相关性&#xff08;当然也可以换成其他的数据&#xff09; 第二个文件&#xff1a;显著性矩阵 行为泛癌&#x…

linux学习(等待+进程替换初识)[9]

阻塞等待 一般在内核中阻塞&#xff08;伴随着被切换&#xff09;&#xff0c;等待被唤醒&#xff08;放在等待队列【一种数据结构】中&#xff09; 在Linux中&#xff0c;阻塞等待是指一个进程或线程被暂停执行&#xff0c;直到某个条件满足或事件发生。下面介绍两种常见的阻…