求真百科歡迎當事人提供第一手真實資料,洗刷冤屈,終結網路霸凌。

CANoe開發從入門到精通檢視原始碼討論檢視歷史

事實揭露 揭密真相
前往: 導覽搜尋

來自 孔夫子網 的圖片

CANoe開發從入門到精通》,楊金升,張可晨,唐新宇 著,出版社: 清華大學出版社。

清華大學出版社成立於1980年6月,是教育部主管、清華大學主辦的綜合性大學出版社[1]。清華社現年出版圖書、音像製品、電子出版物等近3000種,銷售規模和綜合實力以及在高等教育教材市場、科技圖書市場、館配圖書市場占有率均名列前茅[2]

內容簡介

本書遵循由淺入深的原則,將內容分為三篇。基礎篇首先介紹車載網絡的相關知識,接着介紹CANoe開發環境和常見功能的使用,以便初學者掌握使用CANoe進行一般的總線仿真、測試和分析的方法;入門篇首先介紹CANoe開發總線仿真的基礎知識,接着結合實例重點介紹總線數據庫創建、面板設計,以及CAPL語言設計;進階篇結合廣大開發工程師可能面臨的技術難題,由簡單到複雜地介紹一些典型實例,以提高讀者的實戰技術。

目錄

基 礎 篇

第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 添加Disy面板 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 創建節點Disy的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

參考文獻

  1. 我國出版社的等級劃分和分類標準,知網出書,2021-03-01
  2. 企業簡介,清華大學出版社有限公司