CANoe入门 Step to Step二CAPL编程.docx
- 文档编号:4213147
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:14
- 大小:2.15MB
CANoe入门 Step to Step二CAPL编程.docx
《CANoe入门 Step to Step二CAPL编程.docx》由会员分享,可在线阅读,更多相关《CANoe入门 Step to Step二CAPL编程.docx(14页珍藏版)》请在冰豆网上搜索。
CANoe入门SteptoStep二CAPL编程
CAPL就是CommunicationApplicationProgrammingLaguage的缩写,CAPL类似于C语言的语法,因此所有的语法请参考C语言教程,这里不在这里进行详述,关于C语言,毫无疑问的,首先推荐大家看谭浩强老师的书,经典中的经典,看完这本C语言应该没问题了。
CAPL在CANoe中起到重要的作用,他将所有的部分联系起来(请看下图)现在我们给予上一节的基础上,来着重介绍CAPL编程。
CAPL语法是C语言的,又有一些C++的特性,this指针,事件等,对于事件的理解可以学习任意一种面对对象语言,首推C#.NET,可以参考我的博客学习,当然这个似乎比CAPL本身更加难,事件也更加多,但这并不妨碍对事件的理解,其中的事件类型如下图:
下面来几个小例子帮助理解
来个CANoe版本的helloworld!
来兴奋一小下吧。
开整~
在打开CANoe,新建个工程,在SimulationSetup中加个Networknode,点铅笔,忘了吗,上一节刚讲过,右键Start->New,键入如下代码
编译后,关闭CAPLBrower。
运行CANoe工程,结果如下,哇塞成功咯,好有成就感啊。
这个例子似乎跟CAN通讯没啥太大关系啊,好,我们接下来再做一个例子
运行结果如下,按键盘b键,将发送一个CAN消息,连dlc是啥都不知道的同学,推荐先学习一下CAN基础知识,推荐瑞萨公司的《CAN入门书》,讲的非常的好。
运行刚刚的那个例子你会发现,按一下b,只发送一条消息,但在实际应用中CAN消息都是循环连续发送的,我们要对刚刚的程序进行一些修改。
完成这样的功能。
程序如下:
variables
{
message0x400msgA={dlc=1};
mstimertimerA;
intconditionA=0;
}
onkey'a'
{
conditionA=!
conditionA;
if(conditionA==1)
{
setTimer(timerA,200);
}
}
ontimertimerA
{
if(conditionA==1)
{
setTimer(timerA,200);
}
msgA.byte(0)=msgA.byte(0)-1;
output(msgA);
}
运行结果如下:
按A键,Timer启动,发送消息
接下来我们一起来看总结一下CAPL编程的要点:
CAPL编程的学习,需要通过不断在实践中的积累,此外别无他法。
以上真真儿的只是入门,如果你真心看过,不如你真心写过。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CANoe入门 Step to Step二CAPL编程 CANoe 入门 CAPL 编程
![提示](https://static.bdocx.com/images/bang_tan.gif)