也是学习CANoe的时候才知道的CAPL,因为是Vector公司专门为CANoe配置的语言,所以应用针对性较强。刚开始学习的时候,在网上也没搜到太多与之相关的资料。目前算是掌握了基本使用。今天来简单分享一下。
今天的总结分享主要从以下几个方面描述CAPL语言:CAPL简介
CAPL主要用途
CAPL浏览器
CAPL基础语法
CAPL常见运算
流程控制
CAPL程序结构
变量和信号的访问
1. CAPL简介CAPL,Communication Access Programming Language,即通信访问编程语言
类C语言
与C语言的区别:1)未定义返回类型,默认为void类型; 2)像C++一样允许空的参数列表;3)像C++一样允许函数重载;4)参数检测与C++中一样;5)CAPL提供一些自带的库函数;6)CAPL编译时不对自带的关键字和自带的函数名做区分。
2. CAPL主要用途仿真节点或模块
仿真时间报文、周期报文或者附加条件的重复报文
使用PC键盘模拟操作按钮等人工操作事件
仿真节点的定时或网络事件
仿真多个时间事件,每个事件都有自己特定行为
仿真普通操作、诊断或生产操作
仿真物理参数或报文的变化
生成错误帧,评估模块和网络软件处理机制
仿真模块或网络错误来评估相关的防错机制
提供网络测试、诊断等功能测试库函数
3. CAPL浏览器
CANoe自带的CAPL Browser是CAPL程序的开发环境。学习CAPL基本语法之前,先来认识下CANoe是如何创建CAPL程序。
3.1 创建CAPL程序文件
1)进入CAPL浏览器:CANoe主界面Tools → CAPL Browser
2)创建CAPL程序文件:在CAPL Browser主页点击File→New→New CAPL Document
CAPL程序的文件后缀为.can
3.2 浏览器功能区
1)Home功能区:提供CAPL编译常用功能,包括代码编译以及编译等操作
2)Filter功能区:管理CAPL函数库,可在函数浏览器中屏蔽掉不需要的函数库
3)Debug功能区:提供CAPL编程常用功能,包括代码编译以及变异操作等
注:断点组件智能在debug模式开启的情况下进行操作
4)Layout功能区:设置各子窗口的显示模式
4. CAPL基础语法
基本上学习所有的语法思路都是差不多的,首先是变量与全局变量、数据类型、支持的运算符、流程控制语句以及函数等。
4.1变量的声明与定义只能使用字母字符、数字和下划线
名称的第一个字符不能是数字
区分大小写字符
不能将CAPL关键字用作名称
不能将CAPL的函数名和对象名用作变量名
变量名的字符长度最好不要超过32个(编译系统只能识别前32个字符)