UDS在应用层的需求
UDS在应用层的需求
基本概念
Boot manager: 作用是检查应用程序是否有效
Boot software: 在服务器特定内存里面执行,负责boot ECU以及刷写。
应用层服务
提供的应用层服务
应用层协议
包括协议数据单元的组成,负响应的组成 略。
Response行为的定义
一般情况的响应
带子功能参数的响应
物理寻址带子功能参数的响应
功能寻址带子功能参数的响应
物理寻址&功能寻址不带子功能参数的响应
物理寻址&功能寻址并行请求消息
一般一个服务器端只有一套有效的诊断协议实例在运行,所以同时只能处理一个请求,无论是功能寻址还是物理寻址。当一条请求正在占用时,另外一条只有等到当前执行完发了response之后,才能被处理。
有两种情况需要被单独处理:
3E用来保持session,是可以绕过的,不影响其他请求。
如果服务器端是支持Legislated diagnostic请求的,当非Legislated diagnostic**时,收到一条Legislated diagnostic请求时,**的非Legislated diagnostic丢弃,切到default session,开始处理Legislated Diagnostic。如果在programming session下是例外的。
#刷写需求
出现下面几种情况,要能重新刷写,不至于boot不了
a) 突然掉电
b) 不接地了
c) 数据通信遭到破坏
d) 过压欠压
诊断中的一些概念
Operation Cycle:可能是上下电,可能是点火到熄火,由厂商定义
Pending status:在当前operation cycle或者上一个完整的operation cycle报错了,置1,只要当前operation cycle又不报错了,清0.
Confirmed:报错了但是没有达到confirm threshold(比如要求要在连续n个Operation Cycle)里面报错,那就是pending,要是连续超过n次才会confirmed。
Aging test:
pendingDTC清零,AgingCounter+1,直到Aging Threshold次数,ConfirmedDTC清零。