第1章 搭建軟件開發(fā)環(huán)境…………………………………………………………… 1
1.1 下載與安裝所需的軟件……………………………………………………… 1
1.1.1 下載開發(fā)軟件包………………………………………………………… 1
1.1.2 安裝開發(fā)軟件包………………………………………………………… 1
1.1.3 安裝更新………………………………………………………………… 4
1.2 創(chuàng)建一個(gè)包含DSP/BIOS的C6000DSP工程……………………………… 5
1.3 設(shè)置MATLABR2015b與CCS5.11數(shù)據(jù)鏈配置……………………… 14
1.3.1 checkEnvSetup()……………………………………………………… 14
1.3.2 xmakefilesetup ………………………………………………………… 16
1.4 有關(guān)MATLABR2015b與CCS3.3的配置問題………………………… 18
第2章 MATLAB高級應(yīng)用基礎(chǔ)…………………………………………………… 19
2.1 MATLAB的功能簡介……………………………………………………… 20
2.1.1 函數(shù)瀏覽器……………………………………………………………… 20
2.1.2 函數(shù)提示………………………………………………………………… 21
2.1.3 目錄瀏覽器……………………………………………………………… 22
2.1.4 文件交換服務(wù)…………………………………………………………… 24
2.2 M 文件……………………………………………………………………… 26
2.2.1 M 文件結(jié)構(gòu)…………………………………………………………… 26
2.2.2 清理程序………………………………………………………………… 28
2.2.3 創(chuàng)建M 文件…………………………………………………………… 29
2.2.4 M 腳本文件…………………………………………………………… 29
2.2.5 M 函數(shù)………………………………………………………………… 30
2.2.6 匿名函數(shù)………………………………………………………………… 34
2.3 加快M 文件的編寫………………………………………………………… 36
2.3.1 什么是代碼檢查器……………………………………………………… 36
2.3.2 代碼檢查器的使用方法………………………………………………… 36
2.3.3 代碼檢查器實(shí)例………………………………………………………… 36
2.4 加快M 文件的調(diào)試cell ……………………………………………… 40
2.4.1 什么是cell……………………………………………………………… 40
2.4.2 cell的定義與刪除……………………………………………………… 40
2.4.3 cell調(diào)試實(shí)例…………………………………………………………… 42
2.4.4 應(yīng) 用…………………………………………………………………… 44
2.5 數(shù)據(jù)存取……………………………………………………………………… 47
2.5.1 生成MAT文件………………………………………………………… 47
2.5.2 加載MAT文件………………………………………………………… 49
2.5.3 讀/寫音視頻文件……………………………………………………… 50
2.6 代碼效率分析………………………………………………………………… 53
2.7 MATLABCoder簡介……………………………………………………… 55
2.7.1 MATLABCoder支持/不支持生成C代碼的類型………………… 56
2.7.2 MATLABCoder的使用要求………………………………………… 57
2.7.3 EmbeddedCoder的常用命令………………………………………… 57
2.7.4 C編譯器的設(shè)置………………………………………………………… 58
2.7.5 應(yīng)用實(shí)例………………………………………………………………… 59
第3章 圖形用戶界面簡介………………………………………………………… 72
3.1 GUIDE簡介………………………………………………………………… 72
3.1.1 GUIDE界面簡介……………………………………………………… 72
3.1.2 獲取當(dāng)前圖形對象句柄的常用函數(shù)…………………………………… 75
3.1.3 Callback函數(shù)…………………………………………………………… 76
3.2 基于GUIDE工具的實(shí)例…………………………………………………… 76
3.2.1 讀取圖像的GUI實(shí)例………………………………………………… 76
3.2.2 制作及發(fā)布簡易計(jì)算器………………………………………………… 94
第4章 Stateflow 原理與建;A(chǔ)……………………………………………… 106
4.1 Stateflow概述……………………………………………………………… 107
4.1.1 狀 態(tài)………………………………………………………………… 111
4.1.2 遷 移………………………………………………………………… 114
4.1.3 事 件………………………………………………………………… 118
4.1.4 數(shù)據(jù)對象……………………………………………………………… 120
4.1.5 條件與動作…………………………………………………………… 122
4.1.6 節(jié) 點(diǎn)………………………………………………………………… 122
4.2 流程圖……………………………………………………………………… 128
4.2.1 手動建立流程圖……………………………………………………… 128
4.2.2 快速建立流程圖……………………………………………………… 131
4.2.3 車速控制……………………………………………………………… 132
4.3 狀態(tài)圖的層次……………………………………………………………… 136
4.3.1 歷史節(jié)點(diǎn)……………………………………………………………… 138
4.3.2 遷移的層次性………………………………………………………… 139
4.3.3 內(nèi)部遷移……………………………………………………………… 140
4.4 并行機(jī)制…………………………………………………………………… 143
4.4.1 廣 播………………………………………………………………… 143
4.4.2 隱含事件……………………………………………………………… 149
4.4.3 時(shí)間邏輯事件………………………………………………………… 150
4.5 其他的圖形對象…………………………………………………………… 152
4.5.1 真值表………………………………………………………………… 152
4.5.2 圖形盒………………………………………………………………… 155
4.5.3 圖形函數(shù)……………………………………………………………… 156
4.6 MATLAB函數(shù)…………………………………………………………… 157
4.6.1 建立調(diào)用MATLAB函數(shù)的Simulink模型………………………… 157
4.6.2 編寫MATLAB函數(shù)………………………………………………… 159
4.6.3 調(diào) 試………………………………………………………………… 160
4.7 Simulink函數(shù)……………………………………………………………… 163
4.7.1 Simulink函數(shù)的使用………………………………………………… 163
4.7.2 使用Simulink函數(shù)需遵循的規(guī)則…………………………………… 169
4.8 集成自定義代碼…………………………………………………………… 170
4.9 Stateflow建模實(shí)例計(jì)時(shí)器…………………………………………… 174
第5章 Simulink建模與驗(yàn)證……………………………………………………… 184
5.1 Simulink的基本操作……………………………………………………… 185
5.1.1 啟動Simulink ………………………………………………………… 185
5.1.2 Simulink模塊庫簡介………………………………………………… 186
5.1.3 模塊操作……………………………………………………………… 188
5.2 信號采樣誤差……………………………………………………………… 193
5.2.1 信號源………………………………………………………………… 193
5.2.2 MATLAB工作空間………………………………………………… 198
5.2.3 用戶自定義函數(shù)……………………………………………………… 202
5.2.4 非線性系統(tǒng)…………………………………………………………… 204
5.2.5 離散模塊……………………………………………………………… 207
5.2.6 采樣誤差……………………………………………………………… 209
5.2.7 建立子系統(tǒng)…………………………………………………………… 211
5.2.8 封裝子系統(tǒng)…………………………………………………………… 212
5.2.9 數(shù)據(jù)類型匹配………………………………………………………… 215
5.2.10 模型信息……………………………………………………………… 218
5.2.11 模型元件化…………………………………………………………… 221
5.2.12 自定義模塊庫………………………………………………………… 222
5.3 音頻信號處理……………………………………………………………… 224
5.3.1 仿真環(huán)境……………………………………………………………… 224
5.3.2 基于采樣的模型……………………………………………………… 225
5.3.3 幀結(jié)構(gòu)………………………………………………………………… 228
5.3.4 基于幀結(jié)構(gòu)的模型…………………………………………………… 228
5.3.5 信號緩沖器…………………………………………………………… 230
5.4 視頻監(jiān)控…………………………………………………………………… 232
5.4.1 原 理………………………………………………………………… 233
5.4.2 SAD子系統(tǒng)…………………………………………………………… 233
5.4.3 閾值比較……………………………………………………………… 234
5.4.4 視頻記錄子系統(tǒng)……………………………………………………… 235
5.4.5 源視頻幀計(jì)數(shù)及顯示………………………………………………… 236
5.4.6 數(shù)據(jù)讀取與顯示……………………………………………………… 237
5.4.7 實(shí)驗(yàn)結(jié)果……………………………………………………………… 239
5.5 模型調(diào)試…………………………………………………………………… 241
5.5.1 圖形調(diào)試模式………………………………………………………… 241
5.5.2 命令行調(diào)試模式……………………………………………………… 244
5.5.3 調(diào)試過程……………………………………………………………… 245
5.5.4 斷點(diǎn)設(shè)置……………………………………………………………… 249
5.5.5 顯示仿真及模型信息………………………………………………… 253
5.6 模型檢查與驗(yàn)證…………………………………………………………… 260
5.6.1 使用系統(tǒng)檢查器ModelAdvisor檢查模型…………………… 260
5.6.2 建立測試用例………………………………………………………… 269
5.6.3 模型覆蓋度分析……………………………………………………… 279
5.6.4 模型效率分析………………………………………………………… 285
第6章 用戶驅(qū)動模塊的創(chuàng)建……………………………………………………… 289
6.1 什么是S-Function ………………………………………………………… 289
6.1.1 S-Function的工作機(jī)制……………………………………………… 291
6.1.2 函數(shù)回調(diào)方法………………………………………………………… 292
6.1.3 編寫C MEXS-Function …………………………………………… 295
6.1.4 Simulink引擎與CS-Function的相互作用………………………… 300
6.1.5 TLC文件……………………………………………………………… 309
6.1.6 LEVEL 2M 文件S-Function介紹……………………………… 313
6.1.7 調(diào)用仿真模型外部的C代碼和生成代碼…………………………… 324
6.2 S-FunctionBuilder………………………………………………………… 327
6.2.1 S-Function名及參數(shù)名……………………………………………… 328
6.2.2 初始化………………………………………………………………… 329
6.2.3 數(shù)據(jù)屬性……………………………………………………………… 329
6.2.4 庫文件………………………………………………………………… 332
6.2.5 輸 出………………………………………………………………… 333
6.2.6 連續(xù)狀態(tài)求導(dǎo)………………………………………………………… 336
6.2.7 離散狀態(tài)更新………………………………………………………… 337
6.2.8 編譯信息……………………………………………………………… 338
6.2.9 應(yīng) 用………………………………………………………………… 340
6.3 MATLABFunction模塊………………………………………………… 342
6.3.1 MATLABFunction模塊的生成方法……………………………… 343
6.3.2 集成用戶自定義的C代碼…………………………………………… 347
6.4 實(shí) 例……………………………………………………………………… 348
6.4.1 IIR濾波器…………………………………………………………… 348
6.4.2 S-Function的參數(shù)設(shè)置與封裝……………………………………… 351
6.4.3 讀取數(shù)據(jù)文件………………………………………………………… 357
第7章 嵌入式代碼的快速生成…………………………………………………… 362
7.1 利用EmbeddedCoder生成DSP目標(biāo)代碼……………………………… 362
7.2 CCS5/6與MATLABR2015b的數(shù)據(jù)鏈配置…………………………… 364
7.3 TIDSP原裝板的實(shí)時(shí)代碼生成………………………………………… 368
7.4 代碼驗(yàn)證…………………………………………………………………… 375
7.5 TIC6416DSK目標(biāo)板應(yīng)用例程………………………………………… 380
7.6 用戶自定義目標(biāo)板的應(yīng)用………………………………………………… 401
第8章 基于模型的設(shè)計(jì)…………………………………………………………… 406
8.1 傳統(tǒng)設(shè)計(jì)過程與基于模型設(shè)計(jì)過程的對比……………………………… 407
8.2 DO 178B標(biāo)準(zhǔn)簡介……………………………………………………… 409
8.2.1 什么是DO 178B標(biāo)準(zhǔn)……………………………………………… 409
8.2.2 DO 178B標(biāo)準(zhǔn)驗(yàn)證要求…………………………………………… 410
8.2.3 DO 178B軟件生命周期…………………………………………… 411
8.3 基于模型設(shè)計(jì)的工作流程………………………………………………… 412
8.4 需求分析及跟蹤…………………………………………………………… 417
8.4.1 根據(jù)需求建立系統(tǒng)模型……………………………………………… 417
8.4.2 建立需求與模塊間的關(guān)聯(lián)…………………………………………… 418
8.4.3 一致性檢查…………………………………………………………… 421
8.5 模型檢查及驗(yàn)證…………………………………………………………… 423
8.5.1 ModelAdvisor檢查………………………………………………… 423
8.5.2 SystemTest …………………………………………………………… 424
8.5.3 DesignVerifier ……………………………………………………… 433
8.6 定點(diǎn)模型…………………………………………………………………… 439
8.7 軟件在環(huán)測試……………………………………………………………… 447
8.8 處理器在環(huán)測試…………………………………………………………… 448
8.9 代碼跟蹤…………………………………………………………………… 449
8.10 硬件模型…………………………………………………………………… 453
8.10.1 建立硬件模型………………………………………………………… 453
8.10.2 模塊設(shè)置……………………………………………………………… 454
8.11 代碼優(yōu)化及代碼生成……………………………………………………… 457
8.11.1 子系統(tǒng)原子化………………………………………………………… 457
8.11.2 優(yōu)化模塊庫…………………………………………………………… 460
8.11.3 指定芯片……………………………………………………………… 461
8.11.4 代碼檢查……………………………………………………………… 462
8.11.5 IDE環(huán)境下的代碼優(yōu)化……………………………………………… 464
8.11.6 工程選項(xiàng)及代碼生成………………………………………………… 465
8.12 代碼有效性檢查原理……………………………………………………… 469
8.13 硬件在環(huán)測試……………………………………………………………… 472
8.13.1 建立PC端模型……………………………………………………… 472
8.13.2 模塊參數(shù)設(shè)置………………………………………………………… 473
8.13.3 實(shí)施硬件在環(huán)測試…………………………………………………… 476
8.13.4 代碼效率剖析………………………………………………………… 477
8.13.5 內(nèi)存使用分析………………………………………………………… 478
參考文獻(xiàn)……………………………………………………………………………… 480