CANoe開發與CAPL編程實踐
巫亮
- 出版商: 電子工業
- 出版日期: 2025-01-01
- 定價: $834
- 售價: 8.5 折 $709
- 語言: 簡體中文
- 頁數: 604
- ISBN: 7121493578
- ISBN-13: 9787121493577
下單後立即進貨 (約4週~6週)
相關主題
商品描述
這是一本深入講解CANoe軟件和CAPL語言編程的圖書。本書基於CANoe 16版本,從實際工程應用出發,由淺入深地講解了CANoe軟件的功能和使用,以及CAPL語言的編程語法和技巧,力圖幫助讀者從零開始體系化地掌握CANoe軟件在車載網絡測試中的應用。本書的第1~2章講解了CANoe軟件的安裝與卸載,以及如何創建CANoe工程。第3章講解了CAPL編程的語法知識。第4章講解了CANoe軟件的常用功能,包括仿真設置、測量分析、測試功能等。第5章講解了Panel Designer工具的使用和Panel設計技巧。第6~8章從實戰應用的角度講解XML編程、診斷,以及CAN通信。第9章介紹了CANoe軟件對硬件的控制。第10~12章介紹了CAPL常用函數在實際項目中的應用、測試功能集和測試服務函數庫。第13~14章講解了如何在CAPL程序中創建和使用DLL文件,以及CANoe軟件的COM編程技術在更高階自動化場景中的應用。
目錄大綱
第1章 CANoe概述 1
1.1 CANoe簡介 1
1.2 CANoe下載與安裝 1
1.3 CANoe軟件版本分類 6
1.4 CANoe授權管理 7
1.5 CANoe硬件簡介 8
1.6 CANoe功能簡介 12
第2章 創建CANoe工程 17
2.1 仿真總線與真實總線 17
2.2 創建Simulation Bus工程 18
2.3 第一行CAPL代碼 22
2.4 創建Real Bus工程 23
第3章 CAPL編程 26
3.1 CAPL Browser 26
3.2 CAPL基本語法 28
3.3 CAPL數據類型 34
3.3.1 數值類型 34
3.3.2 格式化打印 35
3.3.3 數組 38
3.3.4 枚舉類型 46
3.3.5 結構體類型 50
3.3.6 鍵值對類型 63
3.3.7 定時器 68
3.3.8 報文 74
3.3.9 信號 82
3.3.10 系統變量 87
3.3.11 環境變量 100
3.4 運算符 103
3.4.1 算術運算符 103
3.4.2 比較運算符 104
3.4.3 邏輯運算符 107
3.4.4 位運算符 110
3.4.5 賦值運算符 112
3.4.6 其他運算符 114
3.4.7 不支持的運算符 114
3.4.8 運算符優先級 115
3.5 流程控制 118
3.5.1 判斷 118
3.5.2 循環 123
3.5.3 break語句 128
3.5.4 continue語句 129
3.5.5 return語句 130
3.6 CAPL文件結構 133
3.6.1 文件分類 133
3.6.2 文件編碼 135
3.6.3 Include 模塊 135
3.6.4 Variables 模塊 136
3.6.5 事件結構 138
3.6.6 函數 143
3.6.7 測試函數 144
3.6.8 測試用例 145
3.7 CAPL配色方案 145
3.8 CAPL文件加密 146
3.9 CAPL總線常量 147
3.10 條件編譯 149
第4章 CANoe功能 152
4.1 輸出窗口 152
4.2 仿真設置 160
4.3 測量分析 169
4.3.1 測量設置 170
4.3.2 跟蹤窗口 171
4.3.3 統計窗口 180
4.3.4 圖形窗口 183
4.3.5 數據窗口 190
4.3.6 數據過濾 190
4.3.7 數據保存 193
4.3.8 數據回放 198
4.4 測試功能 206
4.4.1 測試架構 206
4.4.2 測試序列結構 207
4.4.3 測試模塊 207
4.4.4 測試單元 216
4.4.5 斷點調試 223
4.5 符號管理窗口 225
4.6 符號映射窗口 226
4.7 開始值窗口 227
4.8 信號發生器 227
4.9 可視化序列 231
4.10 創建DBC文件 234
第5章 Panel設計 243
5.1 Panel Designer簡介 243
5.2 新建Panel工程 248
5.3 控件布局 250
5.4 Panel面板設置 253
5.5 靜態控件 255
5.6 按鈕 256
5.7 開關/顯示控件 259
5.8 路徑對話框 263
5.9 輸入/輸出框 265
5.10 組合框 267
5.11 覆選框 268
5.12 單選按鈕 269
5.13 進度條 271
5.14 滑動條 273
5.15 十六進制/文本編輯器 275
5.16 CAPL輸出視圖 278
5.17 數碼管 280
5.17.1 LED燈 280
5.17.2 LCD顯示屏 282
5.18 時鐘 284
5.19 選項卡 284
5.20 面板控制按鈕 286
5.21 測量控制 286
5.22 面板控制函數 287
第6章 XML編程 291
6.1 測試模塊 291
6.2 測試分組 292
6.3 CAPL測試用例 294
6.4 XML測試用例 300
6.5 調用CAPL函數 304
6.6 測試準備和結束 306
6.7 測試報告信息打印 308
6.8 延時等待 311
6.9 測試序列分類 312
第7章 診斷 316
7.1 診斷技術介紹 316
7.2 診斷描述文件 318
7.3 診斷報文和通信報文的區別 324
7.4 傳輸層協議 325
7.5 CAPL診斷函數及其自動化 331
7.6 診斷自動化測試用例設計實戰 368
7.7 基於GenericUDS.cdd實現診斷 372
7.8 基於診斷ID實現CAN TP層功能 374
7.9 基於OSEK_TP.dll實現診斷 387
7.10 診斷協議自動化軟件 392
第8章 CAN通信 393
8.1 交互層模型庫 393
8.1.1 標準模型庫 393
8.1.2 IL層控制函數 394
8.1.3 IL層故障注入 397
8.2 仿真Counter信號和CRC信號 400
第9章 CANoe硬件控制 404
9.1 RS232功能 404
9.1.1 串口連接 404
9.1.2 串口數據發送 405
9.1.3 串口數據接收 407
9.1.4 錯誤回調函數 409
9.1.5 虛擬串口驗證 410
9.2 I/O功能 411
9.2.1 I/O配置 411
9.2.2 I/O口的數字輸入功能 412
9.2.3 I/O口的模擬輸入功能 414
9.2.4 I/O口的數字輸出功能 415
9.2.5 I/O口的模式設置 416
9.3 PicoScope示波器 417
9.3.1 PicoScope選型 418
9.3.2 PicoScope示波器驅動安裝 418
9.3.3 硬件連接 419
9.3.4 Scope窗口 419
9.3.5 Scope工具欄 421
9.3.6 Scope相關函數 422
9.3.7 PicoScope和VH6501聯合使用 431
第10章 常用函數庫 434
10.1 時間函數 434
10.2 數學函數 436
10.3 字符串函數 439
10.4 數據庫訪問函數 449
10.5 cmd指令 454
10.6 文件處理 461
10.6.1 讀/寫文本文件 462
10.6.2 讀/寫.ini文件 467
10.6.3 讀取.csv文件 470
10.6.4 將.xlsx格式轉換為.csv格式 476
10.6.5 文件相對路徑和絕對路徑 477
10.7 數據類型轉換實例 481
10.7.1 浮點數和整型的相互轉換 481
10.7.2 Byte數組和整型的相互轉換 482
10.7.3 Hex字符串和Byte數組的相互轉換 485
第11章 測試功能集 489
11.1 測試報告 489
11.1.1 測試報告格式 489
11.1.2 測試報告過濾 489
11.1.3 測試用例信息 490
11.1.4 測試結果 493
11.1.5 測試配置信息 498
11.1.6 在測試報告中插入圖片 501
11.1.7 在測試報告中插入表格 503
11.1.8 輸出診斷數據 504
11.1.9 更改測試報告路徑 505
11.2 故障注入函數 506
11.2.1 禁用報文 507
11.2.2 設置報文屬性 508
11.2.3 斷開ECU連接 509
11.3 測試等待函數 510
11.3.1 延時等待 510
11.3.2 等待Symbols值匹配 510
11.3.3 等待報文 512
11.3.4 獲取報文數據 513
11.3.5 等待指定文本出現 516
11.3.6 等待診斷發送響應完畢 517
11.3.7 用戶交互 517
11.4 注冊事件 520
11.4.1 等待注冊的事件全部發生 521
11.4.2 等待任何一個注冊事件發生 523
第12章 測試服務函數庫 525
12.1 報文DLC檢測 525
12.2 報文周期檢測 526
12.3 節點所有報文周期 528
12.4 錯誤報文計數檢測 529
12.5 未定義報文接收檢測 531
12.6 報文未使用位默認值檢測 532
12.7 節點所有報文未使用位的默認值檢測 533
12.8 同時激活多個檢測事件 535
12.9 測試事件生成查詢函數 535
第13章 CANoe DLL 538
13.1 DLL示例工程 538
13.2 創建DLL工程 540
13.3 動態調用DLL文件 542
13.4 創建CAPL可用的DLL文件 543
13.5 回調函數 548
13.6 創建SendKey.dll文件 551
第14章 COM編程(Python) 555
14.1 COM示例工程 555
14.2 Python COM編程實踐 558
14.2.1 COM對象層次結構 558
14.2.2 COM對象接口定義 558
14.2.3 Application對象 559
14.2.4 Measurement對象 565
14.2.5 Signal對象 568
14.2.6 System Variable對象 570
14.2.7 Diagnostic對象 571
14.2.8 TestModule 對象 576
14.2.9 TestCase對象 579
14.2.10 TestConfiguration對象 584
14.2.11 CastTo函數 586
14.2.12 總結 588