uds帧格式_UDS学习教程--UDS帧结构 A9学习网

在UDS协议中主要有三种类型的帧。

携带子功能ID的请求帧;

不带子功能ID的请求帧;

肯定响应帧;

否定响应帧;

在了解各个帧之前,咱们必须先了解以下术语:

Service ID - 即诊断服务ID,简称SID,它是ISO14229-1中定义的服务的ID号,长度为一个字节。服务端,也就是ECU收到这个ID号的消息时,会执行与这个服务相关的特定功能。

Sub-Function - 即子功能,它是一个可选字段,是服务ID的子部分。

例如:

功能 :诊断会话控制 (session control)

SID: 0x10

子功能:默认会话,可编程会话,扩展会话。

所以,在诊断会话控制(0x10) 服务中,有三个子功能。

携带子功能ID的请求帧

请求帧是诊断工具向服务端发送请求的帧。它通常遵循下面的结构:

带子功能ID的请求帧

不带子功能ID的请求帧

不带子功能ID的请求帧

诊断工具发送请求时,我们希望能够得到服务端ECU回复一个响应信号,这个回复可能是肯定的,也可能是否定的。我们分别来了解一下。

肯定响应帧

如果是肯定的响应(Positive Response),ECU 就在诊断请求的SID上+0x40表示确认例如诊断请求是10,ECU回复响应50;请求22,响应62,紧接着回复一组数据。

肯定响应帧

子功能可以决定是否需要回复响应

有时候,我们并不需要回复响应,我们可以通过子功能字节的第7个bit位来设置。

bit-7(D1)=0 —> 需要肯定响应

bit-7(D1)=1 —> 不需要肯定响应

否定响应帧

当ECU反馈为否应响应时,回复7F+SID+NRC,NRC表示的是Negative Response Code(否定响应码,表示否定的理由。

否定响应帧

下一节

在UDS协议中主要有三种类型的帧。 携带子功能ID的请求帧; 不带子功能ID的请求帧; 肯定响应帧; 否定响应帧; 在了解各个帧之前,咱们必须先了解以下术语: Service ID - 即诊断服务ID,简称SID,它是ISO14229-1中定义的服务的ID号,长度为一个字节。服务端,也就是ECU收到这个ID号的消息时,会执行与这个服务相关的特定功能。 Sub-Function - 即子功能,它是一个可选字段,是服务ID的子部分。 例如: 功能 :诊断会话控制 (session control) SID: 0x10 子功能:默认会话,可编程会话,扩展会话。 所以,在诊断会话控制(0x10) 服务中,有三个子功能。 携带子功能ID的请求帧 请求帧是诊断工具向服务端发送请求的帧。它通常遵循下面的结构: 带子功能ID的请求帧 不带子功能ID的请求帧 不带子功能ID的请求帧 诊断工具发送请求时,我们希望能够得到服务端ECU回复一个响应信号,这个回复可能是肯定的,也可能是否定的。我们分别来了解一下。 肯定响应帧 如果是肯定的响应(Positive Response),ECU 就在诊断请求的SID上+0x40表示确认例如诊断请求是10,ECU回复响应50;请求22,响应62,紧接着回复一组数据。 肯定响应帧 子功能可以决定是否需要回复响应 有时候,我们并不需要回复响应,我们可以通过子功能字节的第7个bit位来设置。 bit-7(D1)=0 —> 需要肯定响应 bit-7(D1)=1 —> 不需要肯定响应 否定响应帧 当ECU反馈为否应响应时,回复7F+SID+NRC,NRC表示的是Negative Response Code(否定响应码,表示否定的理由。 否定响应帧 下一节
经验分享 程序员 微信小程序 职场和发展