当前位置:   article > 正文

Vector - CAPL - CAN Message关键字_vector message

vector message

CAPL脚本开发的CAN相关测试中,message关键字永远是我们避不开的话题,然而它到底都包含哪些信息呢?今天我们来介绍一下,让它方便我们脚本开发的使用;今天本篇文章主要来介绍它到底都有什么信息。

定义message变量

message * ownerMsg;
1、ownerMsg.id = can_id

can_id:ownerMsg报文的CAN ID信息,用于发送或者接收。

变量类型:word

2、ownerMsg.can = can_channel

can_channel:ownerMsg报文发送的通道,发送到CANoe硬件通道的CAN1、CAN2 ..... CAN32

变量类型:word

3、ownerMsg.MsgChannel = can_channel

can_channel:ownerMsg报文发送的通道,发送到CANoe硬件通道的CAN1、CAN2 ..... CAN32

变量类型:word

4、ownerMsg.name = msg_diag_Request_MyECU

msg_diag_Request_MyECU:报文名称,这个只能读取,并且在CANoe工程中添加有dbc文件方可

变量类型:dword

5、ownerMsg.DIR = Tx||Rx||TXREQUEST

Tx||Rx||TXREQUEST:主要用在on message中,指明报文的发送或者接收方向

变量类型:byte

6、ownerMsg.RTR = rtr_value

rtr_value:远程传输请求;可能的值:0(无RTR),1(RTR)

变量类型:byte

7、ownerMsg.TYPE = can_type

can_type:结合DIR和RTR进行有效评估(类型=(RTR<<8)|目录)

变量类型:word

8、ownerMsg.DLC = can_dlc

can_dlc:

消息的数据字段长度用数据长度代码(DLC)进行编码。

取值范围:0..15

数据字段长度:

CAN消息:0..8

CAN FD消息:0..64

变量类型:byte

DLC

Length

DLC3

DLC2

DLC1

DLC0

0

0

0

0

0

0

0

0

1

1

0

0

1

0

2

0

0

1

1

3

0

1

0

0

4

0

1

0

1

5

0

1

1

0

6

0

1

1

1

7

1

0

0

0

8

CAN:

1

x

x

x

8

CAN FD:

1

0

0

1

12

1

0

1

0

16

1

0

1

1

20

1

1

0

0

24

1

1

0

1

32

1

1

1

0

48

1

1

1

1

64

9、ownerMsg.DataLength = can_datalength

can_datalength:CAN报文数据长度

变量类型:byte

10、ownerMsg.byte(0) ownerMsg.byte(1) ······ ownerMsg.byte(n)

ownerMsg.byte:数据段数据

变量类型:byte

11、ownerMsg.FDF = can_fdf

can_fdf:CANFD报文指示位

0:经典CAN报文

1:CANFD报文

12、ownerMsg.BRS = can_brs

can_brs:比特率开关,仅适用于CAN FD消息。

0:对数据段使用仲裁比特率

1:数据段使用数据比特率

注意:使用使用output发送CANFD报文,需要将FDF和BRS均设置为1方可发送出CANFD报文

13、ownerMsg.ESI = can_esi

can_esi:错误状态指示器

读/写:

0:未设置ESI

1:ESI设置

写入:

2:CAN控制器根据控制器的状态自动设置ESI

14、ownerMsg.TxFailed = can_TxFailed

can_TxFailed:

发送消息时,您可以使用TxReqCount设置传输尝试次数(单次触发模式)。

如果无法发送消息,并且传输错误通知处于活动状态,则将在跟踪窗口和CAPL中通过TXReq消息和TxFailed消息选择器通知您。

值范围:0,1

15、ownerMsg.FrameCRC = can_framecrc

can_framecrc:CAN报文的校验和;只读字段

16、ownerMsg.TxReqCount = can_txreqcount

can_txreqcount:消息的传输尝试次数,默认值:0

0:消息将重复发送,直到成功发送一次为止。

值范围:0…15

以上介绍主要为我们在做CAN、CANFD自动化测试中,message消息中常用的字段信息介绍,了解这个有利于我们使用最简单的方法去解决我们常见的问题,大家可以作为了解,等到需要的时候直接查阅即可。

附录

组合字段的使用:

Rx

接收的报文(DIR == Rx)

Tx

发送的报文(DIR == Tx)

TXREQUEST

设置发送的报文请求(DIR == TXREQUEST)

RXREMOTE

接收远程帧报文 ((DIR == RX) && RTR)

TXREMOTE

发送远程帧报文((DIR == Tx) && RTR)

TXREQUESTREMOTE

已为远程消息设置传输请求((DIR == TXREQUEST) && RTR)

RXDATA

收到的报文数据 ((DIR == Rx) && !RTR)

TXDATA

发送的报文数据 ((DIR == Tx) && !RTR)

TXREQUESTDATA

已为数据消息设置传输请求((DIR == TXREQUEST) && !RTR)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/136278
推荐阅读
相关标签
  

闽ICP备14008679号