0

我已经编写了一个基本程序以在 CAPL 中发送 UDS 消息,但我不知道如何在 testcase 函数中获取响应。

下面是代码片段

includes
{
  
}

variables
{
    message 0x639 read;
}

void maintest()
{
    tc1();
}

testCase tc1()
{
    read.dlc=0x08;
    read.byte(0)=0X02;
    read.byte(1)=0x10;
    read.byte(2)=0x03;
    output(read);
    testStepPass("OK");
}
4

2 回答 2

1

正如前面评论中提到的,建议使用诊断功能。

如果您希望使用原始帧,则有一个等待响应消息的功能。

TestWaitForMessage(0x649,100);
TestGetWaitEventMsgData(res_msg);

res_msg具有响应的字节值。
您可以通过 访问它res_msg.byte(0)

于 2020-07-30T07:30:11.533 回答
0

为什么不使用 CANoe 的诊断模块?

您可以在下面添加自己的诊断控制台Diagnostics (or Diagnostics & XCP) tab -> Diagnostic/ISO TP并设置自己的控制台(您需要配置目标地址、诊断层等)。

之后,您可以在帮助中找到 CAPL 所需的所有功能press F1 in CAPL Browser -> CAPL Functions -> Diagnostics CAPL Functions

于 2020-04-15T09:09:28.467 回答