使用CAPL控制面板

前言

这是我的第一篇关于CAPL的文章。从事汽车电子的测试工作但是直到去年底才开始接触CAPL。因为C语言基础非常差并且网上资料特别少,对我来说学起来稍微有点困难。
以后会不定期在这里更新一下所学到的东西,包括CAPL、CAN总线之类的。一是做一个学习记录的功能,二是分享一下学习心得。
如果有错误的地方,希望大家能指出来,谢谢!

功能

在Panel界面创建一个控制车速的Track Bar,并且在Trace界面实时监测到当前车速

实现

  1. 创建环境变量
    在DBC中创建一个环境变量命名为“En_VehicleSpeed”
    在这里插入图片描述
    创建完成后保存DBC文件。
  2. 创建面板
    新建一个Panel面板,插入Trace Bar工具 在这里插入图片描述
    在属性栏里,将最大值设置为200。过滤为Environment Variable,并关联到之前创建的变量“En_VehicleSpeed”在这里插入图片描述
    创建完成后保存。
  3. CAPL控制车速
variables
{
  msTimer T1;   //定义毫秒级计时器T1
  message 0x202 Eng_Status={dlc=8};   //定义message
}
(1)首先定义一下所用到的变量
on start
{
  setTimer(T1,100);   //设置T1计时器,100ms
}

on timer T1
{
  Eng_Status.Byte(0)=getValue(En_VehicleSpeed);  //将En_Vehicle的值赋值到Eng_Status的byte0
  output(Eng_Status);   //输出信号
  setTimer(T1,1000);   //设置T1计时器,1000ms
}
(2)on start开启计时器; on timer T1设置计时器

总结&心得

  1. 关于message长度的定义

可以写成下面的格式

message 0x202 Eng_Status={dlc=8};

或者写成这种的格式

variables
{
  msTimer T1
  message 0x202 Eng_Status;
}

on start
{
  setTimer(T1,100);
}

on timer T1
{
  Eng_Status.dlc = 8;  //在此设置202的DLC
  output(Eng_Status);                            
  setTimer(T1,1000);                             
}
  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值