CAPL中格式如下
includes
{
}
variables
{
message 0x123 v_message;
byte sig[2];
}
On start
{
nothing();
}
on message key_a_message
{
putValueToControl("Panel1", "CAPL_Output_View", this.New_Signal_2, 1);
}
on message 0x130-0x140
{
//write("get message\n");
}
on key 'a'
{
++sig[1];
v_message.dlc = 9;//定义报文长度,默认为0
v_message.can=1;//定义报文发送在哪条can线上,默认为1
v_message.New_Signal_1 = sig[0];
v_message.New_Signal_2 = sig[1];
output(v_message);
putValueToControl("Panel1", "CAPL_Output_View", v_message.New_Signal_2, 1);
}
void nothing()
{
write("nothing\n");
return;
}
nothing()是自定义函数,在文件最下方写自定义函数。includes中写包含的头文件。
on message ... 是收到某条消息后就执行,在其中this指代这条消息。
on key是在键盘上按下某个键后执行。消息、信号的定义在数据库中,编写数据库的软件是CANdb++ Editor.