自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 问答 (1)
  • 收藏
  • 关注

原创 ECU刷新流程以及相关服务内容

一个刷写文件可能分为多个块,单个文件块的下载流程:诊断设备发送0x34服务,向ECU申请在某个内存地址下载指定大小的内容,ECU回复34服务,并要求每次36服务下载文件块的最大字节数,诊断设备会根据这个最大字节数,将文件块分割成多个块序列(如果每次传输的最大字节数大于下载数据的大小,就只需要一次),ECU在每个块序列下载完成后,正常响应。一个文件块下载完成后,发0x37服务停止下载,ECU响应0x37服务。全部文件块下载完毕后,通过0x31服务进行文件总校验。

2025-02-18 16:32:37 284

原创 DBC解析

DataBase CAN文件是一个标准的描述CAN总线数据的文件,用来定义CAN消息、信号和数据格式。DBC文件通常包含以下几类消息:1、CAN消息,每个CAN报文(即一个ID),每个message对应一个ID,且同一个DBC中的ID不能重复。2、信号:CAN消息中的每一个数据元素,包含特定的信息(例如车速、温度、转速),每个消息会定义多个信号signal,每个信号对应数据段的一个或多个bit,非信号复用模式下,每个信号所对应的数据段的位不能有交集。

2025-02-14 17:25:11 477

原创 UDS诊断

Unified Diagnostic Services,即统一诊断服务协议,是ISO-14229标准的一部分,是一种在汽车电子诊断系统使用的标准通信协议,广泛应用于车辆的控制单元(ECU)诊断、故障排除、安全访问、控制收发以及软件刷写。

2025-02-14 16:18:29 790

原创 CAN(FD)基础原理

在接收报文的过程中,当检测到总线上出现边沿时,依然会进行同步,此时不是改变同步段(SS)的起始位置,而是根据实际的边沿与预期的同步段(SS)的差值来调整PBS1和PBS 2来改变采样点位置进行调整。如果实际边沿是在SS的后面,节点B认为这是一个慢速信号,会延长PBS1段来增加这一位的时间来相应的延后采样点时间,这里增加或减少的长度是重同步跳转宽度SJW,若相位相差太大,一次没有得到完全补偿的话,将在下一个下降沿来时继续补偿。但是A的时间是由节点A的晶振提供,节点B的时间是由节点B的晶振提供的。

2025-02-06 17:51:55 975

原创 systemd unit管理单元

systemd是Linux系统初始化进程并管理所有进程的父进程,但是只有通过systemd启动的服务进程才会受到Unit管理单元的管理。active:如果一个服务已经启动成功,它将成功加入到systemd监控队列(job queue),此后将受到systemd监控和管理,此时该服务的状态为active。Sub(子状态):提供了更具体的信息,描述了服务在细节上的运行情况。failed:如果一个服务在启动过程中失败,进程崩溃、服务启动过程耗时过久导致超时,该服务的状态将处于failed状态。

2025-02-06 09:38:21 698

原创 前台进程、后台进程、孤儿进程以及Daemon类进程

当前终端的进程会被阻塞,直到前台进程完成,在此期间用户不能在终端输入其他命令。通常是在终端直接执行命令,例如sleep 30。

2025-02-05 14:28:19 612

原创 Qt学习笔记

Qt是一个基于C++的可跨平台的App和UI开发框架。:Windows、Ubuntu、CentOS、Android、鸿蒙、UOS(统信):就是可以在不同平台上直接运行的方式:编译好的程序可以直接在不同平台上运行,需要装解释器来支持,如Java、Python、Js:一份代码无需修改,可直接在不同平台上编译运行,需要编译环境或交叉编译支持,如C、C++。Qt的输出Qt工具1、Qt助手:文档阅读、发布(一般想给项目生成帮助文档,先对源码进行注释)2、Qt语言家:用于国际化翻译多语言文字切换。

2024-09-19 10:09:37 1076

原创 浅学C++

1、比照数据类型分配对应大小空间2、取变量名(字母、数字或下划线的组合,但不能以数字开头。区分大小写)3、变量可以在定义时初始化,也可以在定义稍后初始化。4、变量一定有首地址。5、局部变量(在函数内部定义的变量)在函数执行完毕后会被销毁,而全局变量(在所有函数外部定义的变量)在整个程序执行期间都存在。

2024-07-24 21:37:28 1757

原创 Linux

需要安装三个软件虚拟机:VMware-workstation-full-16.2.3-19376536.exe操作系统:ubuntu-20.04.3-desktop-amd64操作系统下载教程参考.iso 终端:MobaXterm(MobaXterm .. 使用ssh(协议)对服务器进行管理,默认端口:22)

2024-07-18 12:43:43 2086

原创 C语言核心背诵知识点

1、比照类型分配对应大小空间。2、取变量名(所有标识符都表示数据)3、赋初值为0,这里的不赋初值为乱值说的是栈上的变量。初始化全局变量分配到data段,未初始化全局变量分配到bss段,值为0静态局部变量不赋初值,值自动为0.4、变量一定有首地址,&为取地址符号。

2024-07-09 01:20:34 2434 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除