UDS 诊断教程(一)

UDS(统一诊断服务)按照ISO-14229系列标准定义,主要应用于汽车诊断。该服务涵盖应用层内容,定义了诊断请求request和响应response的格式。请求分为有sub-function和无sub-function两种类型,而response分为positive和negative两类,用于反馈请求执行情况。UDS通过规定request和response的结构,确保诊断通信的标准化和高效性。
摘要由CSDN通过智能技术生成

UDS 由 ISO-14229系列标准定义,ISO 14229-1 定义了诊断服务,不涉及网络及实

现,只有应用层的内容。而 ISO 14229-3则定义了 UDS 在 CAN总线上的实现。

诊断通信的过程从用户角度来看非常容易理解,诊断仪发送诊断请求(request),

ECU给出诊断响应(response),而 UDS 就是为不同的诊断功能的 request 和

response定义了统一的内容和格式。 

最近关于 UDS 的一系列专栏文章只关注应用层的诊断服务,忽略下层的通信机制。

Diagnostic request  的格式: : 

Diagnostic request 的格式可以分为两类:一类是拥有 sub-function 的,另一类是没

有 sub-function的,如下面两张图所示。Service ID(以下简称 SID)的长度固定为 1

个字节,代表了这条诊断命令执行的什么功能。sub-function 的长度也是 1 个字节,

它通常表示对这个诊断服务的具体操作,比如是启动、停止还是查询这个诊断服务。

而后面的 parameter则根据各个诊断服务的不同具有不同的内容,长度和格式并没

有统一规格,它用于限定诊断服务执行的条件,比如某个诊断服务执行的时间等。

parameter的一个重要应用是作为标识符,标识诊断请求要读出的数据内容,我会

在后续的文章里详细讲述各个诊断服务的应用。

拥有 sub-function 的诊断请求

无 sub-function 的诊断请求

有一点要补充的是,其实 sub-function 严格来说是 7个 bit,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值