汽车UDS诊断之ECU复位服务(0x11)深度剖析

ECUReset就是ECU复位服务。

ECU复位
服务描述
ECUReset客户端向服务端请求重置服务端。

目录

1.英文术语

2.缩写表

3.服务描述

4.请求消息定义 

4.1.请求消息子功能定义

4.2.请求消息数据参数定义

5.肯定响应消息定义

5.1.肯定响应消息数据参数定义

6.否定响应消息定义

6.1.否定响应码

7.服务使用示例

7.1.示例#1-执行硬复位

7.1.1.步骤1:请求执行硬复位

7.1.2.操作汇总


1.英文术语

英文术语翻译
ECUResetECU复位
ECUReset Request SID

ECU复位请求SID

ISO14229定义此值为0x11

sub-function子功能
resetType复位类型
hardReset硬复位
keyOffOnReset 钥匙电复位
softReset 软复位
ECUReset Response SID 

ECU复位响应SID

ISO14229定义此值为(0x11+0x40)

powerDownTime 断电时间

2.缩写表

缩写解释
SID服务标识符
Cvt

约定值

M 强制的

C 有条件的

U 用户选项

NRC否定响应码

3.服务描述

        ECU复位服务就是可以此诊断指令来命令ECU执行自复位,复位有多种形式,依据子功能参数来区分(即客户端使用ECU复位服务来请求服务端重置,重置成功后,将直接进入默认会话)。

        通常来说,ECU在收到一条诊断指令后,要先进行相应的处理,执行某些诊断操作,完毕后再发送肯定响应。但是ECU复位服务是个特例,因为它的诊断操作是复位,这时候这个ECU就会重新开始运行,此时ECU也不会记得你前面发过诊断指令,所以复位后没办法ECU就没办法再去发送诊断响应,所以要先发送肯定响应,再执行复位。

注意:从发送完肯定响应到执行复位的这段时间内,ECU是否还可以响应其它诊断请求,标准中没有规定。建议此期间ECU不接受任何请求消息,也不发送任何响应消息。

4.请求消息定义 

请求消息定义
A_Data字节参数名称Cvt字节值助记符
#1ECU复位请求SIDM

0x11

ER
#2子功能 = [复位类型]M0x00 - 0xFFLEV_RT_

4.1.请求消息子功能定义

该服务使用子功能参数选择(此字节的bit7表示抑制肯定响应位,下表并没有介绍此位)。

下表中标绿的三种较为常用:

请求消息子功能定义
位6-0描述Cvt助记符
0x00

ISOSAEReserved

该值为本文件为未来定义预留。

MISOSAERESRVD
0x01

硬复位

模拟的是ECU先完全掉电再上电的过程。

在我们汽车行业里面ECU一般会有两种电源供应:

1、一种是常电用来供给ECU处理低功耗模式下使用的。

2、另一种唤醒电用来作为唤醒源,是ECU从低功耗模式进入正常模式的媒介,这个要根据厂家约定,如果某个厂家只支持常电不支持钥匙电,那就只供应常电给ECU,ECU就能够正常工作。

所以我们想ECU完成掉电,就必须将常电唤醒完全断开再上电。

UHR
0x02

钥匙电复位

模拟的是像司机下钥匙电再重新上电的情况钥匙电关闭再重新上电的复位过程,RAM中的内容要被重置。

UKOFFONR
0x03

软复位

只是程序从头开始执行,RAM中的内容不重置无需重新初始化先前学到的配置数据、自适应因素和其他长期调整)。

USR
0x04

使能快速休眠

开启休眠功能,在这种模式下,使用关闭钥匙电也不会进入关闭状态,而是进入休眠状态。

这个子功能是针对由车辆电池供电而非点火供电的ECU,这类ECU通常情况下在钥匙电关闭后的一段时间内进入电源关闭状态(PowerOff),而这个指令命令ECU打开快速休眠功能,在这种模式下,ECU在钥匙电关闭后将不会进入关闭状态,而是进入休眠状态休眠意味着虽然断电,但仍然可以被唤醒(电池供电),进入休眠状态所需要的时间更短,且能够在更短的时间内被唤醒,但会有一定功耗。其实这个类似于电脑的关机和休眠,常规模式下钥匙电关闭后ECU会关机,而快速休眠模式打开后,则会快速进入休眠。

所以进入快速休眠状态必须满足以下两个条件:

1、请求使能快速休眠(会有响应消息)

2、关闭钥匙电(操作使用休眠功能,不会去发响应消息)

UERPSD
0x05

关闭快速休眠

(也就是跟0x04子功能相对应的)

关闭快速休眠模式,返回常规模式。

UDRPSD
0x06 - 0x3F

ISOSAEReserved

该值的范围为本文件为未来定义预留。

MISOSAERESRVD

0x40 - 0x5F

车辆制造商特定

此值范围保留以供车辆制造商特定使用

UVMS
0x60 - 0x7E

系统供应商特定

此值范围保留以供系统供应商特定使用

USSS
0x7F

ISOSAEReserved

该值为本文件为未来定义预留。

MISOSAERESRVD

4.2.请求消息数据参数定义

此服务中请求消息中没有数据参数。

5.肯定响应消息定义

肯定响应消息定义
A_Data字节参数名称Cvt字节值助记符
#1ECU复位响应SIDM0x51ERPR
#2子功能 = [复位类型]M0x00 - 0x7FLEV_RT_
#3断电时间C0x00 - 0xFFPDT

C:如果将子功能参数设置为使能快速休眠(0x04),则存在此参数;

5.1.肯定响应消息数据参数定义

肯定响应消息数据参数定义
定义

复位类型

此参数与请求消息的子功能参数的位6~0相同。

断电时间

此参数是ECU在断电过程中保持待机状态的最小时间(表示你这个ECU什么时候能够休眠),长度为1字节,分辨率是1s

—— 0x00 - 0xFE:0-254秒

—— 0xFF:表示故障或时间不可用。

6.否定响应消息定义

否定响应消息定义
A_Data字节参数名称字节值Cvt助记符
#1否定响应SID0x7FMSIDNR
#2ECU复位请求SID0x11MSIDRQ
#3否定响应码0xXXMNRC_

6.1.否定响应码

此服务支持的否定响应码
否定响应码描述助记符
0x12

子功能不支持

如果不支持子功能参数,则应发送此否定响应码。

SFNS
0x13

消息长度错误或格式无效

如果消息的长度错误,则应发送此否定响应码。

IMLOIF
0x22

条件错误

如果未满足ECU复位请求的条件,则应返回此否定响应码。

CNC
0x33

安全访问拒绝

如果请求的重置需要服务器处于相应的安全状态,而服务器却没有解锁,则应发送此否定响应码。

SAD

注意:0x11服务支持的否定响应码比0x10服务多0x33-安全访问被拒绝,这是因为复位会影响ECU的正常功能,相对来说有一定的危险性,所以有的供应商或主机厂把0x11服务定义为在解锁状态下才能执行,如果在上锁状态下收到该请求,ECU应返回否定响应码0x33。

标准对0x11服务是否需要安全访问没有强制要求,用户可自定义。

7.服务使用示例

7.1.示例#1-执行硬复位

假设该示例满足了以下服务端成功执行ECU复位服务的条件:

1、服务端处于的状态:点火 = 开启,系统不应处于运行模式(例如,如果系统是发动机为动力源,发动机应关闭;如果系统是混动系统,发动机和ISG电机都要关闭。

2、客户端通过将抑制肯定响应位(子功能参数的位7)设置为“False”向服务端请求;

3、在服务端执行复位类型之前,该服务端应发送ECU复位的肯定响应消息。

7.1.1.步骤1:请求执行硬复位

ECU复位请求

消息方向

客户端→服务端

消息类型

请求

A_Data字节

描述(所以值为16进制)

字节值

助记符

#1

ECU复位请求SID

0x11

ER

#2

子功能 = 硬复位

               抑制肯定响应位 = 假

0x01

RT_HR

肯定响应消息

消息方向

服务端→客户端

消息类型

响应

A_Data字节

描述(所以值为16进制)

字节值

助记符

#1

ECU复位响应SID

0x51

ERPR

#2

子功能 = 硬复位

0x01

RT_HR

7.1.2.操作汇总

步骤1:请求执行硬复位

图解:

操作CAN报文实体
01234567
请求执行硬复位0x020x110x01     客户端
肯定响应0x020x510x01     服务端

到这里我们的0x11服务基本学完了。

以上解释有没有解决大家的疑惑,如果还是觉得有疑惑的地方,欢迎大家踊跃提出,一起分享,共同进步!!!

有CSDN号的也可以帮忙点个关注,我会陆续更新其它UDS服务

  • 27
    点赞
  • 146
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 22
    评论
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心骗小白话

和我一起成长吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值