书籍详情

CANoe开发从入门到精通

CANoe开发从入门到精通

作者:杨金升,张可晨,唐新宇 著

出版社:清华大学出版社

出版时间:2019-04-01

ISBN:9787302522898

定价:¥89.00

购买这本书可以去
内容简介
  本书遵循由浅入深的原则,将内容分为三篇。基础篇首先介绍车载网络的相关知识,接着介绍CANoe开发环境和常见功能的使用,以便初学者掌握使用CANoe进行一般的总线仿真、测试和分析的方法;入门篇首先介绍CANoe开发总线仿真的基础知识,接着结合实例重点介绍总线数据库创建、面板设计,以及CAPL语言设计;进阶篇结合广大开发工程师可能面临的技术难题,由简单到复杂地介绍一些典型实例,以提高读者的实战技术。
作者简介
暂缺《CANoe开发从入门到精通》作者简介
目录
基  础  篇
第1章  车载网络概述    3
1.1  车载网络起源    3
1.2  CAN总线概述    4
 1.2.1  CAN总线简史    4
 1.2.2  CAN总线特点    4
 1.2.3  CAN总线主要应用    5
 1.2.4  CAN-FD协议简介    6
1.3  LIN总线概述    6
 1.3.1  LIN总线简史    6
 1.3.2  LIN总线特点    7
 1.3.3  LIN总线主要应用    7
1.4  目前典型车载网络架构    7
 1.4.1  紧凑型    8
 1.4.2  豪华型    8
1.5  主要的车载网络    9
1.6  车载网络发展趋势    11
第2章  CANoe概述    12
2.1  关于Vector公司    12
2.2  CANoe简介    13
2.3  CANoe在ECU项目开发中的作用    13
 2.3.1  阶段:全仿真网络系统    13
 2.3.2  第二阶段:真实节点和部分仿真节点共存    14
 2.3.3  第三阶段:全真实节点的网络系统    14
2.4  CANoe不同版本的区别    15
 2.4.1  CANoe pex版本    15
 2.4.2  CANoe run版本    15
 2.4.3  CANoe full版本    16
 2.4.4  关于Demo版本CANoe    16
 2.4.5  关于64bit版本CANoe    17
2.5  CANoe安装    17
 2.5.1  系统配置要求    17
 2.5.2  常见硬件接口卡    18
 2.5.3  安装过程    18
2.6  CANoe常见的总线授权选项    23
2.7  CANoe的授权管理    24
2.8  CANoe的硬件配置    25
 2.8.1  硬件信息查看    25
 2.8.2  硬件配置    27
 2.8.3  通道数量设置    28
第3章  CANoe开发环境    29
3.1  CANoe主界面    29
3.2  CANoe选项卡和功能区    30
 3.2.1  File菜单    30
 3.2.2  Home功能区    31
 3.2.3  Analysis功能区    32
 3.2.4  Simulation功能区    33
 3.2.5  Test功能区    34
 3.2.6  Diagnostics功能区    35
 3.2.7  Environment功能区    36
 3.2.8  Hardware功能区    37
 3.2.9  Tools功能区    38
 3.2.10  Layout功能区    39
3.3  常用仿真窗口    40
 3.3.1  Simulation Setup窗口    40
 3.3.2  Start Values窗口    40
3.4  常见诊断窗口    41
 3.4.1  Diagnostic Console窗口    41
 3.4.2  Diagnostic Session Control窗口    42
 3.4.3  Fault Memory窗口    42
3.5  常见测试窗口    43
 3.5.1  Test Unit窗口    43
 3.5.2  Test Module窗口    45
第4章  CANoe总线测量和分析    46
4.1  CANoe总线测量和分析概述    46
4.2  Measurement Setup窗口    47
 4.2.1  主要功能    48
 4.2.2  插入分析窗口或数据记录模块    48
 4.2.3  插入功能模块    49
4.3  常见分析窗口    49
 4.3.1  Write窗口    49
 4.3.2  Trace窗口    51
 4.3.3  Graphic窗口    52
 4.3.4  State Tracker窗口    52
 4.3.5  Data窗口    53
 4.3.6  Statistics窗口    53
 4.3.7  Scope窗口    54
 4.3.8  Video窗口    55
 4.3.9  GPS窗口    55
4.4  测量数据记录设置及处理    56
 4.4.1  Logging文件设置    56
 4.4.2  Logging文件格式    57
 4.4.3  Filter设置    57
 4.4.4  Trigger设置    58
 4.4.5  Trace导入和导出    60
 4.4.6  Trace查看和编辑    63
 4.4.7  Trace回放    64
4.5  离线分析    67
4.6  发生器模块    68
 4.6.1  CAN IG模块    68
 4.6.2  IG模块    69
第5章  CANoe仿真工程配置及运行    71
5.1  配置仿真工程    71
 5.1.1  物理通道分配问题    71
 5.1.2  波特率设置问题    71
 5.1.3  授权或相关选项缺失问题    74
 5.1.4  虚拟通道设置问题    75
 5.1.5  硬件连接问题    76
5.2  不同版本工程文件之间的兼容性处理    76
5.3  仿真工程个性化设置    78
 5.3.1  添加/修改的Desktop设置    78
 5.3.2  保存不同的工程配置文件    78
5.4  仿真工程文件夹的命名习惯    79
  入  门  篇
第6章  车载总线仿真基础    83
6.1  ECU硬件/软件架构介绍    83
 6.1.1  硬件架构    83
 6.1.2  软件架构    84
6.2  开发仿真工程的必要性    85
 6.2.1  软件开发的V模型    86
 6.2.2  仿真工程的必要性    86
6.3  CANoe仿真工程架构    87
第7章  开发个CANoe仿真工程    88
7.1  创建个仿真工程    88
7.2  添加CAN数据库    89
 7.2.1  新建CAN数据库    89
 7.2.2  添加报文和信号    89
 7.2.3  添加数据库到工程中    91
7.3  定义系统变量    91
7.4  创建仿真面板    92
 7.4.1  创建开关面板    92
 7.4.2  创建指示灯面板    93
7.5  创建网络节点    93
 7.5.1  添加网络节点    93
 7.5.2  添加Hello World代码    95
 7.5.3  添加Switch代码    95
 7.5.4  添加Light代码    96
7.6  工程运行测试    96
7.7  查看Trace信息    97
第8章  总线数据库设计    98
8.1  总线数据库概述    98
8.2  CANdb Editor    98
 8.2.1  File菜单    99
 8.2.2  工具栏    100
8.3  在X-Vehicle项目中创建CAN总线数据库    100
 8.3.1  基于模板新建总线数据库    100
 8.3.2  Networks    101
 8.3.3  ECUs    102
 8.3.4  Network Nodes    102
 8.3.5  Messages    103
 8.3.6  Signals    105
 8.3.7  Environment Variable    109
 8.3.8  Attribute    110
 8.3.9  Value Table    113
 8.3.10  Byte Order    114
8.4  导入数据库文件    116
8.5  LIN总线数据库编辑器LDF Explorer    117
第9章  Panel设计    118
9.1  Panel概述    118
9.2  Panel设计环境介绍    119
 9.2.1  File菜单    119
 9.2.2  Home功能区    120
 9.2.3  Panel功能区    121
 9.2.4  Properties功能区    122
 9.2.5  Toolbox窗口    122
 9.2.6  Symbol Explorer窗口    122
 9.2.7  Working Area窗口    123
 9.2.8  Properties窗口    124
 9.2.9  Output Window    124
9.3  控件介绍    125
 9.3.1  Switch/Indicator控件    126
 9.3.2  LED Control控件    127
 9.3.3  Input/Output Box控件    128
 9.3.4  Hex/Text Editor控件    130
 9.3.5  Analog Gauge控件    131
 9.3.6  Meter控件    132
9.4  多帧图片简介    133
9.5  系统变量简介    134
9.6  在X-Vehicle项目中创建仿真Panel    136
 9.6.1  添加Control面板    136
 9.6.2  添加Display面板    140
 9.6.3  创建一个Desktop    143
第10章  CAPL语言设计    145
10.1  CAPL概述    145
 10.1.1  CAPL主要用途    145
 10.1.2  CAPL的特点    146
10.2  CAPL开发环境—— CAPL浏览器简介    146
 10.2.1  File菜单    147
 10.2.2  功能区    147
 10.2.3  导航区和编辑区    150
 10.2.4  函数浏览区    150
 10.2.5  对象浏览区    150
 10.2.6  输出窗口    151
10.3  CAPL基础——数据类型    151
 10.3.1  变量的声明与定义    152
 10.3.2  简单变量    153
 10.3.3  复合类型    154
 10.3.4  特殊类型    155
10.4  CAPL基础——常见运算    157
10.5  CAPL基础——流程控制    158
 10.5.1  if条件语句    158
 10.5.2  switch语句    158
 10.5.3  while循环语句    159
 10.5.4  for循环语句    160
 10.5.5  break语句    160
 10.5.6  return语句    161
10.6  CAPL基础——程序结构    161
 10.6.1  头文件    161
 10.6.2  全局变量声明    162
 10.6.3  事件处理    162
 10.6.4  自定义函数    169
10.7  CAPL基础——常用函数库简介    170
 10.7.1  通用函数    170
 10.7.2  计算函数    172
 10.7.3  字符串函数    172
 10.7.4  CAN总线函数    173
 10.7.5  LIN总线函数    174
 10.7.6  诊断函数    174
10.8  CAPL基础——总线数据库的使用    175
10.9  CAPL基础——变量和信号的访问    175
 10.9.1  CAPL中访问信号    175
   10.9.2  CAPL中访问系统变量    176
   10.9.3  CAPL中访问环境变量    176
10.10  在X-Vehicle项目中添加CAPL程序    177
   10.10.1  创建节点Engine的CAPL程序    178
   10.10.2  创建节点Door的CAPL程序    178
   10.10.3  创建节点Display的CAPL程序    180
10.11  工程运行测试    181
第11章  仿真工程编译和调试    182
11.1  CAPL程序编译    182
 11.1.1  条件编译    182
 11.1.2  编译CAPL程序    183
11.2  CAPL程序的Debug功能调试    184
 11.2.1  设置Debug Mode    184
 11.2.2  Debugger工具栏    185
 11.2.3  设置调试断点    185
 11.2.4  变量查看    186
 11.2.5  断点查看    187
11.3  使用Write窗口调试CAPL程序    187
第12章  仿真工程开发入门—— CAN仿真    190
12.1  总线仿真工程概述    190
12.2  总线仿真工程开发流程及策略    190
 12.2.1  开发流程    190
 12.2.2  仿真工程开发策略    191
12.3  工程实例简介    192
 12.3.1  网络拓扑图    192
 12.3.2  实现功能    193
12.4  工程实现    193
 12.4.1  创建仿真工程    194
 12.4.2  DBC文件设计与导入    194
 12.4.3  系统变量    197
 12.4.4  面板设计    198
 12.4.5  CAPL代码实现    207
 12.4.6  Automation Sequences    217
 12.4.7  分析窗口设置    218
 12.4.8  Trace窗口与Logging    220
 12.4.9  Desktop布局    221
12.5  工程运行测试    223
  进  阶  篇
第13章  仿真工程开发进阶I ——  CAN LIN仿真    227
13.1  工程实例简介    227
 13.1.1  网络拓扑图    227
 13.1.2  实现功能    228
13.2  工程实现    229
 13.2.1  添加LIN总线支持    229
 13.2.2  数据库LDF文件设计与导入    230
 13.2.3  添加环境变量    236
 13.2.4  面板设计    237
 13.2.5  CAPL实现    248
 13.2.6  Trace窗口与Logging    256
 13.2.7  设置Desktop布局    257
13.3  工程运行测试    257
13.4  扩展话题——关于网络管理    258
第14章  仿真工程开发进阶II——仿真 测试    260
14.1  基于CANoe的自动化测试系统简介    260
14.2  Test Feature Set功能简介    261
 14.2.1  约束和条件设置函数    261
 14.2.2  信号测试函数    261
 14.2.3  等待指示函数    262
 14.2.4  测试控制函数    263
 14.2.5  故障注入函数    263
 14.2.6  测试判别函数    264
 14.2.7  测试架构函数    264
 14.2.8  测试报告函数    265
14.3  Test Service Library功能简介    265
 14.3.1  检测函数    266
 14.3.2  状态报告函数    268
 14.3.3  激励函数    269
 14.3.4  检测控制函数    270
14.4  测试单元与测试模块简介    270
 14.4.1  测试单元与测试模块的区别    271
 14.4.2  测试模块架构    271
14.5  工程实例简介    272
14.6  工程实现    272
 14.6.1  添加CAPL测试模块    272
 14.6.2  测试方法分析    274
 14.6.3  CAPL测试用例    276
 14.6.4  CAPL测试模块    282
14.7  工程运行测试    283
 14.7.1  测试执行    283
 14.7.2  测试报告    285
14.8  扩展话题——关于vTESTstudio    286
第15章  仿真工程开发进阶III —— 仿真 诊断    288
15.1  汽车诊断技术概述    288
 15.1.1  诊断术语    289
 15.1.2  OBD诊断与增强型诊断    289
 15.1.3  诊断协议    289
 15.1.4  诊断接口    290
 15.1.5  诊断周期    291
 15.1.6  UDS诊断服务    291
 15.1.7  Vector诊断工具简介    292
15.2  CANoe诊断功能简介    293
 15.2.1  诊断描述文件    294
 15.2.2  安全访问服务    294
 15.2.3  诊断测试窗口    295
15.3  CANoe常见诊断函数    295
 15.3.1  通信/设定功能函数    295
 15.3.2  安全访问函数    296
 15.3.3  对象访问函数    296
 15.3.4  参数访问函数    297
 15.3.5  诊断测试函数    298
15.4  工程实例简介    299
15.5  工程实现    299
 15.5.1  CDD文件导入    299
 15.5.2  Security DLL文件配置    301
 15.5.3  诊断控制台    301
 15.5.4  诊断测试面板    302
 15.5.5  添加Tester节点    314
 15.5.6  虚拟诊断响应    317
 15.5.7  自动化诊断测试方法分析    318
 15.5.8  CAPL诊断测试模块实现    319
 15.5.9  制作GenerateKey.dll    332
15.6  工程运行测试    332
 15.6.1  手动诊断测试面板    332
 15.6.2  自动化诊断测试模块    333
15.7  扩展话题——VT System在测试中的应用    335
第16章  CANoe高级编程 —— COM Server技术    336
16.1  COM接口技术简介    336
16.2  CANoe COM Server简介及设置    336
16.3  工程实例简介    337
16.4  开发实现 —— CANoe工程    338
 16.4.1  CANoe工程中供调用的系统变量    338
 16.4.2  CANoe工程中供调用的总线信号    339
 16.4.3  新建CANoe CAPL函数    340
16.5  开发实现——VB.NET工程    342
 16.5.1  新建VB.NET工程    342
 16.5.2  添加CANoe相关引用    342
 16.5.3  界面设计    344
 16.5.4  全局变量定义    348
 16.5.5  CANoe应用和Measurement对象控制    348
 16.5.6  CANoe事件处理    349
 16.5.7  系统变量操作    349
 16.5.8  总线信号操作    350
 16.5.9  CAPL函数调用    350
 16.5.10  完整代码    351
16.6  工程运行测试    362
16.7  扩展话题 —— Python脚本调用COM Server    362
第17章  CANoe高级编程 —— CAPL DLL技术    363
17.1  CAPL DLL技术概述    363
 17.1.1  CAPL DLL函数列表    364
 17.1.2  CAPL回调函数    365
17.2  工程实例简介    366
17.3  工程实现 —— VC.NET开发CAPL DLL    366
 17.3.1  创建用户自定义函数 —— CRC算法函数    366
 17.3.2  创建用户自定义函数 —— 读取MAC地址函数    369
17.4  工程实现 —— CANoe调用CAPL DLL    371
 17.4.1  如何添加CAPL DLL    371
 17.4.2  DLL路径搜索顺序    372
 17.4.3  添加系统变量    372
 17.4.4  添加一个测试面板    372
 17.4.5  添加CAPL代码    375
17.5  工程运行测试    378
17.6  扩展话题 —— CANoe仿真工程代码保护    379
 17.6.1  编译后删除源代码    379
 17.6.2  加密后删除源代码    380
 17.6.3  加密保护与硬件绑定    380
第18章  CANoe高级编程 —— C Library API技术    381
18.1  CCL库文件概述    381
18.2  常用CCL接口函数介绍    381
18.3  工程实例简介    383
18.4  工程实现 —— VC.NET开发CCL    384
 18.4.1  如何创建一个CCL库文件    384
 18.4.2  CCL代码实现    386
18.5  工程实现 —— CANoe调用CCL    389
 18.5.1  如何调用CCL API    389
 18.5.2  添加系统变量    390
 18.5.3  添加测试面板    390
 18.5.4  添加IG模块    392
18.6  工程运行测试    392
第19章  CANoe高级编程 —— 自定义菜单插件    394
19.1  自定义菜单插件概述    394
19.2  工程实例简介    394
19.3  开发自定义菜单插件    394
 19.3.1  创建和配置工程    395
 19.3.2  代码实现    396
19.4  在CANoe中配置自定义菜单插件    401
19.5  工程运行测试    401
19.6  扩展话题 —— 关于C#语言    402
第20章  CANoe高级编程 —— .NET测试模块开发    403
20.1  .NET测试模块开发概述    403
20.2  .NET测试环境设定    404
 20.2.1  配置CANoe的.NET文件编辑器    404
 20.2.2  配置Visual C#项目开发模板    405
20.3  工程实例简介    406
20.4  工程实现 —— .NET测试模块    406
 20.4.1  添加.NET测试模块    406
 20.4.2  调用CAPL测试库中的测试用例    407
 20.4.3  新建C#测试模块工程    409
 20.4.4  数据库和系统变量的访问方法    409
 20.4.5  .NET测试模块开发    410
 20.4.6  .NET测试模块配置和编译    414
20.5  工程运行测试    415
20.6  扩展话题 —— XML测试模块    416
第21章  CANoe高级编程 —— TCP/IP通信编程    419
21.1  网络传输协议简介    419
 21.1.1  网际层    420
 21.1.2  传输层    420
 21.1.3  Socket编程简介    421
21.2  .NET编程中TCP/IP相关类的简介    421
21.3  CAPL中TCP/IP相关函数的简介    424
21.4  工程实例简介    426
21.5  工程实现 —— C#  TCP/IP服务器端开发    427
 21.5.1  新建一个工程    427
 21.5.2  界面设计    427
 21.5.3  C#代码实现    429
21.6  工程实现 —— CANoe TCP/IP客户端开发    434
 21.6.1  创建仿真工程    434
 21.6.2  新建系统变量    434
 21.6.3  Panel设计    435
 21.6.4  CAPL实现    438
21.7  工程运行测试    446
21.8  扩展话题 —— UDP Socket通信    447
第22章  CANoe高级编程 —— FDX协议与HIL系统通信    449
22.1  FDX协议    449
 22.1.1  Datagram    450
 22.1.2  创建Data Groups和Items    454
 22.1.3  FreeRunning模式    455
22.2  工程实例简介    455
22.3  工程实现 —— CANoe项目    456
 22.3.1  创建FDX Description文件    456
 22.3.2  配置FDX    457
22.4  工程实现 —— VC.NET项目    458
 22.4.1  VC.NET中FDX相关类简介    458
 22.4.2  Datagram结构体定义    459
 22.4.3  界面设计    461
 22.4.4  代码实现    463
22.5  工程运行测试    480
22.6  扩展话题 —— 硬件在环    481
第23章  CANoe高级编程 —— 调用LabVIEW    482
23.1  LabVIEW Integration系统设置要求    482
23.2  工程实例简介    482
23.3  工程实现 —— LabVIEW    483
 23.3.1  创建共享变量    483
 23.3.2  创建DemoVI    484
23.4  工程实现 —— CANoe    485
 23.4.1  启用LabVIEW Integration设置    485
 23.4.2  设置Signal Generators    486
 23.4.3  CAPL调用LabVIEW共享变量    487
 23.4.4  添加一个Desktop布局    488
23.5  工程运行测试    488
23.6  扩展话题 —— LabVIEW调用CANoe    490
附录A  英文缩写对照表    491
参考文献    494
猜您喜欢

读书导航