基于Uds刷写过程中,$10 02服务的处理相对琐碎,不是实现的难度有多大,而是需求确认比较麻烦。本文讨论的焦点:功能寻址,由网关节点(Gateway)发送$10 02诊断请求时,Gateway响应上位机的时机问题。 功能寻址,$10 02需求 需求:功能寻址发送$10 02,P2Server_max = 50ms,诊断路由时间TGateway_max = 10ms。 解释一下...
基于Uds刷写过程中,$10 02服务的处理相对琐碎,不是实现的难度有多大,而是需求确认比较麻烦。本文讨论的焦点:功能寻址,由网关节点(Gateway)发送$10 02诊断请求时,Gateway响应上位机的时机问题。 1 功能寻址,$10 02需求 需求:功能寻址发送$10 02,P2Server_max = 50ms,诊断路由时间TGateway_max = 10ms。 解释一...
10 Diagnostic Session Control诊断会话控制服务 11 ECU Reset ECU 重置服务 14 Clear Diagnostic Information 清除诊断信息服务(清故障) 19 Read DTC Information 读DTC(diagnostic trouble code 诊断故障码)信息服务 (读故障) 22 Read Data By Identifier 通过DID读数据服务 23 Read Memory by Address 通过内存地址读...
UDS诊断服务功能提供了多种ECU控制,以确保特定的服务在正确的诊断会话下执行。DiagnosticSessionControl (0x10)服务是关键,用于切换ECU到指定模式,如默认模式(10 01)、编程模式(10 02)或扩展诊断模式(10 03)。请求成功时,ECU会回复肯定响应,如50 03,而失败则用7F NRC代码标识,NRC表明了失败原因。
诊断会话控制(DiagnosticSessionControl,0x10)服务是实现不同诊断会话切换的关键。通过此服务,系统能够启用或禁用不同的诊断功能或服务,从而满足多种诊断需求。ECU在上电后默认进入默认会话,当客户端请求诊断服务时,若该会话已运行,则系统会做出肯定响应。在不同会话之间切换时,需要满足特定的用户定义...
简单举个例子,需要读取DID是F1 86的数据内容,它的正响应是“62+F186+02”,这个02就是F1 86这个DID存储的内容,而这个F1 86代表的意思是“当前会话状态(这个在10服务里面会介绍到)”。02代表当前处于编程会话状态。 DID定义的内容是什么?在ISO14229里面有一些标准推荐的DID以及这些DID的功能,当然还有一些特殊的DID...
答:要的。我们知道Application和Bootloader是不同的程序,两者之间会因执行诊断的$11服务或者$10服务有跳转行为。但是我们也不能混淆两者的测试关系。 举例: Application支持UDS $10服务的0x01、0x02、0x03子功能。0x01、0x02、0x03子功能的跳转关系在Application测试即可,这种测试时,可以不用Bootloader程序,即ECU中不...
3)NRC 0x12和0x7E的区别:0x12是整个子功能不支持,而0x7E是在当前会话不支持。举个例子:19服务有很多子功能,假设客户需求不支持0A子功能,那执行19 0A就会回复0x12;假设10 02服务只在扩展会话下支持,但在默认会话下执行了,就会回复0x7E。 4)NRC 0x7F和0x7E的区别:0x7F是当前会话下服务不支持,0x7E是当前会...
UDS(ISO14229)统一诊断服务。其最重要的作用就是用来诊断汽车的故障的。车上的ECU很多,如果每个厂商自己定义规范,处理故障会很麻烦,所以统一定义了一整套UDS相关规范,方便维护,4S店用诊断仪就可以判断车上的故障,写数据。 10服务:诊断会话控制 01:默认会话胎压要写ID,首先要进入此模式 02:编程会话 03:扩展会话用...
$10会话控制 DiagnosticSessionControl(诊断会话控制)服务用于启用服务器中的不同诊断会话。该服务是在服务器端使能不同的会话模式,可以通过会话模式赋予不同诊断服务的执行权限。 请求格式: 响应格式: 支持的NRC: $3E会话保持 3E服务用于会话模式一直保持在非默认会话,不会因为3E时间超时而自动掉到默认会话。