🚗 诊断栈核心指南
📘 车载诊断协议栈开发
01
诊断协议栈概述
架构、分层模型(OSEK/VDX、AUTOSAR)、ECU中的位置与作用
02
UDS协议基础
ISO 14229-1标准、服务分类、UDS报文格式
03
诊断会话控制 (0x10)
会话状态机、切换条件与超时、项目策略
04
ECU复位服务 (0x11)
复位类型、时序要求、复位后行为与数据保持
05
安全访问服务 (0x27)
种子与密钥、安全等级、算法实现、防破解
06
通信控制服务 (0x28)
报文使能/禁用、通信类型控制、网络管理协同
07
测试仪在线服务 (0x3E)
保持会话激活、超时配置、心跳机制
08
读取数据服务 (0x22)
DID定义与范围、读取流程、多帧传输
09
读取故障码服务 (0x19)
DTC状态掩码、子功能、快照与扩展数据
10
写入数据服务 (0x2E)
写入条件检查、安全访问前置、NRC处理
11
输入输出控制服务 (0x2F)
控制类型、安全机制、实际应用场景
12
例程控制服务 (0x31)
例程定义与ID、启动/停止/结果、典型例程
13
上传下载服务 (0x34/36/37)
请求下载、数据传输、退出、块大小协商、校验
14
NRC(负响应码)详解
ISO列表、常见NRC、优先级与处理逻辑
15
诊断时间参数
P2、P2*、S3定义、超时处理、性能影响
16
物理寻址与功能寻址
CAN标识符分配、物理/功能请求、网络拓扑影响
17
多帧传输机制 (ISO 15765-2)
单帧、首帧、连续帧、流控制帧、块大小
18
诊断栈软件架构
ASR、DCM、DEM、FIM层介绍
19
DCM模块详解
请求接收解析、服务分发、响应、NRC、状态机
20
DEM模块详解
事件定义存储、DTC状态位、老化与去抖
21
FIM模块详解
功能抑制条件、事件优先级、对UDS影响
22
诊断栈配置工具
Vector DaVinci、EB tresos、ISOLAR配置流程
23
诊断栈集成与测试
集成步骤、BSW配置、RTE映射、测试策略
24
诊断栈与CAN通信栈交互
CAN驱动、接口、状态管理器、网络管理影响
25
诊断栈与DoIP协议
DoIP基础 (ISO 13400)、TCP/UDP、路由激活
26
诊断栈与OTA升级
OTA架构、会话切换、安全访问、回滚机制
27
诊断栈性能优化
响应时间、内存占用、多核架构优化
28
诊断栈功能安全
ISO 26262要求、ASIL等级、故障检测与响应
29
诊断栈调试与问题排查
常见问题、日志分析、Trace工具使用
30
诊断栈开发实战案例
从需求到量产全流程、问题复盘、最佳实践