ECUReset (0x11) service
客户端使用ECUReset服务请求服务器重置。
该服务请求服务器根据嵌入在ECUReset请求消息中的resetType参数值的内容有效地执行服务器重置。ECUReset正响应消息(如果需要)应该在服务器执行重置之前发送。服务器重置成功后,服务器将激活defaultSession。
从ECU重置请求的正面响应消息之后,直到重置成功完成。建议在此期间,ECU不接受任何请求消息,同时发送响应消息。
子函数参数resetType被ECUReset请求消息用来描述服务器如何执行重置(suppressprspmsgindicationbit (bit 7)未显示)
Bits 6 – 0 | Description | Cvt | Mnemonic |
---|---|---|---|
0x00 | ISOSAEReserved This value is reserved by this document. | M | ISOSAERESRVD |
0x01 | ISOSAEReserved 这个值标识了一个“硬复位”的条件,它模拟了在服务器之前从电源(例如电池)断开后通常执行的开机/启动顺序。执行的操作是特定于实现的,不是由标准定义的。它可能导致将易失性存储器和非易失性存储器位置重新初始化为预定值。 | U | HR |
0x02 | keyOffOnReset 这个值表示类似于驾驶员开关点火钥匙的状态。这个复位条件应该模拟一个键-off-on序列(即中断开关电源)。执行的操作是特定于实现的,不是由标准定义的。通常非易失性内存位置的值被保存;易失性内存将被初始化。 | U | KOFFONR |
0x03 | softReset 这个值标识一个“软重置”条件,如果适用的话,它会导致服务器立即重启应用程序。执行的操作是特定于实现的,不是由标准定义的。一个典型的操作是重新启动应用程序,而不重新初始化以前学到的配置数据、自适应因素和其他长期调整。 | U | SR |
0x04 | enableRapidPowerShutDown 这个子功能适用于ecu不点火供电,但只有电池供电。因此,关机会强制休眠模式,而不是断电。睡眠意味着关机,但仍准备醒来(电池供电)。该子功能的目的是减少ECU在点火变为关闭状态后的待机时间。此值请求服务器启用并执行“快速电源关闭”功能。一旦“钥匙/点火开关”关闭,服务器应立即执行该功能。当服务器执行掉电功能时,它将直接或在定义的待机时间后转换到睡眠模式。如果客户端需要响应消息,而服务器已经准备好执行“快速断电”功能,则服务器应在启动“快速断电”功能前发送积极响应消息。接下来出现的“钥匙打开”或“点火打开”信号将终止“快速电源关闭”功能。说明此子功能仅适用于支持standby -by模式的服务器! | U | ERPSD |
0x05 | disableRapidPowerShutDown 此值请求服务器关闭之前开启的“快速断电”功能。 | U | DRPSD |
0x06-0x3F | disableRapidPowerShutDown | M | ISOSAERESRVD |
0x40-0x5F | vehicleManufacturerSpecific | U | VMS |
0x60-0x7E | systemSupplierSpecific | U | SSS |
0x7F | ISOSAEReserved | M | ISOSAERESRVD |
正响应消息
支持的NRC情况
NRC | Description | Mnemonic |
---|---|---|
0x12 | sub-functionNotSupported 如果不支持子功能参数,则发送此NRC。 | SFNS |
0x13 | incorrectMessageLengthOrInvalidFormat 如果消息长度错误,将发送此NRC。 | IMLOIF |
0x22 | conditionsNotCorrect 如果不满足ECUReset请求的标准,则应返回该NRC。 | CNC |
0x33 | securityAccessDenied 如果请求的重置是安全的,并且服务器没有处于解锁状态,那么NRC将被发送。 | SAD |