UDS关于(0x2E)服务通过标识符写入数据

WriteDataByIdentifier服务允许客户端向服务器特定位置写入数据,如编程配置信息或重置某些值。服务涉及的数据标识符可能是安全或非安全的,并且服务器可能限制某些写入操作。否定响应代码包括消息错误、条件不正确、请求超出范围和安全访问被拒绝等。举例说明了通过此服务进行VIN编程的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.服务简介

     WriteDataByIdentifier服务允许客户端在由所提供的数据标识符指定的内部位置将信息写入服务器。

   客户端使用WriteDataByIdentifier服务向服务器写入数据记录。数据由dataIdentifier标识,可能是安全的,也可能不是安全的。

   动态定义的数据标识不得与此服务一起使用。车辆制造商有责任在执行此服务时满足服务器条件。此服务的可能用途包括:

 a. 将配置信息编程到服务器中(例如VIN号)

 b. 清除非易失性存储器

 c. 重置学习值

 d. 设置选项内容

注:服务器可能会限制或禁止对某些数据标识符值的写入访问(由系统供应商/车辆制造商针对只读标识符等定义)。

2.请求消息

2.1 请求消息定义

 2.2 请求消息子功能参数$Level(LEV_)定义

此服务不使用子函数参数。

2.3 请求消息数据参数定义

dataIdentifier

此参数标识客户端请求写入的服务器数据记录(有关详细的参数定义,请参见UDS关于DID数据传输功能单元数据参数定义章节)。

dataRecord

此参数提供与客户端请求写入的dataIdentifier相关联的数据记录。

3.肯定响应消息

3.1肯定响应消息定义

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

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

dataIdentifier

此参数是请求消息中数据参数dataIdentifier的应答。

4.支持的否定响应代码(NRC_)

该服务应执行以下否定响应代码。下表中记录了每个响应代码发生的情况。如果错误场景适用于服务器,则应使用列出的否定响应。

NRC代码代名词描述
0x13消息长度不正确或格式无效如果信息长度错误,则应发送此NRC。
0x22条件不正确如果服务器的操作条件不满足,则应发送该NRC以执行所需的操作。
0x31 请求超出范围

如果出现以下情况,则应发送本NRC:

a.服务器不支持请求消息中的dataIdentifier,或者支持dataIdentifier用于只读目的(通过ReadDataByIdentifier服务)

b.dataIdentifier之后请求消息中传输的任何数据无效(如果适用于节点)

0x33安全访问被拒绝如果引用特定地址的数据标识符是安全的,并且服务器未处于解锁状态,则应发送该NRC。
0x72常规编程失败如果服务器在写入内存位置时检测到错误,则应返回此NRC

5.例子

假设

本子条款规定了执行WriteDataByIdentifierservice的示例需要满足的条件。

本例中的服务不受服务器的任何限制。此示例演示了通过两字节数据标识符0xF190进行VIN编程。

示例#1:写入数据标识符0xF190(VIN)

定义了WriteDataByIdentifier肯定响应消息流示例#1。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值