【AUTOSAR】UDS协议的代码分析与解读(十)----UDS写入数据2Eh

8.13 写入数据 Write DataBy Identifier (2Eh)

此服务允许测试工具将数据写入由数据标识符指定的内部存储单元。ECU应在数据已写入非易失性 存储器后发送该服务的肯定应答。

8.13.1 报文格式

 64 写入数据服务的请求报文

Byte

Name

Cvt

Value  (Hex)

#1

RequestServiceIdentifier

M

2E

#2

#3

DataIdentifier[]=[

byte#1(MSB)

byte#2(LSB)]

M

M

00-FF

00-FF

4

#m+3

DataRecord[]=[

data#1

data#m]

M

U

00-FF

00-FF

 65 写入数据服务的肯定响应

Byte

Name

Cvt

Value  (Hex)

#1

PositiveResponseServiceID

M

6E

#2

#3

DataIdentifier[]=[

byte#1(MSB)

byte#2(LSB)]

M

M

00-FF

00-FF

8.13.2 支持的否定响应码

66 写入数据服务的否定响应码

Hex

Cvt

ErrorText

13

M

报文长度错

如果报文长度错误,发送此否定响应码

22

M

条件不满足

如果ECU的操作条件不满足执行相应动作的要求,发送此否定响应码。

31

M

请求超出范

如果ECU不支持求报文中的数据标识符, 或数据标识符只读, 发送此否定响应 

33

M

安全访问拒绝

如果与专用地相关的数据标识符处于保护状态并且ECU锁定, 发送此否定响应 

72

M

一般编程错误

如果向存储单元写入数据时ECU监测到错误,发送此否定响应码。

8.13.3 参数定义

附录B定义了h事业部强制要求的数据标识符。其他与ECU功能相关的数据标识符h事业部 及供应商的诊断工程师共同定义。

8.13.4 执行规定

a)该务请求报文只允许包含1ECU支持的数据标识符。

b)执行此服务求的任意动作时,系统供应商应确保ECU状态满足要求。

8.14 输入输出控制 Input Output Control By Identifier (2Fh)

此服务服务用于代替ECU输入信号的值、电控单元内部参数或控制电子系统的输出值。

8.14.1 报文格式

 67 输入输出控制服务的请求报文

Byte

Name

Cvt

Value  (Hex)

#1

RequestServiceIdentifier

M

2F

#2

#3

DataIdentifier=[

byte#1(MSB)

byte#2(LSB)]

M

M

00-FF

00-FF

#4

#5

#5+(m- 1)

ControlOptionRecord[]=[

inputOutputControlParameter

controlState#1

constrolState#m]

M

C1

C1

00-FF

00-FF

00-FF

#5+m

#5+m+(r- 1)

ControlEnableMaskRecord[]=[ controlMask#1

controlMask#r]

C2

C2

00-FF

00-FF

C1:此参数的存在取决data Identifier#1input Output Control Parameter

C2:此参数的存在取决于data Identifier#1

 68 输入输出控制服务的肯定响应

Byte

Name

Cvt

Value  (Hex)

#1

PositiveResponseServiceID

M

6F

#2

#3

DataIdentifier=[

byte#1(MSB)

byte#2(LSB)]

M

M

00-FF

00-FF

#4

#5

#5+(m- 1)

ControlStatusRecord[]=[

inputOutputControlParameter

controlState#1

controlState#m]

M

C1

C1

00-FF

00-FF

00-FF

C1:此参数的存在取决于dataIdentifier#1inputOutputControlParameter

8.14.2 支持的否定响应码

 69 输入输出控制服务的否定响应码

Hex

Cvt

ErrorText

13

M

报文长度错

如果报文长度错误,发送此否定响应码。

22

M

条件不满足

如果请求输入输出控制的条件不满足,发送此否定响应码

31

M

请求超出范

如下情况时,发送此否定响应码                              1.ECU不支持求的数据标识符值;                           2.输入输出制参数包含的值无效;                           3.controlOptionRecord中的一个或多个可用的controlStates记录无效;

33

M

安全访问拒绝

如果诊断工具请求一个受保护的数据标识符且ECU的安全特性为激活,发送 否定响应码。

8.14.3 参数定义

 70 输入输出控制类型参数的定义

Hex

Description

Cvt

00

返回控制至ECU returnControlTo ECU

此值指示ECU:诊断工具不再能通过输入输出本地标识符                           (inputOutputLocalIdentifier)控制输入信号,内部参数或输出参数。请求中 controlState节数: 0

肯定响应中controlState字节数:等于数据标识符对应的数据内容

M

01

复位至缺省值resetToDefault

此值指示ECU:请求通过输入输出本地标识符”  (inputOutputLocalIdentifier) 位输入信号,内部参数或输出参数至缺省值。

controlState字节数: 0

肯定响应中controlState字节数:等于数据标识符对应的数据内容

U

02

冻结当前状态freezeCurrentState

此值指示ECU:请求通过输入输出本地标识符”  (inputOutputLocalIdentifier)冻 结输入信号,内部参数或输出参数的当前状态。

controlState字节数: 0

肯定响应中controlState字节数:等于数据标识符对应的数据内容

U

03

shortTermAdjustment

此值指示ECU:请求通过RAM输入输出本地标识符                                       (inputOutputLocalIdentifier)调整输入信号,内部参数或输出参数的值至参数  controlOption值。(例如: 设置怠速空气控制阀门至一个特定的步骤数值, 设 置阀门的脉宽为特定值/占空比)

请求中controlState字节数:等于数据标识符对应的数据内容

肯定响应中controlState字节数:等于数据标识符对应的数据内容

M

8.14.4 执行规定

a)只有经授权的诊断工具才可以使用输入输出控制功能,而且只有在特定的车辆运行条件下该才能被激活。基本条件如下:

1)车辆低于特定速度, 此速度由h事业部及供应商共同制定,并在零部件诊断规范中说明; 2)激活的输入输出并不存在严重的故障条件(根据特定的ECU/系统来定义);

3)统不存在任何与操作者、驾驶员及乘客安全相关的隐患(根据特定的ECU/系统来定义)。 若上述任何一个条件不满足, ECU应该拒绝通信控制请求报文并发送否定响应码22h

b)每个激活的输入输出将保持激活状态直到:

1) 执行了ECU的硬件或软件复位;

2) 无论任何原因, ECU由非默认会话模式切换到默认会话模式;

3) 控制时间超过最大安全时间时(S3_server超时),ECU应重新对这些参数进行制;

4) ECU收到“returnControlToECU”的命令。

c)某些特殊的ECU可能会对该服务做特别的约束。这些需求需在该零部件诊断规范中描述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

大道生

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值