CANoe快速入门2021优秀文档_第1页
CANoe快速入门2021优秀文档_第2页
CANoe快速入门2021优秀文档_第3页
CANoe快速入门2021优秀文档_第4页
CANoe快速入门2021优秀文档_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、CANoe快速入门2021优秀文档CANoe快速入门2021优秀文档CANoe在总线开发中的作用(1)Phase 1simul.nodensimul.node2Simulated bussimul.node1Kl 15Virtual total systemCANoe在总线开发中的作用(1)Phase 1simul.CANoe在总线开发中的作用(2)Phase 2simul.node2simulated rest-of-busrealnode1Kl 15simul.nodenVirtual subystemReal subsystemphys. busCANoe在总线开发中的作用(2)Phas

2、e 2simul.CANoe在总线开发中的作用(3)Phase 3realnode2realnode1Kl 15Real total systemrealnodenPhysical busAnalysis(in real-time)CANoe在总线开发中的作用(3)Phase 3realr硬件接口卡&“狗”CANcardXLCANcaseXL收发器CANcab (CANpiggy)251, 1041, 1054LINcab (LINpiggy)7259CAN卡硬件接口卡&“狗”CAN卡CANoe组成功能强大、操作简单CANoe数据库支持CANdb+ Editor可编程CAPL虚拟仪表Panel

3、 Editor & Panel DesignerCANoe组成功能强大、操作简单CANoe工程环境CANoe工程环境多总线软件硬件控制面板Vector HardwareLicense-Overview多总线软件设置(1)硬件CAN卡类型(编号)收发器类型应用程序通道应用程序License信息设置(1)硬件设置(2)CANoe通道设置Configuration-OptionsConfiguration Settings-Channel Usage设置(2)CANoe灵活复杂HW channelsChannel1 Channel2 Channel1 Channel2 PiggyBack1 Pigg

4、yBack2CANcardXL #1CANcaseXLCANcardXL #2HardwareCANalyzer1 CANalyzer2. CANoe1 CANoe2 CANoe1 for LIN.App channelsApplication灵活复杂HW channelsChannel1 Ch从复杂到简单CANoe波特率设置Configuration-Hardware Configuration从复杂到简单CANoe基本术语报文(消息)与信号报文:engine data (ID 100)ID 100B0B1B2CRC信号发动机温度(第二字节,0-6位)未用(第二字节,第七位)发动机转速(第一

5、,二字节)转换规则发动机转速 :rpm=1*Bit value (0 xFF 代表错误)发动机温度: C =2* Bit value 50 (0 x7F 代表错误)基本术语报文(消息)与信号报文:engine data 基本术语环境变量与系统变量环境变量节点的I/O信号可用于面板或真实I/O系统变量节点内部参数或需要观测的某个数值例如:系统变量1 = 报文1.信号1 报文2.信号2基本术语环境变量与系统变量环境变量欢迎进入CANoe的世界CANoeCANdb+ EditorCAPLPanel Editor & Panel Designer欢迎进入CANoe的世界CANoe欢迎进入CANoe的世

6、界CANoe8大窗口Trace WindowBus Statistics WindowStatistics WindowData WindowGraphic WindowWrite WindowSimulation SetupMeasurement Setup欢迎进入CANoe的世界CANoeCANoe窗口介绍(1)Trace Window报文ID和报文名称(数据库)信号(数据库)时间(相对值或绝对值)通道DLCDir(Tx或Rx)更多内容见右键点击窗口空白处-Configuration-ColumnsCANoe窗口介绍(1)Trace Window蒙太奇(1)在CANoe中添加数据库View

7、-Simulatioin Setup蒙太奇(1)在CANoe中添加数据库蒙太奇(2)符号化显示与十进制/十六进制切换Global switches: Hex/Dec and Numeric/Symbolic toggles 蒙太奇(2)符号化显示与十进制/十六进制切换Global sCANoe窗口介绍(1)清空Trace窗口暂停Trace窗口时间显示切换报文显示切换CANoe窗口介绍(1)清空Trace窗口暂停Trace窗口CANoe窗口介绍(2)Data Window数据库!信号名称信号值(Value)信号单位原始值(Raw Value)Bar图CANoe窗口介绍(2)Data Window

8、CANoe窗口介绍(2)Data Window添加信号右键单击空白处Add Signals选择需要的信号CANoe窗口介绍(2)Data WindowCANoe窗口介绍(3)Graphics Windows数据库!显示信号曲线不同的颜色和线形右键单击空白处选择Configuration放大、缩小、平移CANoe窗口介绍(3)Graphics WindowsCANoe窗口介绍(3)Graphics Windows添加信号右键单击空白处Add Signals选择需要的信号CANoe窗口介绍(3)Graphics WindowsCANoe窗口介绍(4)Statistics Window显示报文出现频

9、率显示错误帧出现频率统计报告右键单击空白处ConfigurationActive生成统计报告(Write Window)Message frequencyIDCANoe窗口介绍(4)Statistics WindowMCANoe窗口介绍(5)Bus Statistics Window总线负载数据帧错误帧CAN卡控制器状态CANoe窗口介绍(5)Bus Statistics WinCANoe窗口介绍(6)Write WindowCAN卡控制器状态License信息统计报告CAPL输出窗口Printf = WriteCANoe窗口介绍(6)Write Window蒙太奇(3)DesktopCrea

10、te New DesktopRename Desktop蒙太奇(3)Desktop蒙太奇(4)固定窗口蒙太奇(4)固定窗口CANoe窗口介绍(7)Measurement SetupView-Measurement Setup每个模块对应一个窗口增加新模块(窗口)插入功能块数据记录CANoe窗口介绍(7)Measurement SetupCANoe窗口介绍(7)新增模块(窗口)CANoe窗口介绍(7)新增模块(窗口)CANoe窗口介绍(7)插入功能块CAPL节点发生器模块回放模块触发模块过滤器模块CANoe窗口介绍(7)插入功能块CANoe窗口介绍(7)过滤器模块通道过滤(Channel Fil

11、ter)报文过滤(Filter)变量过滤(Variables)CANoe窗口介绍(7)过滤器模块CANoe窗口介绍(7)数据记录默认状态关闭多种记录文件类型多种记录配置方式CANoe窗口介绍(7)数据记录CANoe窗口介绍(7)记录文件右键点击文件图标-Logging CANoe窗口介绍(7)记录文件CANoe窗口介绍(7)记录配置方式双击Logging模块全部记录单次记录触发记录CANoe窗口介绍(7)记录配置方式蒙太奇(5) 数据记录的目的是为了离线分析Mode-To Offline蒙太奇(5) 数据记录的目的是为了离线分析CANoe窗口介绍(8)Simulation SetupView-

12、Simulation Setup发生器交互式发生器CAPL节点CANoe窗口介绍(8)Simulation SetupCANoe窗口介绍(8)发生器模块CANoe窗口介绍(8)发生器模块CANoe窗口介绍(8)发生器模块CANoe窗口介绍(8)发生器模块CANoe窗口介绍(8)发生器模块CANoe窗口介绍(8)发生器模块CANoe窗口介绍(8)交互式发生器模块CANoe窗口介绍(8)交互式发生器模块欢迎进入CAPL的世界CAPL (CAN Access Programming Language )类C语言仿真单个节点和整个网络外部环境测试面向事件的编程语言总线事件键盘事件时间事件欢迎进入CAP

13、L的世界CAPL (CAN Access PrCAPL Browser标题栏菜单条工具条浏览树窗格编译信息窗格状态条全局变量编辑窗格CAPL程序编辑窗格CAPL Browser标题栏菜单条工具条浏览树窗格编译信息CAPL事件事件类型事件名程序执行条件事件过程语法结构 *系统事件PreStartCANoe初始化时执行on preStart Start测量开始时执行on start StopMeasuremet测量结束时执行on stopMeasurement CAN控制器事件BusOff硬件检测到BusOff时执行on busOff ErrorActive硬件检测到ErrorActive时执行o

14、n errorActive ErrorPassive硬件检测到ErrorPassive时执行on errorPassive WarningLimit硬件检测到WarningLimit时执行on warningLimit CAN消息事件自定义接收到指定的消息时执行on message Message 时间事件自定义定时时间朝过时执行on timer Timer 键盘事件自定义键值指定的键被下时执行on key Key 错误帧事件ErrorFrame硬件每次检测到错误帧时执行on errorFrame 环境变量事件自定义指定的环境变量值改变时执行on envVar EnvVar CAPL事件事件类

15、型事件名程序执行条件事件过程语法结构 *系CAPL基本语法类C语言,语法与C语言基本相同注释/放置在需要注释的语句之前,注释单行/*注释起始符,其后的内容被注释*/注释结束符,结束由/*开始的注释分号程序结束标识大括号函数体counter = counter+1;if (counter=256) counter=0; stop(); CAPL基本语法类C语言,语法与C语言基本相同counter消息事件on message 123 /对消息123(dec)反应on message 0 x123 /对消息123(hex)反应on message MotorData /对消息MotorData(符号

16、名字)反应on message CAN1.123 /对CAN 通道1收到消息123反应on message * /对所有消息反应on message 100-200 /对100-200间消息反应消息事件on message 123 键盘事件on key a /按a键反应on key /按空格键反应on key 0 x20 /按空格键反应on key F1 /按F1键反应on key Ctrl-F12 /按Ctrl + F12键反应on key PageUP /按PageUp键反应on key Home /按Home键反应on key * /按所有键反应键盘事件on key a /按a键反应时间

17、事件定时器声明msTimer myTimer; /将myTimer 申明ms为单位的变量timer myTimer; /将myTimer 申明s为单位的变量定时器函数setTimer(myTimer,20);/将定时值设定为20ms,并启动cancelTimer(myTimer);/停止定时器myTimer定时器事件on timer myTimer/对myTimer 设定的时间到反应时间事件定时器声明环境变量事件环境变量函数getValue()/获取环境变量的值putValue()/设置环境变量的值环境变量事件on envVar XXX环境变量事件环境变量函数数据类型数据类型名称注释无符号整型

18、byte1个字节word2个字节dword4个字节有符号整型int2个字节long4个字节浮点型float8个字节double8个字节CAN报文message定时器timer秒msTimer毫秒单个字符char1个字节数据类型数据类型名称注释无符号整型byte1个字节word2数据定义全局变量和局部变量变量定义int i;message 0 x123 HiRain;message MotorData Vector;数据定义全局变量和局部变量完整的CAPL程序三个部分变量各种事件自定义函数on start /过程指令块 on message xxx /过程指令块 on key 1 /过程指令块

19、My_function_1(Para_1, Para_2, ) /函数体 My_function_n(Para_1, Para_2, ) /函数体 variables /申明全局变量 完整的CAPL程序三个部分on start My_functCAPL输出文本Write Windowwrite函数int h=100;char ch=a;char s1008=“hundred”;write(“Hundred as a number:%d,%x”,h,h);write(“Hundred as a string:%s”,s100);write(“The square root of two is %

20、6.4g”,sqrt(2.0);CAPL输出文本Write Windowint h=100;消息处理常用语句if (this.id=100) msg.can=2;msg.dlc=8;dword t ; t=this.time;if(this.dir!=RX) return;this.CarSpeed = 200;消息处理常用语句if (this.id=100) 关键字thisthis代表触发事件的对象on message 100 byte byte_0;byte_0 = this.byte(0);.on envVar Switch int val;val = getvalue(this);.关

21、键字thisthis代表触发事件的对象on message报文处理on message 0 x64 if(this.byte(2)=0 xFF) write(“Third byte of the message is invalid”);on message MotorData if(this.temperature.phys=150) write(“Warning: critical temperature”);报文处理on message 0 x64键盘处理on key a message MotorData mMoDa; mMoDa.temperature.phys=60; mMoDa.

22、speed.phys=4300; output(mMoDa);on key b message 100 m100= dlc=1; m100.byte(0)=0 x0B; output(m100);键盘处理on key a 定时器处理Variablesmessage 0 x555 msg1 = dlc=1; msTimer timer1; on startsetTimer(timer1,100); on timer timer1setTimer(timer1,100); msg1.byte(0)=msg1.byte(0)+1; output(msg1); 定时器处理Variables环境变量处理

23、on envVar evSwitch message MotorData msg;msg.bsSwitch = getValue(this);output(msg);环境变量处理on envVar evSwitch 练习1当CANoe启动时,向Write Window输出一句话,例如“Hello the world!”练习1当CANoe启动时,向Write Window输出一句练习2利用发生器模块周期性发送某一报文,例如每隔200ms发送一条EngineData报文。每当按下a键,在Write Window窗口输出一句话,例如“ XXX EngineData messages have sen

24、t.”注:XXX为已经发送的EngineData报文数量。练习2利用发生器模块周期性发送某一报文,例如每隔200ms发练习3不用发生器模块实现Enginedata报文的周期性发送。每当按下a键时,EngineData里面EngSpeed信号值为2000;当按下b键盘时, EngineData里面EngSpeed信号值为4000;如果EngineData里面EngSpeed信号为4000,则发送ABSData报文,同时在Write Window输出“Warning!”当按下c键时,停止EngineData报文发送。练习3不用发生器模块实现Enginedata报文的周期性发送欢迎进入CANdb+

25、Editor的世界DBC文件编辑工具启动CANoeFile-Open CANdb Editor点击欢迎进入CANdb+ Editor的世界DBC文件编辑工具创建一个新的CAN数据库File-Create Database 选择模板,鼠标双击或 按 OK按钮指定数据库文件类型、 文件名及保存目录按Save按钮。 一个新数据库创建完成创建一个新的CAN数据库File-Create Datab创建对象(信号、报文、节点、环境变量和ECU)在Overview窗口左边 选择所需创建对象的类型右键点击对象类型, 在快捷菜单中选择New使用配置对话框设置 所创建对象的系统参数值点击确定按钮, 一个新对象便创

26、建完毕创建对象(信号、报文、节点、环境变量和ECU)在Overvi复制已有对象Copy-Paste选择已有对象Ctrl+c选择对象类型Ctrl+v复制已有对象Copy-Paste修改/编辑已有对象直接双击修改/编辑已有对象直接双击对象链接(1/2)信号与报文之间的连接发送报文与节点之间的连接鼠标拖拽或Copy-Insert对象链接(1/2)信号与报文之间的连接对象链接(2/2)接收报文与节点之间的连接通过信号间接定义双击节点, 选择Mapped Rx Sig.页签点击Add,选择接收信号点击OK点击确定对象链接(2/2)接收报文与节点之间的连接通信矩阵View-Communication Ma

27、trix显示信号、消息、及网络节点的关系以信号为行,网络节点为列消息名显示于表中,对应了包含的信号与发送/接收的节点通信矩阵View-Communication Matrix数值表(1/2)新建数值表View-Value Tables右键点击空白处, 选择New在对话框中输入数值,点击确定新的数值表创建完成数值表(1/2)新建数值表数值表(2/2)分配数值表数值表可以分配给信号或环境变量数值表(2/2)分配数值表属性列表Vector Tool Chain AttributesGeneralManufacturerInteraction LayerGenMsgCycleTimeTransport

28、 Protocol and DiagnosticsDiagRequest, DiaResponseNetwork ManagementNmBaseAddress, NmStationAdressTool specificBusType属性列表Vector Tool Chain Attribut新建属性View-Attribute Definitions右键点击空白处, 选择New在对话框中输入相关参数,点击确定新的属性创建完成新建属性View-Attribute Definition对象属性修改双击对象对象属性修改双击对象一致性检查File- Consistency Check一致性检查Fil

29、e- Consistency Check数据导出选择需要导出的对象信号,报文,节点,ECU或网络File-Export-Export List of Objects数据导出选择需要导出的对象创建面板/虚拟仪表Panel Editor传统的面板编辑器File-Open Panel EditorPanel Designer新的面板编辑器File-Open Panel Designer创建面板/虚拟仪表Panel EditorPanel Editor面板区控件区Panel Editor面板区控件区面板设置Options-Window setting定义面板名称面板尺寸背景颜色透明色控件的缺省字体和颜

30、色Options-Change grid网格大小网格可视面板设置Options-Window setting控件列表图标名称控件列表图标名称文本与位图文本位图文本与位图文本位图开关与多态位图开关多态位图开关与多态位图开关多态位图其它常见的控件十六进制滑动条仪表输入/输出显示其它常见的控件十六进制滑动条仪表输入/输出显示面板使用保存面板File-Save使用面板(CANoe)Configuration-Panel Configuration添加面板显示面板面板使用保存面板添加面板显示面板Panel Designer控件窗口控件属性工作区对象窗口Panel Designer控件窗口控件属性工作区对象窗口设置Settings-Controls Properties设置控件的字体、颜色和字号Settings-Symbol Explorer设置信号、环境变量和系统变量对应的默认控件设置Settings-Controls Propertie对象窗口显示信号、环境变量和系统变量直接拖拽变量到工作区生成控件对象窗口显示信号、环境变量和系统变量工作区创建面板支持同时编辑多个面板工作区创建面板控件窗口显示控件双击在工作区产生控件控

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论