UDS时间参数学习(应用层+网络层+会话层+传输层)

目录

一、应用层时间参数

[1.1 定义](#1.1 定义)

[1.2 与0x10服务的联系](#1.2 与0x10服务的联系)

二、会话层时间参数

[2.1 定义](#2.1 定义)

[2.2 应用](#2.2 应用)

三、传输层时间参数

[3.1 定义](#3.1 定义)

四、网络层时间参数

[4.1 定义](#4.1 定义)


一、应用层时间参数

1.1 定义

|------------------|------------------------------------------------|---------|------------------|--------|
| 时间参数 | 含义 | Min | Max/Time out | 单位 |
| P2 Client | 诊断工具成功发送诊断报文请求之后,等待ECU回复诊断响应的时间间隔。 | - | 150 | ms |
| P2 Server | ECU接收到诊断请求之后到开始发送诊断报文的时间间隔。 | 0 | 50 | ms |
| P2* Client | 诊断工具接收到NRC 0x78后继续等待ECU响应的时间间隔 | - | 5100 | ms |
| P2* Server | ECU发送NRC 0x78之后继续发送下帧诊断响应报文的时间间隔 | 0 | 5000 | ms |
| P3 Client (Phys) | 诊断工具成功发送物理寻址诊断请求之后,且无需ECU回复继续发送下次物理寻址诊断请求的时间间隔 | 50 | - | ms |
| P3 Client (Func) | 诊断工具成功发送功能寻址诊断请求之后,且无需ECU回复继续发送下次功能寻址诊断请求的时间间隔 | 50 | - | ms |

注意:诊断时间参数来源于行业标准的协议文档:ISO15765-2和ISO14229-1/2/3,除非客户自定义修改,否则基本是协议文档上默认的数值。

诊断工具与ECU之间的诊断定时关系如下图:

1.2 与0x10服务的联系

P2 Server与P2* Server,这两个参数在0x10服务中得以体现,格式如下:

SID+0x40\] + \[sub-function\] + \[sessionParameterRecord

这里的sessionParameterRecord具体展开依据规范ISO 14229-1中如下表,其中要注意分辨率:

具体参考以前的文章------《汽车诊断服务(UDS------0x10服务解析)》,里面有示例,更清晰,链接如下:https://blog.csdn.net/qq_54112829/article/details/150573211?fromshare=blogdetail&sharetype=blogdetail&sharerId=150573211&sharerefer=PC&sharesource=qq_54112829&sharefrom=from_linkhttps://blog.csdn.net/qq_54112829/article/details/150573211?fromshare=blogdetail&sharetype=blogdetail&sharerId=150573211&sharerefer=PC&sharesource=qq_54112829&sharefrom=from_link

二、会话层时间参数

2.1 定义

|-----------|--------------------------------------------------------------------------------------|---------|------------------|--------|
| 时间参数 | 含义 | Min | Max/Time out | 单位 |
| S3 Client | 诊断工具为了保持非默认会话而发送0x3E服务请求报文的时间间隔 | 0 | 4000 | ms |
| S3 Server | 没有接到任何诊断报文(不一定是3E服务,可以是其他服务请求报文)时保持在非默认会话模式的时间,如果ECU没有接收到任何诊断报文,则退出非默认会话模式,进入默认会话模式。 | - | 5000 | ms |

2.2 应用

这两个时间参数主要用在保持在某一个会话模式下,因为某些服务必须在特定的会话模式下才能执行,此时应用到3E服务。

诊断工具与ECU之间的诊断定时关系如下:

三、传输层时间参数

3.1 定义

|------------|-----------------------------------------------------------------------------------------------|-----------------------------------------------------------|
| 时间参数 | 含义 | 备注 |
| Block Size | 简称"BS",表示接收方在发送流控帧之后,发送方被允许连续发送的最大帧数目。该参数与STmin一般同时出现。两参数主要用于诊断报文传输多帧(首帧FF,流控帧FC,连续帧CF)时会使用到。 | * 设置为0时,表示发送连续帧没有限制; * 设置为8,表示发送方最多能连续发送8帧CF就会继续收到接收方的FC。 |
| STmin | 接收方发送流控帧之后,发送方发送的连续帧之间的时间最小间隔。 | * 设置为0,表示对于发送方发送CF的最小时间没有要求。 |

注意:BS与Stmin的大小可用来评估接收方的接收能力,如果都为0,表示接收方接收能力最强。

四、网络层时间参数

4.1 定义

注:网络层用的协议是CAN协议,规范是ISO 15762-2

|----------------|-----------------------------------------------------------------------------------------------------------------------------------|---------|
| 时间参数 | 含义 | 控制方 |
| N_As | 发送方任意帧类型从请求发送到发送完成的时间间隔。 | 发送方 |
| N_Ar | 接收方任意帧类型从请求发送到发送完成的时间间隔。 | 接收方 |
| N_Bs | 发送方收到流控帧(FC)的时间,分3种情况: * 发送方从发送完首帧(FF)到收到流控帧(FC)的时间; * 发送方从发送完连续帧(CF)到请求发送流控帧(FC)的时间; * 发送方从收到流控帧(FC)(状态为Wait)到请求发送下一个流控帧(FC)的时间。 | 发送方 |
| N_Br | 接收方请求发送流控帧的时间,分3种情况: * 接收方从收到首帧(FF)到请求发送流控帧(FC)的时间; * 接收方从收到连续帧(CF)到请求发送流控帧(FC)的时间; * 接收方从发送完流控帧(FC)(状态为Wait)到请求发送 下一个流控帧(FC)的时间。 | 接收方 |
| N_Cs(相当于STmin) | 发送方请求发送连续帧(CF)的时间,分2种情况: * 发送方从收到流控帧(FC)到请求发送连续帧(CF) 的时间 * 发送方从发送完连续帧(CF)到请求发下一帧连续帧的时间。 | 发送方 |
| N_Cr | 接收方收到下一个连续帧(CF)的时间,分2种情况: * 接收方从发送完流控帧(FC)到收到连续帧(CF)的时间; * 接收方从收到连续帧(CF)到收到下一帧连续帧(CF)的时间。 | 接收方 |

相关推荐
hz567899 小时前
私有云会议系统选型攻略:企业级安全与高效协同并行
安全·音视频·实时音视频·信息与通信
星恒讯工业路由器10 小时前
工业以太网核心技术解析
网络·物联网·网络拓扑·信息与通信·业以太网·网络冗余
躺柒11 小时前
读半导体简史08大型机
linux·服务器·c语言·数据库·unix·ibm
十月的皮皮11 小时前
STM32从零到量产开发:四路继电器工业控制模块开发— 继电器模块bsp_di.h与 bsp_di.c文件
c语言·stm32·stm32cubemx·hal库
wuyk55512 小时前
67.嵌入式C语言进阶:结构体指针实战指南——STM32外设、传感器数据访问的高效技巧
c语言·开发语言·stm32·单片机
我不管我就要叫小猪13 小时前
C/C++----命名空间
c语言·开发语言·c++
fanchenxinok13 小时前
基于图莫斯的CAN UDS升级上位机-LabVIEW版本(八):TOOMOSS_SID85_ControlDTCSetting.vi — DTC控制
can·labview·uds刷写·图莫斯
白白白小纯13 小时前
算法篇—返回倒数第k个节点
c语言·数据结构·算法·leetcode
无忧.芙桃14 小时前
数据结构之堆
c语言·数据结构·c++·算法·
2301_7779983414 小时前
Linux线程控制——从线程创建到线程分离(第三部分:线程等待 pthread_join)
linux·运维·服务器·c语言·c++