核心UDS诊断命令表(EOL电检场景)
| 服务ID | 服务名称 | 功能说明 | 典型用例 | 协议交互示例 |
|---|---|---|---|---|
| 0x10 | Diagnostic Session Control | 切换ECU诊断会话模式,包含子功能: 01(默认会话)、02(编程会话)、03(扩展会话)。 编程会话需通过扩展会话过渡,不同会话对应不同权限 |
EOL测试时需从默认会话切换至编程会话(0x10 02),以解锁刷写权限;扩展会话(0x10 03)用于参数配置。 | 请求:10 02响应: 50 02 00 22 01 F4(含P2Server_max和P2*Server_max参数) |
| 0x27 | Security Access | 安全验证分两步: 1. 发送奇数子功能(如0x01)请求种子(Seed); 2. 发送偶数子功能(如0x02)提交密钥(Key),算法需符合OEM规范 |
程序刷写前需完成安全验证,例如发送27 01获取种子,再通过加密算法生成密钥并发送27 02 [Key] |
请求:27 01响应: 67 01 12 34 56 78(返回Seed) |
| 0x3E | Tester Present | 维持非默认会话状态,子功能0x80表示无需ECU响应,避免会话超时回退 | 编程会话中周期性发送3E 80(间隔需小于P2*Server_max时间)以保持连接 |
请求:3E 80响应:无(子功能0x80不要求响应) |
| 0x2E | Write Data by Identifier | 通过DID(2字节标识符)写入配置数据,支持单帧(≤7字节)或多帧传输 | 写入VIN码(DID 0xF190):2E F1 90 [VIN数据]写入后需通过0x22服务验证 |
请求:2E F1 90 4C 48 56...响应: 6E F1 90(写入成功) |
| 0x22 | Read Data by Identifier | 通过DID读取ECU数据,支持动态数据(如传感器状态)和静态数据(如固件版本) | 读取软件版本(DID 0xF180):22 F1 80响应包含版本号及校验信息 |
请求:22 F1 80响应: 62 F1 80 56 32 31 30(版本V2.10) |
| 0x14 | Clear Diagnostic Information | 清除DTC及其关联的冻结帧数据,子功能0xFF表示清除所有DTC | EOL测试前发送14 FF FF FF清空历史故障码,确保测试环境干净 |
请求:14 FF FF FF响应: 54(清除成功) |
| 0x19 | Read DTC Information | 读取DTC状态及环境快照,子功能02(报告已存储的DTC)和0A(读取扩展信息) | 测试后检查ECU是否生成预期DTC:19 02 FF返回DTC列表及状态掩码 |
请求:19 02 FF响应: 59 02 [DTC列表] |
| 0x28 | Communication Control | 控制ECU通信行为,子功能0x01禁用非诊断报文,0x00恢复通信 | 刷写程序时禁用ECU正常通信(28 01),减少总线负载;完成后恢复(28 00) |
请求:28 01 01(禁用接收)响应: 68 01 01 |
| 0x85 | Control DTC Setting | 控制DTC记录功能,子功能0x02禁用记录,0x01启用记录 | 程序更新前禁用DTC记录(85 02),防止临时故障干扰测试结果 |
请求:85 02响应: C5 02(禁用成功) |
| 0x34/36/37 | 程序刷写服务 | 0x34(请求下载)、0x36(数据传输)、0x37(退出传输),用于分段传输固件 | 刷写流程: 1. 34 [地址][长度]初始化下载;2. 36 [数据块]分段传输;3. 37结束并校验 |
请求:34 00 00 00 00 00 10 00(下载16KB数据)响应: 74 [块大小] |
扩展说明:EOL电检关键流程与协议细节
1. 会话管理与安全验证流程
- 步骤:默认会话(0x10 01) → 扩展会话(0x10 03) → 安全访问(0x27) → 编程会话(0x10 02)
- 权限控制:编程会话下可执行刷写操作,需配合安全访问解锁;扩展会话支持参数读写,但需定期发送0x3E保活
2. 数据写入与校验机制
- DID规范:不同ECU的DID定义可能不同(如VIN码DID为0xF190或0xF0C1),需参考OEM文档
- 多帧传输:长数据需分帧发送(首帧FF标识+连续帧CF),网络层参数(STmin、BS)需与ECU匹配
3. 程序刷写优化策略
- 通信控制:刷写前通过0x28关闭非必要通信,提升总线效率
- 错误恢复:若传输中断,需重新初始化下载(0x34)并校验数据完整性
4. 故障码管理
- DTC格式:3字节编码(例:P0001),包含故障类型、系统标识及失效模式
- 快照数据:0x19服务可读取故障发生时的环境参数(如车速、电压)
注意事项与常见问题
- 否定响应处理
- 若收到
7F [SID] [NRC],需根据NRC调整操作(如NRC 0x22表示条件不满足,需检查会话状态)
- 时序要求
- 保活信号(0x3E)发送间隔需小于ECU的P2*Server_max时间(通常2-5秒)
- 车型适配性
- 不同车型可能限制部分DID或子功能(如某些ECU不支持0x2F输入输出控制)
参考来源:本文内容综合自ISO 14229标准及多篇技术文档,详细实现需结合具体车型诊断规范
.png)
_028.png)
的技术概念与应用-scaled.jpg)