【AUTOSAR】UDS协议的代码分析与解读(十三)----UDS写入内存3Dh 诊断设备在线 3Eh

8.20 写入内存 WriteMemoryByAddress (3Dh)

此服务用于将记录值写入ECU内存。数据位置和数据块大小由Memory AddressMemory Size参数 定义。 AddressAndLengthFormatIdentifier值要求使用24h

8.20.1 报文格式

 84 写入内存服务的请求报文

Byte

Name

Cvt

Value

(Hex)

#1

RequestServiceIdentifier

M

3D

#2

AddressAndLengthFormatIdentifier

M

24

#3

#4

#5

#6

MemoryAddress[]=[

byte#1(MSB)

byte#2

byte#3

byte#4]

M

00-FF

#7

#8

MemorySize[]=[

byte#1(MSB)

byte#2]

M

00-FF

#n-(r- 1)

#n

Datarecord[]=[

data#1

data#r]

M

…U

00-FF

 85 写入内存服务的肯定响应

Byte

Name

Cvt

Value  (Hex)

#1

PositiveResponseServiceIdentifier

M

7D

#2

AddressAndLengthFormatIdentifier

M

24

#3#4#5 #6

MemoryAddress[]=[

byte#1(MSB)

byte#2

byte#3

byte#4]

M

00-FF

#7

#8

MemorySize[]=[

byte#1(MSB)

byte#2]

M

00-FF

8.20.2 支持的否定响应

86 写入内存服务的否定响应码

Hex

Cvt

ErrorText

13

M

报文长度错

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

22

U

条件不满足

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

31

M

请求超出范

下情况时,发送此否定响应码:

1.存储地址位于区间[$MA,($MA+$MS-$1)]中无效;

2.存储地址位于区间[$MA,($MA+$MS-$1)]中受限制;

3.请求报文中memorySize参数值大于ECU所支持最大值;

4.指定的addressAndLengthFormatIdentifier无效。

33

M

安全访问拒绝

如果在区间[$MA,($MA+$MS-$1)]中的存储地址受保护,并且ECU锁定,发送此 定响应码。

72

M

一般编程错误

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

8.20.3 参数定义

内存地址”  (MemoryAddress)长度为4字节。

此地址可以代表ECU内的物理地址,也可以被映射(例如,高位用于实现存储区选择)。如果地址 不是物理地址而是映射地址,映射关系应记录在ECU诊断文档中。

内存大小”  (MemorySize)长度为2字节。

8.20.4 执行规定

ECU应通过安全访问机制进行直接内存访问。

8.21 诊断设备在线 TesterPresent (3Eh)

此服务用于告知电控单元测试工具仍在线。该服务需周期性发送,用于重置S3server计时器并维持 当前激活的非默认诊断会话。

8.21.1 报文格式

 87 诊断设备在线服务的请求报文

Byte

Name

Cvt

Value  (Hex)

#1

RequestServiceIdentifier

M

3E

#2

ZeroSubFunction

M

00/80

 88 诊断设备在线服务的肯定响应

Byte

Name

Cvt

Value  (Hex)

#1

PositiveResponseServiceID

M

7E

#2

ZeroSubFunction

M

00

8.21.2 支持的否定响应

 89 诊断设备在线服务的否定响应码

Hex

Cvt

ErrorText

12

M

功能不支持

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

13

M

报文长度错

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

8.21.3 参数定义

表 90 子功能参数定

Hex

Description

Cvt

00

ZeroSubFunction

此参数值用于指示此服务不支持 suppressPosRspMsgIndicationBit  外的其他 功能。

M

01-7F

IS0  预留

M

8.21.4 执行规定

此服务没有特殊的执行规定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

大道生

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

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

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

打赏作者

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

抵扣说明:

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

余额充值