UDS诊断-面试题2
bilibili视频推荐:
车载测试面试题UDS诊断协议,你知道什么是UDS诊断?ECU是什么?刷写ECU_哔哩哔哩_bilibili
总结:
1.汽车诊断UDS含义:
一套统一的诊断服务命令。
2.具体操作流程:
使用电脑或者手持诊断仪,向ecu发送一串命令,然后等待汽车中的ecu返回数据或者故障码信息。
3.UDS服务是哪个服务规定的?协议编号是多少?
ISO14229-1
4.UDS的26个服务,简称SID
5.SID分为6大类服务:
(红色是测试经常用到的服务)
诊断和通信管理功能单元
| SID(0x) | 诊断服务名(中英文) |
| 10 | 诊断会话控制 |
| 11 | ECU复位 |
| 27 | 安全访问 |
| 28 | 通讯控制 |
| 3E | 诊断仪在线 |
| 83 | 访问时间参数 |
| 84 | 安全数据传输 |
| 85 | 控制DTC设置 |
| 86 | 事件响应 |
| 87 | 链路控制 |
故障码传输功能单元
| SID(0X) | 诊断服务名 |
| 14 | 清除诊断信息 |
| 19 | 读取故障码信息 |
数据传输类
| SID(0X) | 诊断服务名 |
| 22 | 通过ID读数据 |
| 2E | 通过ID写数据 |
| 23 | 通过地址读取内存 |
| 24 | 通过ID读比例数据 |
| 2A | 通过周期ID读取数据 |
| 2C | 动态定义标识符 |
| 3D | 通过地址写内存 |
输入输出控制功能单元
| SID(0X) | 诊断服务名 | 例子 |
| 2F | 通过ID控制输入输出 | 通过发送id控制车窗的升降 |
例行程序功能单元
| SID(0X) | 诊断服务名 | 例子 |
| 31 | 例行程序控制 |
上传和下载功能单元
| SID(0X) | 诊断服务名 |
| 34 | 请求下载 |
| 35 | 请求上传 |
| 36 | 数据传输 |
| 37 | 请求退出传输 |
| 38 | 请求文件传输 |
6.UDS诊断请求和响应
过程:诊断仪向ecu发送诊断请求,等待ecu接收到请求后,给诊断仪发送响应结果
请求响应格式:符合uds服务的16进制报文
例子:
请求:22 01 07;含义:22:读取服务,01 07:要去读取的数据id
积极响应:62 01 07 7C 32;含义:62=22+40
消极响应:7F 22 11;含义:7F:否定响应,11:否定响应码(NRC)
7.经常用到的否定响应码:NRC
78响应码的含义比较特殊:已收到请求,但晚些响应。

8.can总线上会挂载着上百个ecu,请求报文是怎么发送给指定的ecu呢?
首先,每个ecu都会有唯一的诊断请求和响应的can报文id

然后,进行物理寻址请求:id 702(一对一)或者功能寻址请求:id 7DF(信息群发)
9.0x10服务
默认会话:读取故障码22、重置ec11等
扩展会话:解锁ecu、控制输入输出
编程会话:34~38服务
注意:
10. 服务请求和响应报文的报文格式
其中P2ServerMax:响应等待时间,P2*ServerMax:增强会话响应时间,响应最大的响应时间

11.UDS报文传输的四种帧~IS015765-2规定uds报文传输细节
单帧(SF)传输,0开头的为单帧例子:

多帧(FF)传输,例子:
1是首帧,3是流控帧,2是连续帧


12.编程会话下,解锁 ecu流程
诊断仪发送一个生成种子请求给ecu,ecu生成随机种子,然后将生成的种子返回给诊断仪,并且通过安全算法计算出key,诊断仪也使用自己的安全算法计算出key,并将其发送给ecu,进行验证操作,如果两边key相同则返回结果给诊断仪。


解锁ecu时,经常会遇到的nrc

13. 诊断故障码DTC
例子五位故障码:P0420:P0 0x4 0x20
P:
0:
4:
20:
14.SAE J2012-DA进行解码可以看到故障码具体属于什么类型,三位故障码?
三位故障码,相对于两位故障码多了FTB(故障类型字节)
FTB类型:

15:故障码状态码DTC Status

09十六进制转为二进制,每个bit含义:

16.19 01服务:读取故障码的数量
DTC SAM:支持的故障码状态,FF指的是支持所有故障
DTC FID:支持的DTC 格式,00表示最常见的DTC格式

17.0x19服务中的02子功能:读取故障码列表

相关文章:
UDS诊断-面试题2
bilibili视频推荐: 车载测试面试题UDS诊断协议,你知道什么是UDS诊断?ECU是什么?刷写ECU_哔哩哔哩_bilibili 总结: 1.汽车诊断UDS含义: 一套统一的诊断服务命令。 2.具体操作流程: 使用电脑…...
ovirt error: Network not found: no network with matching name ‘vdsm-ovirtmgmt‘
Ovirt Node节点启动vm出现 error: Network not found: no network with matching name ‘vdsm-ovirtmgmt’ 错误的常见情况有以下几种:常见情况有以下几种: 网络配置丢失或未正确配置: ○ 在 oVirt 或 libvirt 环境中,如果网络配…...
2024百度的组织架构和产品分布
百度2024年的组织架构主要分为以下几个事业群组,每个事业群组负责不同的产品和服务: 一、智能云事业群组(ACG) 主要产品与服务: 百度云:提供云计算、存储、大数据处理等服务。AI云服务:包括语…...
Java中List、ArrayList与顺序表
List、ArrayList与顺序表 List什么是List常用方法介绍List的使用 ArrayList与顺序表线性表顺序表接口的实现 ArrayList简介ArrayList的使用ArrayList的构造ArrayList的常见操作ArrayList的遍历ArrayList的扩容机制 ArrayList的具体使用杨辉三角简单的洗牌算法 ArrayList的问题及…...
缓存技巧 · Spring Cache Caffeine 高性能缓存库
Caffeine 背景 Caffeine是一个高性能的Java缓存库,它基于Guava Cache进行了增强,提供了更加出色的缓存体验。Caffeine的主要特点包括: 高性能:Caffeine使用了Java 8最新的StampedLock乐观锁技术,极大地提高了缓存的并…...
RabbitMq中交换机(Exchange)、队列(Queue)和路由键(Routing Key)
RabbitMQ 是一个消息代理系统,使用交换机(Exchange)、队列(Queue)和路由键(Routing Key)来管理消息的传递。它们分别起到不同的作用,构成了消息从生产者到消费者的传递路径。 以下是…...
解码 OpenAI 的 o1 系列大型语言模型
OpenAI 表示,其 Strawberry 项目已升级为新的大型语言模型 (LLM) 系列,公司将其命名为 OpenAI o1。 该公司表示,新系列模型还包括一个 o1-mini 版本,以提高成本效益,可根据其推理能力与最新的GPT-4o 模型进行区分。 …...
大小端字节序 和 内存高低地址顺序
目录 1. 大小端字节序 1.1 什么是大小端字节序? 1.2 为什么有大小端字节序? 1.3 习题:用程序结果判断大端小端 2. 各种易混淆的高低地址顺序 2.1 监视窗口的地址表示【计算机标准展示方式】 2.2 横向地址表示 2.3 一个字节 与 多个字节 的地址…...
Spring扩展点系列-MergedBeanDefinitionPostProcessor
文章目录 简介源码分析示例示例一:Spring中Autowire注解的依赖注入 简介 spring容器中Bean的生命周期内所有可扩展的点的调用顺序 扩展接口 实现接口ApplicationContextlnitializer initialize AbstractApplicationContext refreshe BeanDefinitionRegistryPos…...
Centos 7.9 使用 crontab 实现开机启动
[rootlocalhost ~]# crontab -e [rootlocalhost ~]# reboot # crontab -e reboot /path/to/my/program # reboot 表示重启开机的时候运行一次 reboot /test/hello.sh 参考: Linux crontab 命令 https://www.runoob.com/linux/linux-comm-crontab.html Run prog…...
基于微信的设备故障报修管理系统设计与实现+ssm论文源码调试讲解
2相关技术 2.1微信小程序 小程序是一种新的开放能力,开发者可以快速地开发一个小程序。小程序可以在微信内被便捷地获取和传播,同时具有出色的使用体验。尤其拥抱微信生态圈,让微信小程序更加的如虎添翼,发展迅猛。 2.2 MYSQL数据…...
yolo自动化项目实例解析(二)ui页面整理 1.78
我们在上一章整理main.py 的if __name__ __main__: 内容还留下面这一段, from PyQt5.QtWidgets import *from lanrenauto.moni.moni import *from PyQt5.QtGui import *app QApplication(sys.argv) # 初始化Qt应用ratio screen_width / 2560 # 分辨率比例# 设…...
PyQt / PySide + Pywin32 + ctypes 自定义标题栏窗口 + 完全还原 Windows 原生窗口边框特效项目
项目地址: GitHub - github201014/PyQt-NativeWindow: A class of window include nativeEvent, use PySide or PyQt and Pywin32 and ctypesA class of window include nativeEvent, use PySide or PyQt and Pywin32 and ctypes - github201014/PyQt-NativeWindow…...
面试时遇见的项目问题
汽车在线销售平台项目 项目的甲方是谁? 甲方是一家汽车销售公司,他们希望通过互联网技术提升销售效率和服务质量 为什么要做这个项目? 很多消费者越来越倾向于在线上完成购车之前的大部分决策。所以甲方找到我们希望通过建立一个在线的销…...
在线骑行网站设计与实现
摘 要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装在线骑行网站软件来发挥其高效地信息处理的作用,…...
大批量查询方案简记(Mybatis流式查询)
Mybatis的流式查询 摘要: 介绍使用mybatis流式查询解决大数据量查询问题. 1 业务背景 开发中遇到一个业务,说起来也很无奈:公司用的数据库MySQL,一张表里只保留了一个月的数据,但是数据量竟然高达2000W还要多,然后用户有个需求也很恶心,为了完成这个业务我需要定时任务每一个月…...
python - 子类为什么调用父类的方法
菜鸟教程 - 面向对象https://www.runoob.com/python3/python3-class.html为什么写这个呢 ,因为很多时候,事情很简单,但我往往记住了使用方式,忘记了使用原因,也因为自己看到super()时,也想问为什么要用supe…...
【JavaScript】数据结构之字典 哈希表
字典 键值对存储的,类似于js的对象,但在js对象中键[key]都是字符串类型或者会转换成字符串类型,因此后声明的键值会覆盖之前声明的值。字典以map表示,map的键不会转换类型。 let map new Map() map.set(a, 1) map.set(b, 2) ma…...
Adobe出现This unlicensed Photoshop app has been disabled
Adobe Acrobat或Photoshop软件突然出现This unlicensed Photoshop app has been disabled 症状 解决方法 删除软件安装目录下的AcroCEF和acrocef_1l两个子文件夹。主要是为了删除AcroCEF.exe。 如果存在复发,则删除xxxxxxx\AdobeGCClient\AdobeGCClient.exe。 不…...
elementui 单元格添加样式的两种方法
方法一 <el-table-column fixed prop"name" label"姓名" width"120"> <<template scope"scope"> <span :class"{red:scope.row.color1,yell:scope.row.color2,green:scope.row.col…...
IPFS去中心化存储实战指南:黑马程序员音乐播放器项目开发完整教程
IPFS去中心化存储实战指南:黑马程序员音乐播放器项目开发完整教程 【免费下载链接】BlockChain 黑马程序员 120天全栈区块链开发 开源教程 项目地址: https://gitcode.com/gh_mirrors/blockchain95/BlockChain 你是否想过如何构建一个真正去中心化的音乐播放…...
Taurus多执行器对比实战:JMeter/Gatling/Locust统一压测方案
1. 为什么选Taurus做多执行器对比——不是为了炫技,而是为了少踩坑在性能测试领域,我见过太多团队卡在“选型”这一步:刚招来一个会写JMeter脚本的工程师,项目突然要压测WebSocket接口,发现JMeter原生支持弱、插件维护…...
作业本耐用度差距巨大?深圳大明印刷厂拆解合规工艺,告别定制作业本掉页开裂通病
在校园日常教学中,很多学校都会遇到同一个难题:同一学期采购的作业本、定制作业本,品质差距悬殊,有的完好无损用到期末,有的短短几周就出现书脊开裂、页面脱落、边角破损、翻页卡顿等问题。不少人误以为是学生使用习惯…...
环境光遮蔽(Ambient Occlusion):揭秘那个让虚拟世界“有重量感“的阴影魔法
一、一个让我"开窍"的老木匠故事 我有个朋友是传统家具的修复师,他给我讲过一个让我至今难忘的故事。他说他刚入行时跟着一位 70 多岁的老木匠师父学习——师父让他做的第一件事不是雕花、不是榫卯——而是"看阴影"——这个看似奇怪的训练改变了…...
户外实用|艾迪欧 R6000 测评 —— 户外 / 自驾 / 露营的通讯好搭档
户外出行,通讯工具的核心是稳定、清晰、耐用、续航久、功能全。艾迪欧 R6000 作为一款兼顾专业与户外的 DMR 对讲机,全频段覆盖、双模通讯、自定义功能、长续航,完美适配自驾、露营、登山、越野等户外场景,是户外爱好者的靠谱通讯…...
终极艾尔登法环帧率解锁指南:轻松突破60FPS限制
终极艾尔登法环帧率解锁指南:轻松突破60FPS限制 【免费下载链接】EldenRingFpsUnlockAndMore A small utility to remove frame rate limit, change FOV, add widescreen support and more for Elden Ring 项目地址: https://gitcode.com/gh_mirrors/el/EldenRing…...
2026智慧校园规划必读:如何在预算吃紧下选到高性价比方案
✅作者简介:合肥自友科技 📌核心产品:智慧校园平台(包括教工管理、学工管理、教务管理、考务管理、后勤管理、德育管理、资产管理、公寓管理、实习管理、就业管理、离校管理、科研平台、档案管理、学生平台等26个子平台) 。公司所有人员均有多…...
毕业设计 yolov11骨折检测医疗辅助系统(源码+论文)
文章目录 0 前言1 项目运行效果2 课题背景2.1 研究背景2.2 国内外研究现状2.3 研究意义 3 设计框架(骨折检测系统设计框架说明)3.1. 系统架构图3.2. 技术选型3.2.1 核心组件3.2.2 辅助工具 3.3. 核心模块设计3.3.1 YOLO模型训练模块训练流程图关键伪代码…...
文件-语言-系统:基础IO-2.0——IO重定向接口,语言层缓冲区,系统级缓冲区。内核级分析!
bit::Shadow✧(≖ ◡ ≖✿ 目录 重定向接口dup2() ">" ">>" "<" 函数原型 输出重定向1和2的使用 文件描述符表 ./a.out运行: "./a.out >"默认重定向是fd 1 合并标准输入输出 缓冲区 什么是缓冲…...
电子商务设计师软考备战:特别篇 - 综合模拟与备考策略
1. 考试形式与内容结构1.1 考试基本信息考试科目与时间基础知识考试:上午9:00-11:30(150分钟)应用技术考试:下午2:00-4:30(150分钟)题型与分值分布上午考试(基础知识): -…...
