Vector - CAPL - CAN x 总线信息获取

        在CAN&CANFD测试中,我们经常需要获取到CAN总线的负载、错误帧、过载帧、发送错误等等CAN总线上面的信息,这些信息如此重要,但是如果真的要写代码去实现也是相当不易的,那我们该如何去获取到的呢?下面我们就来一起看下相关的实现函数。

目录

canResetStatistics -- 重置CAN统计信息

代码示例

BusLoad -- 总线负载

代码示例

ChipState -- CAN芯片状态(CANoe)

代码示例

PeakLoad  -- 峰值负载

代码示例

 TxChipErrorCount -- 芯片发送错误数量

代码示例

RxChipErrorCount -- 芯片接收错误数量

代码示例


canResetStatistics -- 重置CAN统计信息

功能: 重置CAN通道统计信息。

说明:

        1、只有通过模拟/测试设置中定义的CAPL程序才能在没有显式通道的情况下调用此函数。由当前总线上下文确定的通道的统计信息将被重置。

        2、具有显式通道的函数只能从测量设置中定义的CAPL程序中调用。

channel:CAN通道,对应CANoe使用通道

代码示例

on key 'r' 
{ 
   // 重置CAN1通道统计信息
   canResetStatistics(1);
}

BusLoad -- 总线负载

功能:获取当前某路CAN总线的总线负载;返回通道x的当前总线负载。

        x的取值范围:01 - 32

用法:CAN x. BusLoad;CAN x代表的是CANoe上面的第x路CAN通道

返回值:通道x的当前总线负载(百分比)。

代码示例

void Get_CAN1_BusLoad()
{
    busload = CAN1.BusLoad
    write ("CAN1 busload = %d", busload);
}

ChipState -- CAN芯片状态(CANoe)

功能:返回CAN控制器的当前芯片状态。

        x的有效值:1 - 32

返回值:当前CAN芯片状态说明;

        0:当前值不可用

        1:CAN芯片处于仿真状态

        2:未使用

        3:错误激活状态

        4:警告级别

        5:CAN芯片处于被动错误

        6:CAN芯片处于总线关闭

代码示例

void Get_CAN1_chipState()
{
    chip_state = CAN1.ChipState
    write ("CAN1 chip state = %d", chip_state );
}

PeakLoad  -- 峰值负载

功能:返回通道的峰值负载。

        x的有效值范围:1 - 32

返回值:通道x的峰值负载(百分比)。

代码示例

void Get_CAN1_PeakLoad()
{
    PeakLoad= CAN1.PeakLoad
    write ("CAN1 Peak Load = %d", PeakLoad);
}

 TxChipErrorCount -- 芯片发送错误数量

 功能:返回通道接收器中的当前芯片发送错误计数。

        x的有效值范围:1 - 32

返回值:自开始测量以来,通道x上的芯片发送错误消息数

代码示例

void Get_CAN1_TxChipErrorCount()
{
    TxChipErrorCount= CAN1.TxChipErrorCount
    write ("CAN1 Tx Chip Error Count = %d", TxChipErrorCount);
}

RxChipErrorCount -- 芯片接收错误数量

 功能:返回通道接收器中的当前芯片接收错误计数。

        x的有效值范围:1 - 32

返回值:自开始测量以来,通道x上的芯片接收错误消息数

代码示例

void Get_CAN1_RxChipErrorCount()
{
    RxChipErrorCount= CAN1.RxChipErrorCount
    write ("CAN1 Rx Chip Error Count = %d", RxChipErrorCount);
}

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车载网络测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值