0

我是一个完全的编程爱好者,但在操作 Vector 工具方面有一些经验,并且长期熟悉汽车 CAN 网络和 UDS。我可以发送控制消息以手动操作总线 2 上的 RAD I/O 接口上的继电器(ON KEY),所以我知道该命令有效(clickety click)但我需要它在收到诊断 CAN 帧后这样做(在对话中)。问题是,diagRequest 在 CAN 总线 1 上,我需要在 CAN 总线 2 上发送命令。请有 CAPL 键盘侠能提出解决方案吗?

includes
{

}

variables
{
  message 0x600 radio={dlc=8};
}

ON key 'p'
{radio.byte(0)=0x04;
output (radio);
}
ON key 'o'
{radio.byte(0)=0x00;
output (radio);
}
on diagRequest RequestTransferExit

  {radio.byte(0)=0x04;
output (radio);
}
4

1 回答 1

1
  1. 您应该将您的模拟节点配置为网关(在其配置...总线选项卡中)添加另一个 CAN,以便它可以同时访问。

  2. 为了在不同的频道上输出 ID,您还必须使用频道选择器定义广播消息,如下所示:

    变量{消息CAN1.0x600无线电={dlc=8};}

于 2019-03-21T16:09:08.153 回答