Vector - CAPL - CAPL入门 - 01

news/2025/3/7 4:11:50/

        前面已经介绍了很多CAPL相关的函数极其应用,今天CAPL能够完成的功能来介绍在车载网络测试中都能够帮助测试工程师完成哪些工作?让我们对它有一个最基础的认识。

CAPL在总线中的应用

        > 分析特定消息或特定数据

        > 分析数据流量

        > 创建和修改工具的测量环境

        > 设计定制模块测试仪

        > 创建一个黑匣子来模拟网络的其余部分

        > 创建模块模拟器

        > 创建自定义模块制造测试仪

        > 创建自定义模块诊断或服务工具

        > 创建程序来执行网络日志(回放)文件的定制分析

        > 创建复杂的日志过滤器

        > 创建用于模块/网络验证的综合消息或数据内容生成测试器。

        > 对两个不同网络之间的功能网关进行编程

        > 通过在仿真中生成CAN错误帧来评估模块网络软件策略,以查看模块是否正常工作    

        > 使用可读的英文指令和值来模拟节点或系统的行为,而不是使用十六进制值

        > 事件消息、周期性消息或有条件重复的消息

        > 人为事件,例如在PC键盘上按下按钮

        > 定时节点或网络事件

        > 多个时间事件,每个事件都具有可编程的行为

        > 正常操作、诊断操作或制造操作

        > 物理参数或符号值的变化(例如,“ON”,“OFF”)

        > 模块和网络故障,以评估有限操作策略

        > 简单或复杂的函数(如sin、cos)

CANoe在测试中的常用模式

1)离线模式(Offline Mode)

        通过CANoe制作多个仿真节点,来模拟我们想要的实际节点和仿真节点进行通信,一次来验证我们的软件逻辑是通的,作为项目预研使用。

 

 2)在线模式(Online Mode)

        这种模式使我们最常见的一个使用模式,我们日常的测试中,使用最多的一种情况,我们通过CANoe中CAPL进行仿真,与实际的物理总线进行通信,并且能够监听仿真和物理总线的通信状态。

 3)在线监听(Online Mode)

        此种情况主要作为监听物理总线的通信情况,并对实际物理总线通信状态进行分析。实际也是上面使用情况的一部分

CAPL简介

        CAPL(即 CAN Access Programming Language)是基于 C 编程语言,是专门在 CANalyzer 、 CANoe 和vTESTstudio基于 PC 的工具环境中使用的编程语言。 CAPL(读作“kapple”)的最初设计意图是满足基于 CAN 的分布式嵌入式系统开发人员的要求,包括:
        > 最大程度地控制所有测试和测量操作
        > 最大程度地控制系统或模块仿真 – CANoe 或 CANalyzer
        > 最大限度地支持一个或多个通信通道
        > 最大程度的事件和消息记录以及回放控制
        > 能够与其他 PC 应用程序互连

        CAPL及其编程环境的创建成为满足这些要求的实现。将 CANalyzer 或 CANoe 与 CAPL 结合使用,可以创建具有用户定义行为的自定义工具应用程序。 潜在应用仅受想象力、可用通信硬件限制(如果适用)和 PC 速度的限制。

CAPL面向事件

1、总线事件 

on message 0x100
{write("message 0x100");
}

2、键盘事件

on key 'p'
{write("按下‘p’键");
}

3、时间事件

variables
{msTimer timers;message * canmsg;
}on timer timers
{output(canmsg);
}

CAPL Browser界面

        左侧工具栏主要是Include(包含外部以实现的.cin、.can、.dll等文件);Variables(全局变量存放位置);System(时间事件和按键事件都可以在这里查看到);CAN(总线事件显示位置);Functions(开发的函数可以在这里看到)。

        右侧工具栏主要是CAPL Browser内置的一些函数,我们可以在这里搜索自己需要的函数,直接拖拽到中间的编辑界面即可。当然我们也可以通过打开dbc、MOST、LIN等数据库,也是通过拖拽直接使用,非常的方便使用。

        下方Output是我们通过Compile All编译的所有脚本情况,如果有错误我们可以在这里看到具体的编译情况。

        直接点击右上角或者直接点击F1即可打开CAPL帮助文档,在里面搜索查看需要的函数,里面包含所有内置函数的说明。


http://www.ppmy.cn/news/599366.html

相关文章

艾科dell服务器系统安装教程,武汉swarm部署

武汉swarm部署, 戴尔科技集团DCC商用渠道存储产品顾委单位 DELLTECHNOLOGIESGOLDPARTNER解决方案提供商 DELLEMCPowerEdge服务器产品授权分销商 D…

dell微型计算机换内存条,视频:小巧灵活 戴尔OptiPlex 7060微型机解析

原标题:视频:小巧灵活 戴尔OptiPlex 7060微型机解析 [ 来自IT168 在商用领域,很多企业更加青睐中小型电脑产品,一方面是外观设计更加小巧,安装维护更灵活,另一方面,小巧的机箱也可以减少对空间的…

从文件系统到分布式文件系统

关注星标公众号,不错过精彩内容 来源 | 博文视点Broadview 提醒:文末有福利! 我们无时无刻不在使用文件系统,进行开发时在使用文件系统,浏览网页时在使用文件系统,玩手机时也在使用文件系统。 对于非专业人…

商用“云计算”扬帆起航

<!-- page { margin: 2cm } P { margin-bottom: 0.21cm } --> 在我们国内&#xff0c;“云计算”被炒得神神秘秘&#xff0c;实则糊里糊涂。云计算具有特定的技术内涵&#xff08;内容&#xff09;&#xff0c;不可胡乱炒作&#xff0c;故弄玄虚&#xff0c;迷惑社会公众…

新版Dell本本BIOS设置完全手册

目前&#xff0c;Dell品牌旗下的笔记本电脑分为4个系列&#xff1a;针对普通家庭用户的Inspiron系列、针对高端个人用户的XPS系列、商用笔记本电脑中&#xff0c;有面向大中型企业的Latitude系列&#xff0c;以及今年新推出的、针对小型企业的Vostro系列。推出Vostro的同时&…

【图文详解】一文全面彻底搞懂HBase、LevelDB、RocksDB等NoSQL背后的存储原理:LSM-tree日志结构合并树...

LSM 树广泛用于数据存储&#xff0c;例如 RocksDB、Apache AsterixDB、Bigtable、HBase、LevelDB、Apache Accumulo、SQLite4、Tarantool、WiredTiger、Apache Cassandra、InfluxDB和ScyllaDB等。 在这篇文章中&#xff0c;我们将深入探讨 Log Structured Merge Tree &#xff…

再谈Dell-EMC并购:Dell的终极目标是什么?

这个世界好像特别喜欢搞“平衡”。在10月初的同一个周&#xff0c;AWS亚马逊云在拉斯维加斯欢庆云计算让企业摆脱了传统IT的束缚、CIO们可以按需自建IT系统&#xff0c;而Gartner则在奥兰多聚集了全球8500多名CIO、CTO、IT主管们探讨是否需要一个真正自由的IT世界。“企业的CIO…

不跟风,容器技术的真实优、缺点

传统虚拟机 和 容器云的 真实优缺点对比&#xff1a; 本文基于的前提&#xff1a;同样是在 DevOps 自动化程度很高的情况下。很多时候有人说 容器云平台更先进&#xff0c;那是因为他们传统的模式做得不好&#xff0c;如果把传统的模式做好&#xff0c;不见得比容器化平台的自动…