如何通过CAPL查看UDS报文的响应?

How can we check the response of UDS message through CAPL?

我已经写了一个基本的程序来在 CAPL 中发送 UDS 消息,但是我不知道如何在测试用例函数中获取响应。

下面是代码片段

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");
}

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

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

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

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

如果你想使用原始帧,那么有一个等待响应消息的功能。

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

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

访问它