前言
本文适合于新手使用CANoe进行基础CAPL编程。基于CANoe的VN1640在CANFD网络上进行发送CANFD报文,实现CANFD总线报文的控制。本文主要通过使用CANoe模拟发送一条周期型报文。文章内容简单,目的是可以带着初学者能尽快上手CANoe的CAPL编程。
使用方向:自动化测试基础;硬件开发;软件开发
目录
CAN报文与CANFD报文在capl中的不同之处
创建虚拟节点
创建.can编程文件
添加.can文件到虚拟节点
运行CFG工程文件
一、CAN报文与CANFD报文在capl中的不同之处
想要在CANFD总线上模拟发送一条CANFD报文,首先要了解在capl中如何区别CAN报文和CANFD报文。
FDF:
If not 0, NM messages will be sent with FD Format indicator (FDF) equal to 1 (i.e. as CAN FD message).
BRS:
If not 0, CAN FD NM message will be sent with Bit Rate Switch (BRS) equal to 1.
二、创建虚拟节点
在Simulation Step中添加虚拟网络节点
三、创建.can编程文件
/*@!Encoding:936*/
includes
{
}
variables
{
message 0x11 msg1;//定义要发送的报文
msTimer timer1;//定义定时器
}
on start{
setTimer(timer1,100);//运行canoe程序,启动定时器
}
on timer timer1{
msg1.dlc = 8;//定义该报文的属性
msg1.byte(0)=0x11;//定义byte(0)字节的数值
msg1.BRS = 1;
msg1.FDF = 1; // 决定此条报文为CANFD报文(FDF默认为0,为CAN报文,当FDF =1时,为CANFD报文)
output(msg1); //输出该报文到CAN总线
setTimer(timer1,100); //重置定时器
}
四、添加.can文件到虚拟节点
操作:右击添加的虚拟节点,Node Configuration对话框,点击File添加.can的CAPL文件
五、 运行CFG工程文件
运行结果如上。可以看到在Trace中出现了设定好的报文,周期为100ms,ID=0X11,长度为8。
六、总结
以上就是今天要讲的内容,本文仅仅简单介绍了CAPL编程的基础使用,后续还会深入的介绍CAPL的使用以及实战应用。