![](https://img-blog.csdnimg.cn/20190927151053287.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
uds
文章平均质量分 83
诊断uds
Overboom
这个作者很懒,什么都没留下…
展开
-
[UDS] --- ReadDTCInformation 0x19
19服务允许客户端从任何服务器或车辆内的服务器组,读取存储在服务器中的诊断故障代码 (Diagnostic Trouble Code,DTC)信息的状态。除非特定子功能另有要求,否则服务器应返回所有DTC信息(例如,与排放相关和非排放相关)。19服务允许诊断仪/上位机从车辆内的任何ECU读取故障诊断码(DTC)信息的状态。此服务常用的操作如下:在ISO 15031中对DTC故障码各Bit格式进行了定义:DTC的八个状态位分别代表含义:在ISO 14229中定义了28个Sub-Function,大家可以参原创 2024-07-19 11:16:14 · 862 阅读 · 0 评论 -
[UDS] --- TesterPresent 0x3E
sub-function定义注意上图为Bit 6 ~ 0的定义,Bit 7(supportPosRspMsgIndicationBit)未在这里定义。本服务不支持有数据参数的报文。诊断仪在线服务只有两个子功能,就是00/80,没有特定的含义。实际使用中一般使用80子功能,子功能参数的最高位就是诊断服务肯定响应抑制位SuppressPosRspMsgIndicationBit,ECU收到SPRMIB为1的服务时,不需要给出肯定响应。相反,当ECU收到SPRMIB为0的服务时,需要给出肯定响应。原创 2023-11-01 10:30:44 · 1096 阅读 · 0 评论 -
[UDS] --- RoutineCommunicationControl 0x31
client端使用RoutineControl服务执行定义的步骤序列并获取任何相关结果。该服务具有很大的灵活性,典型的用法包括擦除内存,复位或学习自适应数据,运行自检,覆盖正常服务器控制策略以及控制服务器值随时间变化等功能。预定义的序列(例如:关闭的敞篷车顶)等等。通常,当用于控制输出时,此服务用于更复杂的类型控制,而inputOutputControlByIdentifier用于相对简单(例如:静态)的输出控制。原创 2023-10-30 20:05:59 · 493 阅读 · 0 评论 -
[UDS] --- CommunicationControl 0x28
根据ISO14119-1标准中所述,诊断服务28服务主要用于网络中的报文发送与接受,比如控制应用报文的发送与接收,又或是控制网络管理报文的发送与接收,以便满足一定场景下的应用需求。原创 2023-10-30 19:08:54 · 283 阅读 · 0 评论 -
[UDS] --- ECUReset 0x11
根据ISO14119-1标准中所述,诊断服务11主要用于Client向Server(ECU)请求重启行为。该重启行为将会导致Server复位回归到特定的初始状态,具体是什么初始状态取决于Client的请求行为。原创 2023-10-30 18:10:23 · 124 阅读 · 0 评论 -
[UDS] --- WriteDataByIdentifier 0x2E
根据ISO14119-1标准中所述,诊断服务2E主要用于Client向Server(ECU)通过DID的方式写入相关的数据。原创 2023-10-27 11:11:27 · 220 阅读 · 0 评论 -
[UDS] --- ReadDataByIdentifier 0x22
根据ISO14119-1标准中所述,诊断服务22主要用于Client向Server(ECU)通过DID的方式读取相关的数据。这些数据可以输入输出的数字信号,模拟信号,内部数据以及其他的系统状态信息。原创 2023-10-27 10:54:58 · 248 阅读 · 1 评论 -
[UDS] --- SecurityAccess 0x27 service
为什么需要安全访问?因为在下载/上传的诊断服务例行程序或数据进入服务器并从服务器读取特定的内存位置的情况是可能需要安全访问。不正确的例程或数据下载到服务器中可能损坏电子设备或其他车辆部件,或冒着车辆遵守排放,安全或安全标准。所以,安全访问还是很重要的。安全访问原理如下图:Tester: send key : 27 + yy + key , 其中yy = xx + 1实例如下:Tester: 02 27 05 00 00 00 00 00 安全访问,05子功能。原创 2023-10-26 21:53:14 · 172 阅读 · 0 评论 -
[UDS] --- DiagnosticSessionControl 0x10 service
10包含3个子功能,01 Default默认会话,02 Programming编程会话,03 Extended扩展会话,ECU上电时,进入的是默认会话(Default)。为什么设计三个会话模式呢?因为权限问题。默认会话权限最小,可操作的服务少;扩展模式通常用于解锁高权限诊断服务,例如写入数据/参数、读写诊断码;编程模式用于解锁bootloader相关的诊断服务,即程序烧录。这里来一张权限表格。带颜色的区域代表需要解锁操作。原创 2023-10-26 21:26:51 · 299 阅读 · 0 评论 -
[UDS] --- UDS概述
UDS(Unified Diagnostic Services,统一的诊断服务)诊断协议是在汽车电子ECU环境下的一种诊断通信协议,在ISO 14229中规定。它是从ISO 14230-3(KWP2000)和ISO 15765-3协议衍生出来的。“统一”这个词意味着它是一个“国际化的”而非”公司特定的”标准。到目前为止,这种通信协议被用在几乎所有由OEM一级供应商所制造的新ECU上面。原创 2023-10-26 20:44:27 · 257 阅读 · 0 评论 -
[UDS] --- UDS服务应该支持的NRC
最后,下表中列出了ISO14229-1:2013(E)中定义的否定响应码及其使用条件。供大家参考。编码描述助记词0x00此编码用于服务器内部实现否定响应码的逻辑时使用,用于表示没有NRC,不给出否定响应。此编码不会在否定响应中给出。ISO预留。用于以后扩展。0x10表示请求的诊断服务被服务器(ECU)拒绝,但在本表中所有已定义的编码都不适用,这时回复此编码。0x11服务器不支持请求的诊断服务。原创 2023-10-20 19:28:19 · 1153 阅读 · 0 评论 -
[UDS] --- 统一诊断服务概述
UDS(Unified Diagnostic Services,统一诊断服务)诊断协议是用于汽车行业诊断通信的需求规范,由ISO-14229系列标准定义。应用于OSI七层模型的应用层(第7层),它只规定了与诊断相关的服务需求,并未涉及通信机制,所以,它可以在不同的汽车总线(例如CAN, LIN, Flexray, Ethernet 和 K-line)上实现。ISO 14229-1 定义了诊断服务,只有应用层,不涉及网络及实现。ISO 14229-3定义了UDS在CAN总线上的实现。转载 2023-10-20 18:57:28 · 220 阅读 · 0 评论