如何用手动方式添加诊断帧

2024-04-16  

UDS诊断帧发送环境与上一张CAN帧相同,也分为手动添加和Cdd文件导入两种方式。

■手动方式添加诊断帧

  1. 添加一个 BasicDiagnosticECU

图片

  1. 添加后如下

图片

ECU qualifier : 使用CAPL脚本发送UDS诊断数据时会使用到,手动发送诊断帧不需要关注

Diagnostics tester : 选择物理请求还是功能请求。默认选择 物理请求

关于物理请求和功能请求的区别,后续会在UDS 专栏中单独介绍

  1. 设置 Transport Layer参数

图片

Request to ECU : ECU物理寻址Req ID

Response from ECU : ECU 物理寻址Res ID

Functional to ECU : 功能寻址 Req ID

STmin : TP层协议参数,两包连续帧发送的间隔

BlockSize : TP层协议参数,收到流控帧后可发送连续帧数量。设置为0时,发送数量无限制

FC Delay : CANOe 收到 首帧或连续帧后,回复流控帧的延迟时间。目的是防止CANoe的流控帧回复过快,导致接收端接受失败。

Max.Length : 一帧最大传输数据量(首帧+连续帧)

Mixing of CAN2.0 and FD frames : 是否兼容CAN帧和CAN-FD帧。

Ignore : 默认值, 不兼容,例如配置为CAN帧时,CANOe不接受CAN-FD帧,配置为CAN-FD帧时,也一样。

Accecpt : 兼容,例如配置为CAN帧时,CANOe可以接受CAN-FD帧,返回CAN帧。

Adapt : 兼容,例如配置为CAN帧时,CANOe可以接受CAN-FD帧,并且能返回CAN-FD帧。

  1. 配置 Diagnostic Layer参数

图片

Send test present : CANOe是否自动发送3E 服务,用于Session保持

S3 Client time : CANOe 自动发送3E服务的间隔

S3 Server time : 下位机程序 未收到 任何诊断请求,保持在Default以外的Session的最大时间

P2 Server : 下位机程序 收到Request 到 开始回复 Response 的时间间隔

P2 Client : 上位机程序 发送完Request 到 收到 回复 Response 的时间间隔

P2 extended Server : 下位机 发送完NRC78 到下一次回复Reponse的时间间隔

P2 extended Client : 上位机收到 NRC78 到 收到下一次回复 Response的时间间隔

Seed&Key DLL : 用于27服务解锁,调用。dll自动计算Key的值,该.dll文件由车厂或Tier1 提供

  1. Additional Descriptions 不需要配置

  2. 添加需要的诊断服务 (以$10 02 ProgrammingSession为例 )

a. 点击Basic Diagnostic ,打开 面板

b. 右键要添加的服务,选择[Add New Service]

图片

c. 配置子服务的Req

图片

Service Name : CAPL编程时会使用,手动发诊断数据不需要关注。

d.配置Response

图片

按照期待的格式在 [Parameters] 中追加或删除参数。

  1. 打开 Diagnostic Console

图片

  1. 点击[Start] ,在Diagnostic Console中发送刚才添加的诊断命令

图片


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。