安全访问服务,主要功能是为了通过诊断安全地访问服务端,也就是ECU,而设置的一层保护机制。安全访问服务用于修改存储在内存中的 ECU 数据,在此之前,用户首先必须通过该服务授予访问权限。此服务的目的是提供一种访问信息和/或诊断服务的方法,这些服务因安全、排放或安全原因而受到限制。比如一些用于将例程或信息下载/上...
UDS诊断服务功能提供了多种ECU控制,以确保特定的服务在正确的诊断会话下执行。DiagnosticSessionControl (0x10)服务是关键,用于切换ECU到指定模式,如默认模式(10 01)、编程模式(10 02)或扩展诊断模式(10 03)。请求成功时,ECU会回复肯定响应,如50 03,而失败则用7F NRC代码标识,NRC表明了失败原因。
UDS(ISO14229)统一诊断服务。其最重要的作用就是用来诊断汽车的故障的。车上的ECU很多,如果每个厂商自己定义规范,处理故障会很麻烦,所以统一定义了一整套UDS相关规范,方便维护,4S店用诊断仪就可以判断车上的故障,写数据。 10服务:诊断会话控制 01:默认会话胎压要写ID,首先要进入此模式 02:编程会话 03:扩展会话用...
03同上,7F表示否定响应,10是SID,22是NRC。3E服务用于向服务器指示诊断仪仍然连接在网络上,之前已经激活的诊断服务功能可以仍然保持激活状态。例子:27服务,加上一个子服务,再加上一个钥匙,这样的服务请求可以进行解锁。比如下面的例子,2n-1是某个子服务,通过首轮种子的请求,首轮ECU会返回67+01+...
1、3E 会话保持服务; 2、10 服务切换到03扩展模式; 3、85 服务和28服务,关闭DTC和非诊断报文。使整个CAN网络处于安静的状态。这是对整车网络进行操作的,一般都是以功能寻址的方式发送。注意先用85服务关闭DTC,再使用28服务关报文。 主编程阶段: 1、10 服务切换到编程模式,这里要注意,正确的方式是APP段程序回复...
DiagnosticSessionControl用于控制ECU在不同的session之间进行转换,session可以看作是ECU所处的一种软件状态,在不同的session中诊断服务执行的权限不同。 ECU上电之后,默认处在defaultSession中,在这个session中很多诊断服务不可以执行,很多诊断相关的数据不能读取或写入。一般的诊断仪启动之后,会给ECU发送10 03,即让ECU...
$10的请求格式为SID+SF,客户端通过发送不同子功能号(如10 01、10 02或10 03)来请求特定会话模式。S3定时器在非默认会话中起关键作用,服务器和客户端的定时参数确保了会话模式的稳定切换。如果在非默认会话中没有连续的诊断请求,ECU会在一定时间内切换回默认会话。安全访问服务$27则在非默认会话...
图6 诊断服务通讯机制,引自[2] 比如诊断仪请求10 03,然后ECU回复50 03 00 32 01 F4。 ISO14229协议定义通讯过程如下图7所示,与CAN通讯类似,也是涉及请求,响应,确认,通知等个过程。 图7 诊断服务通讯机制,引自[1] 而针对请求和响应存在数据超过8个字节的情况,所以就提出ISO15765协议。该协议属于网络层协议,...
诊断会话控制服务采用请求格式是SID+SF(sub-function,子功能)。其中SF的定义如下:请求默认会话模式,则客户端发送10 01;请求编程会话模式,则发送10 02;请求扩展会话模式,则发送10 03;这里只介绍最常用的三种子功能。当客户端发送诊断服务请求,服务端收到就需要响应,其正响应格式如下,即请求10 ...
诊断会话控制服务,即$10,采用请求格式是SID+SF(sub-function,子功能),即图6所示。 图6 引自[1] 其中SF的定义如下图7,即请求默认会话模式,则客户端发送10 01;请求编程会话模式,则发送10 02;请求扩展会话模式,则发送10 03;这里只介绍最常用的三种子功能。 图7 引自[1] 当客户端发送诊断服务请求,那么服务...