这篇博客介绍下,在CANoe 工程中,我们常常用到的IG模块。
使用交互式生成器(IG模块),可以在测量运行时配置和发送message,也可以在不发送消息的情况下控制分析。
IG模块,相比其它模块有两个优点:
1, 在Bus 上 鼠标右键 ,然后选择Interactive Generator Block
,上面还有个 insert CAN interactive Block,其实功能都是一样的,就不说了。
2,双击IG模块,选择下图的小三角,选择CAN mesage ,可以创建一下新的 message
3,我们把刚才创建的message ID定义为100(不得和bus其它报文ID冲突), data定义为1234567
4,IG模块定义了3中报文的发出方式:
5,我选择了100ms周期发送,可以在trace中看出trace多了个ID为100的message,并且发送周期是100ms.:
添加报文之前我们需要先明白一件事,就是总线上已经有的报文(比如上图Trace中的EngineState),并且是周期发送着的,如果我们再在IG模块中添加这个报文,那就会产生冲突(如果让它发送到总线上),所以,我们需要先屏蔽掉总线上的这个报文,然后再在IG模块中,添加这个报文。更改放周期或者data值都可以。
6,屏蔽总线上的某条报,比如我们需要屏蔽掉总线上的EngineState这个报文,那我们就在Engine node的bus上点击右键,然后根据下图选择。
7 ,在 SF 上双击 弹出如下对话框。
8 ,双开Events 然后选择 EngineState,这样我们就实现了对EngineState报文的屏蔽。
9 ,Run工程,Trace中可以确认 EngineState报文成功的被屏蔽了。
10,再在IG模块中添加EngineState报文,并且我们改变OnOff信号 ,设置成1,这样在Trace中可以看到 EngineState报文的周期是100ms,并且OnOff的信号是1.这样我们就可以通过IG模块,在工程RUN的时候,进行报文的添加,减少,更改了,十分方便。
————————————————
版权声明:本文为CSDN博主「蚂蚁小兵」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_34414530/article/details/111193524
联系客服