ISO-15765-2 数据帧

6.5.1 N_PCI

每个N_PDU由N_PCI来标识

image-20201106171246857

Hex valueDescription
0单帧
对于未分段的消息,网络层协议提供了网络协议的优化实现,其消息长度仅嵌入在PCI字节中。 SingleFrame(SF)用于支持单个CAN帧的消息传输。
1首帧
第一帧(FF)只能用于支持无法在单个CAN帧中传输的消息,即分段消息。分段消息的第一帧被编码为FF。接收到FF后,接收网络层实体应开始组装分段消息。
2连续帧
发送分段数据时,FF之后的所有连续帧都被编码为连续帧(CF)。接收到CF后,接收网络层实体应将接收到的数据字节集合起来,直到接收到整个消息。接收实体应在无误地接收到消息的最后一帧后,将组装好的消息传递到相邻的上层协议层。
3流控帧
流量控制(FC)的目的是调节CF N_pdu发送到接收器的速率。指定了三种不同类型的FC协议控制信息来支持此功能。类型由协议控制信息的字段FlowStatus(FS)表示,如下所述。
4-F保留
ISO 15765的本部分保留了该值范围。

6.5.2 单帧N_PCI参数定义

6.5.2.1 SF N_PCI byte

image-20201109094005003

例如Tester发送数据:

03 01 31 51 55 55 55 55

服务端回复:

06 41 31 1D E6 51 01 55

首字节06,高四位为0,即N_PCItype = 0表示是单帧,低四位表示SF_DL,即单帧数据长度为6,其后的41 31 1D E6 51 01为此帧传输的数据,55为填充字节

6.5.2.2 SF_DL错误处理
  • 如果网络层接收到SF_DL等于0(0)的SF,则网络层将忽略接收到的SF N_PDU。
  • 如果网络层在正常寻址时收到SF_DL大于7的SF,或者在扩展寻址或混合寻址时收到SF_DL大于6的SF,则网络层应忽略收到的SF N_PDU。

6.5.3 首帧N_PCI参数定义

6.5.3.1 FF N_PCI bytes

image-20210508152350274

例如Tester发送请求数据:

07 01 0B 0C 0D 0E 0F 10 

服务端回复:

10 0F 41 0B 21 0C 0C 38

首字节为10,高四位为1,即N_PCItype = 1 ,表示首帧,首字节低四位和第二字节一起构成数据长度,Byte#1的低4位为FF_DL的最高位,所以此处为00F,即FF_DL = 00F,长度为15,后面的41 0B 21 0C 0C 38为前6个数据,后面还有9个数据在连续帧里面。

请求端在接收到首帧后应该立即发送流控帧,服务端接收到流控帧后才会继续发送剩下的数据。

注:FF_DL的值只有在扩展帧或者混合地址时才能为7,否则有效值只能为8-0xFFF.

6.5.3.3 FF_DL错误处理
  • 如果网络层接收到的FF的FF_DL大于可用的接收器缓冲区大小,那么这将被认为是一个错误条件。网络层应中止消息接收,并发送一个参数为FlowStatus = Overflow的FC N_PDU。
  • 如果网络层在使用正常寻址时收到一个FF_DL小于(8)8的FF,或者在使用扩展或混合寻址时收到一个FF_DL小于7的FF,则网络层应忽略收到的FF N_PDU,不发送FC N_PDU。

6.5.4 连续帧N_PCI参数定义

6.5.4.1 CF N_PCI byte

image-20210508160108040

连续帧只在流控帧后面出现,不会单独出现。例如Tester和服务端有如下交互:

请求端发送1:

07 01 0B 0C 0D 0E 0F 10 

服务端回复1(首帧):

10 0F 41 0B 21 0C 0C 38

请求端发送2(流控帧):

30 00 01 55 55 55 55 55 

服务端回复2(连续帧):

21 0D 00 0E 8C 0F 4D 10
22 01 4E 55 55 55 55 55

服务端回复2的内容即为连续帧,回复的第一帧首字节21,高四位为2,即N_PCItype = 2表示为,流控帧,首字节低四位为1,即SN = 1,表示连续帧的第二帧,回复的第二帧首字节低四位为2,即SN=2,表示连续帧的第二帧

首帧10 0F 41 0B 21 0C 0C 38中00F表示此次传输数据总长度为15,41 0B 21 0C 0C 38为前6字节数据

回复的连续帧第一帧21 0D 00 0E 8C 0F 4D 10加粗字节为7-13字节数据,连续帧第二帧22 01 4E 55 55 55 55 55加粗字节为14-15字节数据,最终拼接起来,接收到的数据为**41 0B 21 0C 0C 38 0D 00 0E 8C 0F 4D 10 01 4E **

6.5.4.2 SN参数定义

参数SN在CF N_PDU中用来指定连续帧的顺序

  • 对于所有分段消息,SN应以零(0)开始。FF应该被赋值为0(0),它在N_PCI字段中不包含显式的SequenceNumber,但是应该被视为段号0(0)。
  • 紧跟着FF的第一个CF的SN应设置为1(1)。
  • 在分段消息传输过程中,每传输一个新的CF, SN应增加1(1)。
  • SN值不受FC帧的影响。
  • 当SN达到十五(15)的值时,它将回绕并为下一个CF设置为零(0)。
6.5.4.3 SN错误处理

如果接收到带有错误序列号的CF N_PDU消息,则应在网络层中进行适当的错误处理。 消息接收将被中止,并且网络层将向相邻的上层发起一个N_USData.indication服务调用,其参数为<N_Result> = N_WRONG_SN。

6.5.5 流控帧参数定义

6.5.5.1 FlowControl N_PCI bytes

image-20210508162550549

流控帧数据交互见6.5.4.1中的流控帧,其数据为:30 00 01 55 55 55 55 55

Byte#1高4位为3,即N_PCItype= 3 ,表示流控帧,低四位为0,即FS = 0,表示发送方可继续发送连续帧

Byte#2为00,即BS = 00,表示发送方可直接连续发送剩余所有连续帧,且中间接收方不再发送流控帧

Byte#3为01,即STmin = 01,表示发送方后续连续帧的时间间隔为1ms

剩余的55都为填充字节。

FS: 流状态

发送方接收到流控帧 FC 的流状态 FS 来判断是否继续发送信息。流状态 FS 参数范围如下图所示:

16进制值说明
0继续发送(CTS)
流控帧继续发送参数,通过编码N_PCI第一字节为“0”,表示继续发送,它会促使发送方重新发送连续帧,该值意味着接受者准备好接收最大BS个连续帧
1等待(WT)
流控帧等待参数,通过编码N_PCI第1字节为“1“。它会促使发送方继续等待新的流控帧(N_PDU)的到来,并重新设置N_BS定时器
2溢出(OVFLW)
流控帧溢出参数,通过编码N_PCI第1字节为”2“。它会促使发送方终止拆分信息的发送,并且做传递参数<N_Result>=N_BUFFER_OVFLW的N_USData.confirm指示服务。该N_PCI流控参数值仅能跟在首帧N_PDU的流控帧中使用,并且仅能在首帧中FF_DL信息的长度超过了接收实体缓冲区大小时使用
3-F保留
该范围的值为该协议保留

FS 出错处理:如果接收到的 FC N_PDU 信息参数出错,网络层进行出错处理。信息的发送被中止,并且网络层传递一个参数 <N_Rwsult> = <N_INVALID_FS > 的结果通知上传至上层应用。

BS:块大小

允许发送方一次最大可发送连续帧 CF 次数,即一次发送连续帧帧数要小于等于块大小 BS。当块大小为 0 时,发送方可无限发送连续帧直至信息发送完毕,再无流控帧 FC。

STmin:流控帧间隔时间

STmin 是发送方发送连续帧 CF 与连续帧 CF 间的最小间隔时间,即 STmin 的度量是在一个连续帧发送完开始到请求下一个连续帧时的间隔时间。控制信息参数定义如下:

  • 00 - 7F:间隔时间范围为:0ms~127ms。该STmin单元的范围00-7F为绝对单位毫秒ms
  • 80 - F0:保留。该范围为协议保留
  • F1 - F9:间隔时间范围为:100us ~ 900us.该STmin单元的范围F1-F9最小分编为100微秒us,参数值F1代表100us,F9代表900us。
  • FA - FF:保留,该范围为该协议保留

注意:如果接收到的 STmin 参数值为保留值,则按照最长的 ST 值,即 7F->127ms,而不是使用接收到的 ST 值。

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: ISO-15765-2车载诊断标准是一份用于汽车电子模块和控制器之间进行通讯的标准文档。这个标准的主要目的是为了使得各种不同的汽车制造商的电子控制器系统之间可以互相通信,这样可以让车辆的维修和诊断更加容易和高效。 这个标准规定了一种双线CAN通信协议,这种协议可以在一个单一的总线上同时传输多个模块的消息。这样,可以让不同的电子模块之间可以交换信息,从而使得整个系统更加协调和高效。 这个标准也规定了一些诊断功能,使得工程师可以通过这些功能来诊断和修复汽车的电子系统。例如,这个标准规定了一些特定的诊断服务,使得工程师可以获取一些问题码,从而定位到实际的问题并进行修复。此外,这个标准还规定了一些数据记录和文件格式,使得整个故障诊断过程更加标准化和高效。 总的来说,ISO-15765-2标准是一个非常重要的文件,它让不同的汽车制造商可以更加轻松地进行通信和协作,也让工程师们更加容易地进行汽车电子系统的维修和诊断。 ### 回答2: ISO-15765-2是车辆诊断标准的一部分,通常被称为CAN诊断。这个标准涉及到的设备和系统,主要是汽车和其他交通工具上的控制单元,其目的是协助车辆诊断。这个标准是由国际标准化组织(ISO)制定的,其全称为ISO 15765-2:2016,是从2004年起实施的更新版。 ISO-15765-2采用了控制器区域网络(CAN)和服务指示器灯(MIL)的内部诊断系统,以帮助实现车辆复杂系统中故障的诊断。该标准建立了一个通用的数据格式,使得诊断工具可以与多种品牌和类型的车辆控制单元通信。同时,ISO-15765-2也规定了使用的通信协议,使得通信变得更加有效和标准化。 为了实现ISO-15765-2的诊断要求,一些新的技术也被引入到了汽车的硬件和软件系统中。这些技术包括控制器区域网络(CAN)和车辆网络通信协议(VSCP) ,并要求制造商加入能够访问CAN总线的官方API的控制单元开发。这使得诊断变得更加标准化和公正。 总之,ISO 15765-2是一部非常重要的标准,对于车辆诊断和维修来说至关重要。它确保了通信协议的标准化和控制单元的开发要求,使得诊断和维修工作更加高效和可靠。 ### 回答3: ISO-15765-2车载诊断标准是汽车行业中通用的诊断通讯协议,它规定了汽车在进行诊断、调试、故障检测等方面的通讯标准,以确保不同车型之间的兼容性和统一性。 该标准通常与CAN总线协议配合使用,实现在汽车电子控制单元(ECU)和诊断工具之间的数据传输。它包括了数据帧结构、诊断状态管理、流控制和错误管理等核心功能,使得诊断工具能够向ECU发送指令来读取和修改相关的参数。 ISO-15765-2标准在实际应用中被广泛采用,其在监控车辆的性能和故障检测方面具有重要作用。它不仅为汽车制造商和诊断设备提供了一种标准化的通讯接口,还有助于加速故障的排除和修复,提高了汽车的安全性和可靠性。 该标准的详细中文版提供了更便于理解和实施的语言,为从事汽车诊断和维修的专业人士提供更好的参考资料。总体来说,ISO-15765-2车载诊断标准的实施将对汽车行业的可持续发展产生积极影响。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值