如何使用CAPL程序发送消息

时间:2018-06-13 13:06:52

标签: can-bus capl canoe

我是CANoe的新手,也是CAPL语言。我想知道如何在CAN 1上定期发送消息(100ms)(在每次发送时增加有效载荷中的一个字节,即消息计数器),在CAN2上接收此消息,当它自动接收时,应发送响应,将接收到的消息计数器作为有效载荷中的一个字节。

1 个答案:

答案 0 :(得分:0)

在CANoe中,请按 F1 进入指南,然后浏览至CAPL Functions章并通读。这将帮助您理解以下原则。

为了定期发送消息,您想在脚本的message块和计时器中声明variables变量类型。 CAN关联通常在* .dbc文件中完成,但是您甚至可以在CAPL脚本中配置CAN总线。

variables {
    message 0xA m1;
            // 0xA is the message ID from your *.dbc can database used in the simulation
    timer timer100;
}

您想设置计时器,例如在模拟开始时,然后像下面这样在计时器回调中输出消息:

on start {
    timer100.set(100);
}

on timer100 {
    // reset timer
    timer100.set(100);
    // do stuff to your message content
    // for instance m1.signalA = 0x01;
    // ...
    output(m1)  // send m1 on CAN bus
}

您还希望在阅读邮件时先做事,然后再做类似的事情

on message m2 {
     // ...
}

您可能想先自己尝试一下,然后再更精确地更新您的问题。现在,感觉您还没有真正将any effort放入其中。