uds帧格式_UDS诊断帧

UDS诊断服务通常是通过CAN总线实现。对于CAN诊断帧有两种不同的分类方式,按照寻址方式可以分为物理寻址、功能寻址,按照帧类别可以分为单帧、首帧、流控帧、连续帧。

寻址方式

在总线上往往连着众多ECU设备(如图1所示),作为诊断设备既可以单独与某一ECU进行通信,也可以同时与所有总线上的ECU设备通信。图1 总线示意图

1. 物理寻址

物理寻址是指总线上始终只有一个ECU响应诊断设备发出的诊断命令,实现点对点通信,例如图1中总线上仅ECU A响应诊断设备的诊断命令。

2. 功能寻址

功能寻址是指总线上的所有ECU对可以同时响应诊断设备发出的诊断命令,实现一对多的通信方式,例如图1中ECU A、ECU B、ECU C 、ECU D可以同时响应诊断设备的诊断命令。

帧类别

对于帧的类型,通过需要发送的数据长度来确定。在正常寻址模式下,当数据长度小于等于7byte,则用单帧的形式发送,当数据长度大于7byte,数据需要分多帧才能发送完成,则需要使用到首帧、流控帧、连续帧,不同帧的机制如图2所示。图2 不同帧的机制

首帧是指发送的第一帧,目的是把前7byte数据发送给接收方,并告知接收方数据没有发完,然后接收方会回一帧流控帧,告知发送方是否可以接着发送,并且告知接收方一次最多能接收的数据量,以及发送方接下来发送的数据帧(连续帧)之间的时间间隔要求。

对于不同的帧,通过CAN消息的数据场中PCI(Protocol control information)来区分,图3、图4详细说明了不同帧的PCI的定义。图3 不同帧的数据场定义

以下是对PCI段的详细解释。图4 PCI 定义

其中:

DL:有效数据的长度,不包括PCIbyte;

FS:表示是发送方否可以继续传输消息,0表示可以继续发送,1表示等待发送,2表示数据溢出,一次发送的数据大于接收方所能接收的量;

BS:接收方一次能接收的数据最大量;

STmin:表示两个连续帧之间的最小时间间隔,参照图1中的定义;

SN:连续帧的序列号;

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值