【车载开发系列】UDS诊断---写入数据($0x2E)

news2024/11/17 17:35:36

【车载开发系列】UDS诊断—写入数据($0x2E)

UDS诊断---写入数据($0x2E)

    • 【车载开发系列】UDS诊断---写入数据($0x2E)
    • 一.概念定义
    • 二.应用场景
    • 三.报文格式
      • 1)请求报文
      • 2)肯定响应
      • 3)否定响应
    • 四.特记事项

一.概念定义

  1. 根据ISO14119-1标准中所述,诊断服务2E主要用于Client向Server(ECU)通过DID的方式写入相关的数据。
  2. 2E服务作为诊断服务中的基础服务,可以简单理解为就是一个用于写入ECU数据的外部接口,可实时获取软件内部的相关的状态信息。
  3. WriteDataByIdentifier按标识符写数据
    该服务不含有sub-function的参数
  4. 服务器可以限制或禁止对某些 DID 值(由供应商/主车厂 定义为只读的 DID)的写访问以提高自身的安全性。
  5. 0x2C(DynamicallyDefineDataIdentifier)服务不得与此服务一起使用

二.应用场景

  1. 在整车下线的过程中写入相关配置信息,如常见的VIN码;
  2. 清除NVM;
  3. 重置已写入到Flash中的数据;
  4. 其他需要写入内部相关参数的场合;
    内部测试时需要写入相关测试用状态和数据的场合

三.报文格式

1)请求报文

dataIdentifler(数据标识符DID)是客户端请求消息,它的大小为2字节,例如:VIN码(0xF190,通常该数值用于表示车辆唯一标识的数据标识符)。一般常用标识符如下(具体根据整车厂的诊断需求文档来定):

  1. 版本信息相关
    软件版本号(数据内容包含如:软件版本,时间,修订次数等信息),硬件版本号以及FBL版本号。
  2. 内部数据相关
    车辆总里程,ECU供电电压,车辆VIN码(每辆车都有它唯一标识符,即VIN码)等。
  3. 诊断相关
    当前诊断会话(和诊断相关的,通过读取该DID信息,ECU返回当前诊断处于哪个会话模式)
  4. IO Control标识符
    属于0x2E服务,比如通过该服务控制远光灯打开,也需要DID用来标识下该功能。
  5. Routine Control标识符
    是0x31例行控制服务,例如在通过诊断FBL更新程序之前,需要检查下更新环境是否满足,如:车速是否低于2km/h,电源电压是否满足刷写要求等。
    在这里插入图片描述

2)肯定响应

在这里插入图片描述

3)否定响应

在这里插入图片描述

HexDescription描述
0x13incorrectMessageLengthOrInvalidFormat报文长度错误
0x31requestOutOfRange请求超出范围
0x33securityAccessDenied安全访问拒绝
0x72generalProgrammingFailure一般编程错误

四.特记事项

  1. 允许测试工具将数据写入由数据标识符指定的内部存储单元。
  2. 该服务请求报文只允许包含1个ECU支持的数据标识符。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/70528.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

技术合集 | 【MySQL技术专题】「数据库锁技术」深入浅出透析MySQL数据库的锁基础概念和原理(上下全)

上篇 前提介绍 在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足。 本文内容 本文主要介绍:行级锁、表级锁、页级锁的相关概念以及原理介绍 本文主要介绍:共享锁、排它…

论文速读系列二:YOLO3D、PIXOR、HDNET、Voxel-FPN、Fast Point RCNN

如有错误,恳请指出。 参考网上资料,对一些经典论文进行快速思路整理 文章目录1. YOLO3D2. PIXOR3. HDNET(PIXOR)4. Voxel-FPN5. Fast Point RCNN1. YOLO3D paper:《YOLO3D: End-to-end real-time 3D OrientedObject B…

领英怎么用多个账号一起开发客户?进阶知识

1.如何注册账号? LinkedIn经历调整 2021年12月14日起,领英(LinkedIn)正式被改版为领英职-场。在改版后的领英职-场上,我们既无法进行主动搜-索客户,添-加好友,也无法查看和发布动态内容,完完全全的变成了一…

ChatGPT 常见错误原因及解决方案:报错、回答不完整等

最近,由人工智能实验室 OpenAI 发布的对话式大型语言模型 ChatGPT 火得一塌糊涂。它可以与人类轻松地对话,无论是多么奇葩的问题 ChatGPT 都不在话下。在体验 ChatGPT 的同时我们也会遇到各种各样的问题,这里我总结了其对话过程中可能会发生的…

springboot中如何实现跨域请求

Springboot中如何处理跨域请求 一.什么是跨域? 我们知道Url的一般格式:协议 域名(子域名 主域名) 端口号 资源地址 比如: https://www.itquanmingxing.cn:8080/users 是由https www itquanmingxing.cn 8080 users组成…

普通程序员可以怎么做搞钱程序?

最近海洋问题实在是很严重,人类活动带来的垃圾污染等问题使海洋生物得到了很大的压力。 每年鱼类等海洋生物体内的塑料海量越来越多,不仅仅是由于日常人类日常使用的垃圾袋引起的。 还有很多方面的原因,最直接的因素就是去看海的游客遗留下…

云计算自学笔记(不定期更新)

管道命令使用 linux管道相关命令__小笼包_的博客-CSDN博客_linux管道命令 [cut ]:命令的功能是用于按列提取文件内容 按照字符提取命令:head -2 2.txt | cut -c 5 查看前两行,并按照字符提取第五个字符 -c 按照字符提取 截取出…

剑指Offer40——最小的k个数

摘要 剑指 Offer 40. 最小的k个数 一、排序方法 1.1 排序的方法分析 对原数组从小到大排序后取出前 k 个数即可。 1.2 复杂度分析 时间复杂度:O(nlog⁡n)O,其中 n 是数组 arr 的长度。算法的时间复杂度即排序的时间复杂度。 空间复杂度:…

MQ高级(四)MQ集群

一、集群分类 RabbitMQ的是基于Erlang语言编写,而Erlang又是一个面向并发的语言,天然支持集群模式。 RabbitMQ的集群有两种模式: (1)普通集群:是一种分布式集群,将队列分散到集群的各个节点&…

【Flink】复杂事件处理CEP底层实现(有限状态机)和应用

文章目录一 Flink CEP简介1 什么是复杂事件处理CEP2 Flink CEP(1)导入依赖(2)代码编写(3)优化模板3 实现CEP底层 -- 有限状态机4 使用CEP处理超时事件一 Flink CEP简介 1 什么是复杂事件处理CEP 一个或多…

239页11万字新型智慧城市运营中心IOC大数据平台建设方案

目录 1 概述 1.1 建设目标 1.2 建设内容 1.3 建设步骤 2 项目建设方案 2.1 总体设计方案 2.2 支撑平台方案 2.2.1 数据治理平台 2.2.2 可视化平台 2.2.3 城市感知平台 2.3 应用系统方案 2.3.1 综合监测系统 2.3.2 事件管理系统 2.3.3 联动指挥系统 2.3.4 辅助决策…

自定义镜像上传阿里云

目录标题一、Docker制作jdk镜像1.jdkv.1.0的制作1.1创建文件夹上传jdk的安装包,和在同级目录下编写Dockerfile文件1.2.编写 Dockerfile 文件1.3.执行Dockerfile文件,初次依赖镜像的时候会下载相应镜像2.jdk2.0的制作3.jdk3.0的制作二、Docker镜像上传至阿里云前期准…

19.5 迭代器的概念和分类

一:迭代器基本概念:第十三章第九节 迭代器:是一个“可遍历STL容器全部或者部分元素”的对象(行为类似于指针的对象); 迭代器用来表现容器中的某一位置;迭代器紧密依赖于容器,迭代器…

2023年天津仁爱学院专升本动画、化学工程与工艺专业介绍

2023年天津仁爱学院专升本专业课动画专业、化学工程与工艺专业介绍 (一)动画专业 动画专业以行业发展对应用型人才需求为导向,不断提高学生就业质量为目标,针对学生特点,积极拓展动画应用领域,设有影视后期…

JSP SSH超市管理统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 JSP 超市管理统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发 JSP SSH超市管理统myeclipse开发…

【Leetcode每日一题】子序列宽度之和,匹配子序列的单词数,最大平均值和的分组

891. 子序列宽度之和 计算的是【贡献】。 首先观察发现,顺序不影响结果。然后比如1,作为最大元素贡献为0,而作为最小元素贡献为每个子序列的【最大-1】,一共有多少个作为最小元素的子序列,对答案的贡献就是-1*(个数)。…

【✨十五天搞定电工基础】正弦交流电路的分析(下)

目录 五、复杂正弦交流电路的分析(下) 六、功率因数的提高 七、谐振电路 1、串联谐振 2、并联谐振 八、课后习题 1、正弦量三要素,相位 2、RLC串联问题 3、复杂正弦交流电路问题 4、谐振问题 五、复杂正弦交流电路的分析&#x…

Metabase学习教程:权限-4

高级数据沙盒:限制对列的访问 了解如何使用已保存的SQL查询对表进行沙盒处理,并根据用户属性限制用户可以查看的列。 我们的文章行权限涵盖了沙盒(商业版本). 我们将沙盒定义为一种根据用户身份指定用户可以访问哪些数据的方法,…

【TOTP】基于时间的动态密码及其工程实践

探究了常见的动态密码的实现方式及其底层原理,并基于java做出了工程实践。 文章目录A.来源于一个现象的好奇B.2FAC.TOTP1.什么是TOTP2.原理详解(基于java-totp项目分析)3.这样真的安全吗4.常见的支持TOTP的软件1.Google Authenticator2.Micro…

RCNN学习笔记-MobileNet3

更新Block(bneck倒残差结构) 1.加入SE(自注意力模块squeeze-and-excite bottleneck)模块。当stride1(高和宽是不会变化的)且inputc outputc才有shortcut连接。 相反,我们将它们全部替换为扩展层中通道数量的1/4。我…