Vector - CAPL - 检查LIN事件状态

目录

ChkStart_LINMasterBaudrateViolation 

代码示例

ChkStart_LINReconfRequestFormatViolation 

代码示例

ChkStart_LINDiagDelayTimesViolation 

代码示例

ChkStart_LINETFViolation 

代码示例


ChkStart_LINMasterBaudrateViolation 

功能:检查LIN的主波特率是否符合规范

 说明:通过分析帧头,检查LIN主波特率;如果测出来的波特率与LDF定义的不一致,则会生成一个事件,并在报告中指示出来。

LIN 2.0 主时钟偏差: [-0.5 - 0.5]%

实际波特率在同步字段中完成,采样率为1秒;只有当LIN硬件不处于主模式时,即使用外部主模式时才能进行此检查

ClockTolerance:允许的主时钟容差。测量的波特率预计在以下范围内:B-B*aClockTolerance/100<=M<=B+B*aCockTolerance/100;其中M为测量波特率,B为预期波特率[LDF定义]

单位:百分比[%]

CaplCallback:要对生成的事件调用的CAPL回调函数的名称。在模拟节点中,必须设置此参数。在测试模块中,此参数是可选的。

代码示例

dword checkId;

// 创建并开始检查LIN主波特率异常事件

checkId = ChkStart_LINMasterBaudrateViolation(0.5, "LINMasterBaudrateCallback"); 

// 波特率异常的回调函数
void LINMasterBaudrateCallback (dword aCheckId)
{
   ChkQuery_EventStatusToWrite(aCheckId);
}

ChkStart_LINReconfRequestFormatViolation 

 功能:检查LIN配置请求的格式。

说明:如果在检测到的重新配置请求中至少有一个Slave属性被违反,则会生成一个事件。
当重新配置请求考虑ID=0x3C的帧时,携带范围为[0xB0.0xB7]的服务标识符字节(SID)选中的属性:NAD, supplier ID, function ID, variant ID, message ID, protected ID, StartIndex。

CaplCallback:要对生成的事件调用的CAPL回调函数的名称。在模拟节点中,必须设置此参数。在测试模块中,此参数是可选的。

返回值:

        0:无法创建检查,且不得引用

        >0:检查已成功创建,可以使用返回的(handle-)值进行引用。

代码示例

dword checkId;

//创建并启动LIN重新配置请求格式错误检查

checkId=ChkStart_LINReconfRequestFormatViolation(“LINReconfRequestFormatCallback”);

//用于配置失败的回调函数

void LINReconfRequestFormatCallback (dword aCheckId)
{
   ChkQuery_EventStatusToWrite(aCheckId);
}

ChkStart_LINDiagDelayTimesViolation 

 功能:检查指定LIN从节点或LDF中定义的所有LIN从节点的P2_min和ST_min值。

说明:检查指定LIN从节点或LDF中定义的所有LIN从节点的P2_min和ST_min值。

如果测量到的P2_min或ST_min值小于数据库(LDF)中指定的值,则会生成一个事件。

该检查监控总线流量并自动识别诊断帧。

ObservedNode:待检测的节点

CaplCallback:要对生成的事件调用的CAPL回调函数的名称。在模拟节点中,必须设置此参数。在测试模块中,此参数是可选的。

返回值:

        0:无法创建检查,且不得引用

        >0:检查已成功创建,可以使用返回的(handle-)值进行引用。

代码示例

dword checkId;
// 创建并开始检查LIN诊断延迟时间
checkId = ChkStart_LINDiagDelayTimesViolation("LINDiagDelayTimesCallback"); 
...
// 回调函数
void LINDiagDelayTimesCallback (dword aCheckId)
{  
     ChkQuery_EventStatusToWrite(aCheckId);
}

ChkStart_LINETFViolation 

功能:检查LIN事件触发的帧响应的格式。

说明:检查对ETF的单个响应的格式。如果第一个数据字节与任何相关帧的受保护ID不匹配,将生成一个事件(从机故障)。

检查冲突解决过程。如果检测到以下情况之一,则在冲突解决过程中将生成一个事件:

        1、关联帧无响应(从属故障)

        2、关联帧的顺序错误。(主机故障)

        3、关联帧重复(主故障)

        4、并非所有关联帧的标头都已传输(主帧故)

ETFFrameId:要验证的事件触发帧的帧标识符(8位)

CaplCallback:要对生成的事件调用的CAPL回调函数的名称。在模拟节点中,必须设置此参数。在测试模块中,此参数是可选的。

返回值:

        0:无法创建检查,且不得引用

        >0:检查已成功创建,可以使用返回的(handle-)值进行引用。

常见错误:

        指定的帧ID与任何符号事件触发的帧都不匹配

        指定的事件触发帧不包含关联帧,即无需验证

        CAPL回调不存在

代码示例

dword checkId;
//创建并开始检查LIN事件触发的帧

//参数:要验证的事件触发帧的帧标识符和可选CAPL

checkId = ChkStart_LINETFViolation (0x3A, "CallbackLINETFViolation"); 

// 回调函数
void CallbackLINETFViolation (dword aCheckId)
{
    ChkQuery_EventStatusToWrite(aCheckId);
}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

车载网络测试

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

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

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

打赏作者

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

抵扣说明:

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

余额充值