CAPL基础

CAPL基础

1.CAPL如何生效

CAPL通过在Simulation Setup窗口设置CAPL节点,并加载对应的CAPL文件使CAPL生效。

2.Event驱动

CAPL语言的运行逻辑是事件触发,当满足条件时执行对应的代码

如下图所示有启动触发、停止触发、发送报文触发、定时器触发和按键触发等

image-20241106234825601

3.报文发送

1.自定义报文发送

CAPL中定义了报文格式的结构体,如果是自定义的报文需要对dlc、data等部分进行配置

使用output对报文进行输出

on key 'a'
{
    message 0x1A msg1;
	msg1.dlc=4;
    msg1.byte(0)= 0x55;
    msg1.byte(1)= 0xff;
	output (msg1);
}

2.已定义报文发送

已定义报文可直接对信号进行赋值

on key 'b'
{
    message Enginestate msg2;
    msg2.Enginespeed =100;
    msg2.onoff=1;
    output(msg2);
}

4.信号触发

//信号值改变时触发
on signal SignalA
{
    write("1,signal value is change");
    sigValue =getsignal(signalA);
    write("sig value is f",sigValue);//这俩一样
    write("sig value is f"$SignalA);//这俩一样
}
//当信号发送到总线上时触发
on signal_update SignalA
{
    write("2,signal is send to the bus");
}

on key 'a'
{
    setSignal(SignalA,5);//赋值
}

on key 'b'
{
    $SiganlA=10;//赋值
}
posted @ 2024-11-07 00:13  疯狂生长的陈大花  阅读(461)  评论(0)    收藏  举报