![](https://img-blog.csdnimg.cn/4080f9fae5a6431d87c2e255447cecee.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
UDS诊断从入门到熟练
文章平均质量分 86
从UDS概述到应用层ISO14229,网络层ISO15765-2。本专栏纯属个人工作积累,希望能给刚入门汽车电子行业的小伙伴带来帮助
&春风有信
莫愁前路无知己~
展开
-
UDS诊断系列讲解-总目录
欢迎大家来学习《UDS诊断从入门到熟练》专栏,该篇为总目录,方便以后大家直接进入需要学习的文章。一、前言1、UDS的简介和存在意义UDS诊断系列讲解之 1.1-UDS开篇二、UDS应用层14229-12、诊断服务...原创 2022-08-21 12:12:08 · 10701 阅读 · 16 评论 -
【UDS】开篇
一,浅谈ECUECU(Electronic Control Unit)是电子控制单元的简称。可以理解成是个微型计算机(PCB板,电路,芯片等组成),现代汽车的功能越来越丰富,汽车上的各个子系统都需要功能强大的ECU来控制本系统的工作。比如汽车上的组合开关模块(远光闪光转向灯,雨刮洗涤等可以集合在一个ECU来控制。方向盘下方的手柄)。工作逻辑...原创 2021-09-10 12:45:11 · 1537 阅读 · 0 评论 -
【UDS】诊断故障代码老化机制
诊断故障代码(DTC)一旦生成,将会一直保留,直到通过发送诊断指令清除,或者诊断故障代码老化机制确定此故障不复存在。如果故障不复存在,则诊断故障代码的老化用于确保任何关联的诊断故障代码和除已老去计数器之外所有相关的信息都被清除,以确保不至于招致不必要的维护成本。整个老化机制过程可参考下图可能描述的还不够清晰,欢迎大佬前来指点下,共同学习哈~->返回总目录原创 2023-05-20 14:04:25 · 6054 阅读 · 25 评论 -
【UDS】ISO15765-2之网络时间参数
网络层定时参数定义了N_As、N_Ar、N_Bs、N_Br、N_Cs、N_Cr六个参数。这些时间参数在多帧传输中可以定义在下图的过程中不知不觉,整个专栏基础知识已经写完啦,适用于初学者的理论学习。未完待续,后面会继续分享诊断相关细节知识点~->返回总目录<-原创 2023-05-13 15:00:36 · 2797 阅读 · 5 评论 -
【UDS】ISO15765-2之诊断时间参数
诊断层包含六种定时器时间参数:P2client, P2相对来说,比较好理解。就是节点请求消息时,一些定时器定义标准,在实际开发中这些时间会在整车厂(客户)的诊断输入文档种体现。注:我们把 "节点“ 定义成公司开发的控制器(ECU)。在ECU的开发中,我们只对P2server, P2*server,S3server这三者。因为ECU充当着服务器的角色。下表是博主举例某一整车厂关于定时器P2server, P2*server,S3server的要求感觉还不错,自己写了一遍,又加深了知识点的印象。原创 2023-05-13 13:47:47 · 4649 阅读 · 0 评论 -
【UDS】ISO15765-2之协议数据单元
网络层协议数据单元(N_PDU,Network_Protocol Data Unit)。可以理解成是一种规范协议。而汽车电子中通信的报文格式就是以PDU为传输单元,它规定了报文的一些限制要求。感觉还不错,自己写了一遍,又加深了知识点的印象。正所谓复杂问题简单做,简单事情重复做,你就会成为专家!->返回总目录原创 2022-12-09 22:49:13 · 4948 阅读 · 6 评论 -
【UDS】ISO15765-2之前言
ISO15765-2将UDS网络层和传输层统成一体,好比于网络TCP/IP七层模型进化成四层模型。15765-2存在的目的是为了解决经典CAN数据链路层与ISO 14229协议中定义的应用层之间数据长度不统一的问题。经典CAN数据链路层最大能够支持8个字节,但ISO 14229并不仅仅是为了CAN总线设计的,最大传输数据达到4095个字节。比如车辆VIN码(DID F190)是17个字节,CAN总线必然需要传递3帧才能传完VIN码。原创 2022-12-09 16:16:30 · 837 阅读 · 0 评论 -
【UDS】ISO14229之0x3E服务
TesterPresent”,测试工具保持连接服务此服务用于告知电控单元测试工具仍在线。该服务需周期性发送,用于重置 S3server 计时器并维持当前激活的非默认诊断会话。0x3E服务太简单了!诊断服务方面基本告一段落。接下来,逐步更新网络会话层的文章!->返回总目录原创 2022-11-25 17:27:35 · 3780 阅读 · 4 评论 -
【UDS】ISO14229之0x85服务
ControlDTCSetting”,控制诊断故障代码设置该服务用于停止或重启ECU诊断故障代码状态位的更新0x85服务在实际运用中主要体现在ECU更新刷写程序时候才会使用到!下一章 0x3E握手服务见!->返回总目录原创 2022-11-12 11:39:03 · 4643 阅读 · 8 评论 -
【UDS】ISO14229之0x31服务
RoutineControl”,例程控制该服务执行指定的步骤操作并获取相关结果,相比0x2F服务,具有较大的灵活性,可用于较为复杂类型的控制。一般应用包括清除内存(多数用在更新ECU软件),重置或学习自适应数据,运行自检,方向盘角度零点标定等。0x31服务在实际运用中要比0x2F复杂些,但那又怎样,通过本章讲解是否对该服务熟悉那么一勾勾呢?下一章 DTC控制 0x85服务见!->返回总目录原创 2022-11-05 11:13:06 · 6424 阅读 · 20 评论 -
【UDS】ISO14229之0x2F服务
InputOutputControlByIdentifier”,根据标识符控制输入输出根据标识符控制输入输出服务用于替换输入信号的值、电控单元内部参数或控制电子系统的输出值。0x2F服务还是比较容易理解的,下一章0x31 例行控制服务见!->返回总目录原创 2022-10-29 16:11:25 · 4624 阅读 · 5 评论 -
【UDS】ISO14229之0x28服务
CommunicationControl”,通信控制通讯控制服务用于开启/关闭电控单元对某些报文的发送或接收。0x28服务还是比较简单的,下一章0x2F IO控制服务见!->返回总目录原创 2022-09-03 22:06:21 · 6154 阅读 · 18 评论 -
【UDS】ISO14229之0x27服务
SecurityAccess”,安全访问由于(保密、排放或安全的原因),安全访问服务提供一种方法以方便访问受限制的数据或诊断服务。0x27服务还是比较有意思的,之前博主一直是手写代码的,现在的项目考虑到了功能安全,整车厂要求是Autosar架构的,因此现在开发都是使用DaVinCi软件开发生成代码,很强大的软件(德国佬的确很6)。下一章0x28控制通信服务见!原创 2022-08-21 11:53:58 · 7270 阅读 · 6 评论 -
【UDS】ISO14229之0x2E服务
WriteDataByIdentifier”,按标识符写数据用户通过请求该服务,写指定dataIdentifler(数据标识符DID)所记录的数据值到NVM(非易失性存储,上下电不会被清除的空间,如:EEPROM,ROM,一般常用DataFlash仿EE,性价比高)中。0x2E服务相比之下,较简单。就是写入指定数据标识符DID所记录的数据值到NVM中。下一章0x27安全访问服务见!原创 2022-08-20 19:30:38 · 3647 阅读 · 20 评论 -
【UDS】ISO14229之0x22服务
ReadDataByIdentifier”,按标识符读取数据用户通过请求该服务,读取指定dataIdentifler(数据标识符DID)所记录的数据值。0x22服务相比之下,较简单。就是读取指定数据标识符DID所记录的数据值。,下一章0x2E写DID服务见!httpshttpshttpshttpshttps。......原创 2022-08-01 18:48:33 · 4047 阅读 · 2 评论 -
【UDS】ISO14229之0x14服务
简称: “ClearDiagnosticInformation”,清除DTC信息功能: 用户通过请求该服务,清除一个或者多个指定ECU记录的DTC故障信息,这些故障信息存储在NVM(非易失性存储)中。总而言之,相比较0x19服务,该服务相对比较简单。当请求该服务之后,ECU回复正响应,即使没有存储任何DTC故障信息。若ECU支持内存中多份DTC状态信息副本(例如:一份存在RAM里,一份存在EEPROM里,当然大部分是用flash模仿EEPROM的功能),则ECU会清除0x19 Sub-function 0原创 2022-06-04 20:25:00 · 4848 阅读 · 0 评论 -
【UDS】ISO14229之0x19服务
文章目录前言一、理论描述1.服务分类2.状态掩码二、操作步骤1.请求2.回复总结前言简称: “ReadDTCInformation”,读取DTC信息功能: 用户通过请求该服务,读取ECU的故障诊断码(DTC)信息,服务的sub-function代表了各式各样读取DTC的方法,UDS给19服务的sub-function从0x00到0x19进行了明确定义。通俗解释:例如ECU功能工作电压一般在6V~18.5V之间。当软件通过ADC采样发现该模拟量通道输入电压低于6V时候,会经过一段时间的软件消抖后记录原创 2022-05-29 14:46:48 · 23469 阅读 · 32 评论 -
【UDS】ISO14229之0x11服务
文章目录前言一、理论描述1.分类二、操作步骤1.请求2.回复总结前言简称: “ECU Reset”,ECU重置功能: 该服务请求ECU根据请求消息中的ResetType(重置类型)参数值的内容有效地执行ECU重置。成功重置后(ECU正响应该服务请求),进入defaultSession(默认会话)。通俗解释:执行该命令之后,ECU退出之前的服务进入默认会话,类似初始化操作。一、理论描述1.分类0x00 ISOSAEReserved(保留)0x01 hardReset(硬重置:模拟KL30电源原创 2022-05-21 17:11:18 · 3228 阅读 · 9 评论 -
【UDS】ISO14229之0x10服务
文章目录前言一、理论描述1.分类2.工作模式二、操作步骤1.请求2.回复总结前言`简称: “Diagnostic Session Control”,诊断会话控制。功能: 诊断会话控制启用服务器中一组特定的诊断服务/功能,通俗解释就是请求不同的诊断服务需要在不同的会话模式下进行。一、理论描述1.分类UDS定义的session包括:0x00 ISOSAEReserved(保留)0x01 defaultSession(默认会话)0x02 ProgrammingSession(编程会原创 2022-05-15 16:17:05 · 5452 阅读 · 5 评论