【车载开发系列】UDS诊断---写入内存($0x3D)

news2024/10/5 20:26:55

【车载开发系列】UDS诊断—写入内存($0x3D)

UDS诊断---写入内存($0x3D)

    • 【车载开发系列】UDS诊断---写入内存($0x3D)
    • 一.概念定义
    • 二.报文格式
      • 1)请求报文
      • 2)肯定响应
      • 3)否定响应

一.概念定义

  1. 写入内存WriteMemoryByAddress(3Dh)
  2. 此服务用于将记录值写入 ECU 内存。数据位置和数据块大小由 Memory Address和Memory Size 参数定义。
  3. 通常,0x22和0x2E成对使用,0x23和0x3D成对使用,这几个服务用于诊断数据的基本读写操作。
  4. 0x3D是根据地址写入存储器服务用于向电控单元的一个或多个连续存储单元写入数据。该服务主要在电控单元开发阶段时写入无法通过其它诊断服务修改的数据的时候使用。
  5. 因为是直接写入ECU的内存当中,所以要求预先通过安全控制机制。不过建议实际还是少用为妙。
  6. MemoryAddress和MemorySize可以参照0x23服务。

二.报文格式

1)请求报文

  1. AddressAndLengthFormatIdentifier这个是地址和长度格式标识符。它有一个字节构成,分别用4个bit位标识MemorySize和MemoryAddress。一般情况下固定为0x24。
  2. bit0-3:memoryAddress 这里4是表示可寻址内存为4GB-1的意思
  3. bit4-7:memorySize 这里2是可管理大小为64KB的意思。
    在这里插入图片描述

2)肯定响应

  1. 参数“内存地址”(MemoryAddress)长度为4 字节。
    此地址可以代表 ECU 内的物理地址,也可
    以被映射(例如,高位用于实现存储区选择)
  2. 参数“内存大小”(MemorySize)长度为2字节。
    在这里插入图片描述

3)否定响应

常见用到的否定响应码如下定义。
在这里插入图片描述

Hex描述Description
0x13报文长度错误incorrectMessageLengthOrInvalidFormat
0x22条件不满足conditionsNotCorrect
0x31请求超出范围requestOutOfRange
0x33安全访问拒绝securityAccessDenied
0x72一般编程错误generalProgrammingFailure

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

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

相关文章

Redis实战——消息队列

目录 1. 什么是消息队列? 2. 基于List结构模拟消息队列 3. 基于PubSub的消息队列 4. 基于Stream的消息队列 4.1 基于Stream的单消费者模式 4.2 基于Stream的消息队列-消费者组 1. 什么是消息队列? 字面意思就是存放消息的队列。最简单的消息队列模…

学习参数化计算优化风扇定位step by step

一、写在前面 本教程的目的是演示ANSYS Icepak的参数和优化功能。假定读者已经熟悉ANSYS Icepak界面,但是缺乏实战经验。 在这个案例中,读者可以掌握: 1、使用Network网络热阻Block来模拟IC芯片封装模型。 2、将变量定义为参数并通过参数…

算法竞赛入门【码蹄集进阶塔335题】(MT2226-2250)

算法竞赛入门【码蹄集进阶塔335题】(MT2226-2250) 文章目录算法竞赛入门【码蹄集进阶塔335题】(MT2226-2250)前言为什么突然想学算法了?为什么选择码蹄集作为刷题软件?目录1. MT2226 36进制22. MT2227 36进制33. MT2228 36进制44.…

电商、线上教育、在线医疗等必备资质——ICP许可证 。

危中有机,疫情也概莫能外。一场突如其来的疫情,引发了消费、健康、办公、学习等领域的新变革,电商、短视频、游戏、线上教育、在线医疗、知识付费等“互联网”项目,再次迎来发展机遇。 然而,如果想要借助互联网进行经…

[附源码]Python计算机毕业设计大学生网上书店Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

type 与 interface

type 与 interface 官方文档是这么说的: For the most part, you can choose based on personal preference, and TypeScript will tell you if it needs something to be the other kind of declaration. If you would like a heuristic, use interface until you…

基于C#+SQL Server2008实现(WinForm)学生宿舍管理系统【100010029】

1 概述 本次课程设计是数据库课程设计,我选的是学生宿舍管理系统,功能块主要是宿舍管理、学生管理、出入登记和来访登记,目的在于将学生宿舍的管理实现信息化,监控学生宿舍的情况防止意外发生。 课程设计任务的需求分析 2.1设计…

01算法的概念

开始系统学习算法啦!为后面力扣和蓝桥杯的刷题做准备!这个专栏将记录自己学习算法是的笔记,包括概念,算法运行过程,以及代码实现,希望能给大家带来帮助,感兴趣的小伙伴欢迎评论区留言或者私信博…

Day828.多线程原语:管程 -Java 并发编程实战

多线程原语:管程 Hi,我是阿昌,今天学习记录的是关于多线程原语:管程的内容。 并发编程这个技术领域已经发展了半个世纪了,相关的理论和技术纷繁复杂。 那有没有一种核心技术可以很方便地解决的并发问题呢&#xff1…

JAVA毕业设计——基于SpringBoot的健身房管理系统(源代码+数据库)

github代码地址 https://github.com/ynwynw/gym-public 毕业设计所有选题地址 https://github.com/ynwynw/allProject 基于SpringBoot的健身房管理系统(源代码数据库) 一、系统介绍 系统层次结构图如下: 管理员登录模块会员管理模块教练管理模块课程管理模块器材…

基于Java+SQL Server2000实现(界面)学生选课管理系统【100010025】

学生选课管理系统 二、需求描述 本系统是一个单机版的小型的学生选课管理系统,在本系统中,开发了一个面向管理员、学生和教师这三个对象的教务平台,对学生提供的服务有登录、选课、、修改登录密码、和查询成绩这几个服务,所选课…

第二季5:配置视频捕获(step3:VI部分)

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 前言 本文将详细介绍博文第二季3:sample_venc.c的整体分析提及的“配置视频捕获”。 该部分主要涉及以下步骤: 5、配置MIPI6、初始化ISP7、运行ISP线程8、配置开启VI 设备捕…

Mybatis 参数处理器注入配置解析流程

参数处理器的作用 Mybatis作为一个ORM框架, 其最原始的本质就是JDBC,对于JDBC的使用步骤中有2步和参数处理器有关, 就是给预处理器PreparedStatement 设置参数以及通过结果集获取字段值。 这两个步骤在Mybatis中已经成为框架底层逻辑流程&am…

【K8S系列】第十一讲:包管理神器-Helm

目录 序言 1.背景介绍 1.1 k8s 简单介绍 1.2 k8s部署挑战 2.Helm 2.1 Helm介绍 2.1 使用优势: 3.Helm模块 3.1 Helm 3.1.1 安装Helm 3.2 Chart 3.2.1 Chart 基本介绍 3.2.2 Chart目录结构 3.3 Repoistory 3.4 Config 3.5 Release 4.投票 序言 当…

Windows及Linux系统查找某个端口和文件被占用

概述 开发中很常见的问题,每次遇到这个问题,都是去Google搜索,不一定能搜到满意的答案,有点耗时,故记录一下,得到本文。 端口被占用,导致IDEA启动应用失败。又或者某个文件被某个未知的应用使…

c#入门-抽象类

抽象类 有些类存在的意义就是为了让别的类继承。自己本身不应该具有实例。例如 class 单位 {public int 生命; } class 建筑 : 单位 {public int 护甲; } class 英雄 : 单位 {public int 护盾; } class 小兵 : 单位 {public int 经验; }可以使用abstract把他声明为抽象类。 抽…

Linux查找find命令全面剖析

Linux查找find命令全面剖析 1. 文件查找 在文件系统上查找符合条件的文件 1.1 简述 locate 命令 非实时查找(数据库查找) 依赖于事先构建的索引,索引的构建是在系统较为空闲时自动进行(周期性任务) 手动更新数据库(updatedb),索引构建过程需要遍历整…

【物理应用】基于Matlab模拟13自由度摩托车模型

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

Python使用Selenium WebDriver的入门介绍及安装教程

Selenium WebDriver 入门一、什么是Selenium WebDriver二、安装Selenium WebDriver2.1 安装selenium类库2.2 安装浏览器驱动2.3 配置环境变量三、编写第一个Selenium脚本一、什么是Selenium WebDriver WebDriver 以本地化方式驱动浏览器,就像用户在本地或使用 Sele…

[附源码]Nodejs计算机毕业设计基于Java网上玩具商店Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…