首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

UDS诊断基本语法

上一章小编介绍了UDS在汽车电控单元中的应用,UDS在电控单元中应用非常广泛,可以说95%以上的电控单元(ECU)都或多或少的支持UDS诊断。UDS是一种国际规范,是规范,就有相应的语法。下面我们介绍一下UDS的基本语法。

首先我们介绍一些基本的概念:

一、client/server,UDS采用的是client/server的模式,基本是Client发送一个请求报文,Server根据请求报文做出回应。Client一般情况下是指测试仪(Tester),Server一般是指电控单元(ECU)。

二、寻址模式,UDS一般有两种寻找模式,一个是物理寻址(physical addressing),是一种点对点的寻址模式,一条报文对应于单独一个Server(ECU);一个是功能寻址(functional addressing),一条报文对应本网络中所有Server(ECU),也就是说本网络中所有ECU都要对这条指令做出响应。

下面来说说基本语法:

Client的请求报文的语法一般格式如下:

SID+parameter1......parameterN

SID(request service ID):一般指请求服务ID号;

parameter:是指根据不同SID的不同,后面带不同的参数;

而Server(ECU)的回复一般有两种;

肯定响应:

SID+parameter1......parameterN

SID(positive response service ID):指响应服务ID,其值为request service ID + 0x40;

parameter:是指根据不同的positive response service ID后面带不同的参数;

否定响应

NR+ SID(request service ID) + NRC

NR: 代表这是否定响应,固定值为0x7F;

SID(request service ID):请求服务ID号;

NRC:是指否定响应码,根据不同的错误回复不同的否定响应码;

SID表

下面我们举一个例子,我们以ECU Reset(0x11)服务为例;

请求报文为0x11 0x01,其中SID为0x11,parameter1(子功能)为0x01,无其他parameter;

肯定响应报文为0x51 01,其中SID为0x51(0x11+ 0x40), parameter1(子功能)为0x01,无其他parameter;

否定响应为0x7F 0x11 0x33,其中NR为0x7F,SID为0x11,NRC(否定响应码)为0x33;

以上是最通用的语法规范;具体到每个服务还要具体细分,小编会在以后的文章中详细更新。希望大家喜欢,谢谢关注。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190813A0QXL500?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券