【问题标题】:Method of listening to UDS message on CAN 1 and outputting control code on CAN2 in CAPLCAPL中CAN 1监听UDS报文并在CAN2输出控制码的方法
【发布时间】:2019-03-22 00:09:08
【问题描述】:

我是一个完全的编程爱好者,但在操作 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);
}

【问题讨论】:

  • 您正在为此使用模拟网络节点?或者您正在使用测试节点。基本上,您希望通过哪种方式解决这个问题?
  • 它作为模拟设置中的 CAPL 测试模块。我想有一个 CAPL 命令可以让您在总线 1 上收到特定消息时输出到总线 2。

标签: capl canoe


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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-12
    • 2019-11-07
    • 2018-03-07
    • 1970-01-01
    相关资源
    最近更新 更多