继续上篇!!!
***摸鱼聊天、答疑解惑首选之地 --- 车载网络哪些事儿***
目录
TestWaitForLinReceiveError
功能:等待LIN接收错误事件的发生。
说明:
如果事件没有在aTimeout时间到期之前发生,返回值为0。
在调用函数之前,请考虑始终在多总线环境中设置适当的总线上下文。
aFrameId:应等待其接收错误的帧的数字ID;默认值:等待任何ID
aTimeout:最长等待时间
返回值:
-2:由于违反约束而恢复
-1:一般错误,例如,功能不可用
0:超时未接收到LIN报文
1:预期等待的LIN报文出现
TestGetWaitLinReceiveErrData
功能:返回接收到的错误LIN数据
说明:
如果LIN接收错误事件是触发等待指令的最后一个事件,则可以使用第一个函数调用错误内容。
第二个函数只能用于“已加入的事件”。“joind event”的编号(返回值为“testJoin…”)在这里被用作索引。
apEvent:带有校验和错误数据的数据结构;获取到的LIN报文数据
index:“joind event”的编号对应于“testJoin…”的返回值。
返回值:
0:数据访问成功
-1:无法执行数据访问,最后一个事件不是等待的事件
代码示例
testcase tcTFS_linReceiveErrorEvent ()
{
linReceiveError linReceiveErrorData;
if (testWaitForLinReceiveError(5000) == 1)
{
if (TestGetWaitLinReceiveErrData(linReceiveErrorData) == 0)
{
testStep("Evaluation", "LIN Receive Error event occurred for FrameId=0x%X", linReceiveErrorData.ID);
}
}
}
TestWaitForLinWakeupFrame
功能:等待LIN唤醒帧的出现。
说明:
如果帧没有出现在aTimeout时间到期之前,返回值为0。
在调用函数之前,请考虑始终在多总线环境中设置适当的总线上下文。
aTimeout:最长等待时间
返回值:
-2:由于违反约束而恢复
-1:一般错误,例如,功能不可用
0:超时事件未发生
1:在aTimeout时间内事件发生
TestGetWaitLinWakeupData
功能:调用唤醒帧数据
说明:
如果LIN唤醒帧是触发等待指令的最后一个事件,则可以使用第一个函数调用帧内容。
第二个函数只能用于“已加入的事件”。“joind event”的编号(返回值为“testJoin…”)在这里被用作索引。
apEvent:带有校验和错误数据的数据结构;获取到的LIN报文数据
index:“joind event”的编号对应于“testJoin…”的返回值。
返回值:
0:数据访问成功
-1:无法执行数据访问,最后一个事件不是等待的事件
代码示例
testcase tcTFS_linWakeupEvent ()
{
linWakeupFrame linWakeupData;
if (testWaitForLinWakeupFrame(5000) == 1)
{
if (testGetWaitLinWakeupData(linWakeupData) == 0)
{
testStep("Evaluation", "LIN Wakeup event occurred. Signal length is %d ns", linWakeupData.length_ns);
}
}
}
TestWaitForLinTransmError
功能:等待LIN传输错误事件的发生。
说明:
如果事件没有在aTimeout时间到期之前发生,返回值为0。
在调用函数之前,请考虑始终在多总线环境中设置适当的总线上下文。
aFrameId:应等待其接收错误的帧的数字ID;默认值:等待任何ID
aTimeout:最长等待时间
返回值:
-2:由于违反约束而恢复
-1:一般错误,例如,功能不可用
0:超时事件未发生
1:在aTimeout时间内事件发生
TestGetWaitLinTransmErrData
功能:调用传输错误帧数据
说明:
如果LIN传输错误事件是触发等待指令的最后一个事件,则可以使用第一个功能调用错误内容。
第二个函数只能用于“已加入的事件”。“joind event”的编号(返回值为“testJoin…”)在这里被用作索引。
apEvent:带有校验和错误数据的数据结构;获取到的LIN报文数据
index:“joind event”的编号对应于“testJoin…”的返回值。
返回值:
0:数据访问成功
-1:无法执行数据访问,最后一个事件不是等待的事件
代码示例
testcase tcTFS_linNoResponseEvent ()
{
linTransmError linTransmErrorData;
if (testWaitForLinTransmError(5000) == 1)
{
if (testGetWaitLinTransmErrData(linTransmErrorData) == 0)
{
testStep("Evaluation", "LIN No-Response event occurred for FrameId=0x%X", linTransmErrorData.ID);
}
}
}
TestWaitForLinHeader
功能:等待指定LIN帧的Header出现
说明:
如果标头没有在aTimeout时间到期之前出现,那么等待条件仍然会得到解决。
当未指定帧时,任何LIN标头上的等待条件都会得到解决。
根据所使用的参数类型,如果相应的数据库对象不明确,则只需在调用函数之前设置多总线环境中的适当总线上下文。
aFrame:定义LIN报文
aFrameId:LIN报文ID
aTimeout:最大等到LIN报文超时时间
返回值:
-2:由于违反约束而恢复
-1:一般错误,例如,功能不可用
0:超时未接收到LIN报文
1:预期等待的LIN报文出现
TestGetWaitLinHdrData
功能:返回LIN头部数据内容。
说明:
如果LIN Header事件是触发等待指令的最后一个事件,则可以使用第一个函数调用标头内容。
第二个函数只能用于“已加入的事件”。“joind event”的编号(返回值为“testJoin…”)在这里被用作索引。
aHeader:应使用此函数填充的标题变量;linheader定义的变量
index:“joind event”的编号对应于“testJoin…”的返回值。
返回值:
0:数据访问成功
-1:无法执行数据访问,最后一个事件不是LIN标头事件
代码示例
testcase tcTFS_linHdrEvent ()
{
linheader linHeaderData;
if (testWaitForLinHeader(5000) == 1)
{
if (TestGetWaitLinHdrData(linHeaderData) == 0)
{
testStep("Evaluation", "LIN Header event occurred for FrameId=0x%X", linHeaderData.ID);
}
}
}