【CANoe/CANalyzer脚本】通过CAPL发送NM帧报文测试网络管理

优质博文推荐阅读(单击下方链接,即可跳转):

Vector工具链

CAN Matrix DBC

CAN Matrix Arxml

一、在CANoe/CANalyzer中创建Program Node

Measurement Setup中,创建Program Node;

接着导入下面的Demo:NM_Frame.can;(替换需要的CANID,以及数据段的字节值即可

/*@!Encoding:936*/
includes
{
  
}

variables
{
  message 0x211 Message_211 = {dlc=8}; //定义要发送的报文

  msTimer Message_211_timer;          // 报文发送周期 
  msTimer Cycle_Start_timer;          // 发送窗口:允许报文在该时段发送 
  msTimer Cycle_End_timer;            // 完成一次循环的时间
  
  byte Cycle_Start_timer_Flg = 0;
}

on start
{
  setTimer(Message_211_timer,100);   // 启动报文周期发送定时器
  setTimer(Cycle_Start_timer,10000); // 启动报文发送的窗口定时器
  setTimer(Cycle_End_timer,30000);   // 启动发送的循环定时器
}

on timer Message_211_timer
{
  Message_211.byte(0)=0x00;  
  Message_211.byte(1)=0x01;
  Message_211.byte(2)=0x02;  
  Message_211.byte(3)=0x03;
  Message_211.byte(4)=0x04;  
  Message_211.byte(5)=0x05;
  Message_211.byte(6)=0x06;  
  Message_211.byte(7)=0x07;
  
  output(Message_211);                  // 输出报文到CAN总线
  
  if(Cycle_Start_timer_Flg == 0)
  {
      setTimer(Message_211_timer,100);  // 重置报文周期发送定时器
  }
}

on timer Cycle_Start_timer
{
  if(Cycle_Start_timer_Flg == 0)
  {
      Cycle_Start_timer_Flg = 1;  
  }
}
 
on timer Cycle_End_timer         // 完成一个循环后,重置所有定时器
{
  Cycle_Start_timer_Flg = 0;
  
  setTimer(Message_211_timer,100);
  setTimer(Cycle_Start_timer,10000);
  setTimer(Cycle_End_timer,30000);
}

CANoe/CANalyzer配置完成后的效果如下图:

二、运行效果

您会看到NM帧发送10秒,停20秒,如此循环往复。

END

获取更多“汽车电子资讯”和“工具链使用”,

请关注“汽车电子助手”,做您的好助手

ECU是车联网技术中的核心设备之一,在车辆的控制中起到至关重要的作用。在ECU通讯协议中,首是一种重要的数据类型,它包含了必要的车辆控制信息。而NM则是一种常见的数据类型,包含了诸如车速、车门状态等关键信息。如何让ECU发出的首NM呢? 首先,需要确定车辆的通讯协议规范,以及ECU支持的协议版本。通常情况下,车辆的通讯协议规范是由汽车制造商制定的,而ECU驱动程序需要根据该规范实现相应的协议解析和处理。此时,需要对ECU的程序代码进行修改,以支持将NM设置为首。 其次,需要了解NM的数据格式和编码方式。通常情况下,NM的数据格式与其他数据类型相比较为复杂,需要进行特殊的编码和解码处理。因此,在ECU的编程中,需要根据协议规范和数据格式要求,对NM进行相应的编码和解码处理,以确保ECU可以正常识别和处理该类型的数据。 最后,需要对ECU的测试和验证。在修改ECU的驱动程序和程序代码后,需要对其进行周密的测试和验证,以确保其能够完全兼容车辆的通讯协议规范,并能够正常解析和处理NM类型的数据。如有需要,还需要进行相应的性能优化和调试工作,以确保ECU的稳定性和可靠性。 总之,让ECU发出的首NM需要通过对ECU的编程和测试等一系列工作,确保其兼容车辆的通讯协议规范,满足NM的数据格式要求,能够正常解析和处理该类型的数据,以实现车辆控制的高效和可靠。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汽车电子助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值