《基於模型的設計:MCU篇》一書採用了先進的產品開發思想一一基於模型設計的方法,並以MATLAB R2010b為軟體平台。讓工程師在可視化的MATLAB統一開發環境中,一邊進行需求分析、算法研究、模型與需求分析的雙向跟蹤、模型驗證與最佳化;另一邊進行自動生成C代碼的軟體在環測試、處理器在環測試、代碼的有效性分析、代碼與模型的雙向跟蹤、代碼最佳化、硬體測試等,讓算法到嵌入式實時C代碼的生成一步到位、一次成功,避免傳統開發MCU器件,前期投入大、開發周期長、一般需要重複多次才能成功的弊端。
基本介紹
- 書名:基於模型的設計:MCU篇
- 作者:劉傑
- ISBN: 7512403151, 9787512403154
- 頁數:502頁
- 出版社:北京航空航天大學出版社
- 出版時間:2011年1月1日
- 裝幀:平裝
- 開本:16
- 正文語種: 簡體中文
作者簡介,內容簡介,目錄,
作者簡介
劉傑,畢業於浙江大學信電系通信工程專業,獲工學博士學位,現為碩士生導師,兼職教授。長期從事嵌入式器件的研究與開發,特別是近3~4年,夜以繼日地潛心鑽研基於模型的設計,這項最近幾年才在全球掀起的新技術。致力於宣傳、推廣基於模型的設計在我國的套用和普及,已經出版了國內第一部基於模型設計的專著《基於模型的設計及其嵌入式實現》。
內容簡介
實現了51單片機、英飛凌C166單片機、dsPIC3x數位訊號處理器、ARM處理器的快速開發,其資金投入、工作量和所需花費時間只占傳統方法的1/3~1/2,有效地規避MCU套用開發的潛在市場風險。
書中著重介紹了有限狀態機Stateflow描述MCU編程的特點,讓一些複雜或晦澀的邏輯關係變得異常簡單。
《基於模型的設計:MCU篇》可作為航天軍工、汽車電子、通信與信息處理,電力等行業的工程師從事MCU開發時的技術手冊,也可作為高校電類專業的MCU開發或基於模型設計的教材,同時也是Simulink/Sateflow高級建模與驗證的參考書,另外也為廣大高校學生(本、碩、博)做畢業設計提供了一種高效、快捷的軟體實現方法。
目錄
第1章 MATLAB編程基礎
1.1 MATLAB R2010a與2010b的若干更新
1.1.1 壓縮檔案
1.1.2 目錄瀏覽器
1.1.3 資料夾及檔案比較
1.1.4 登錄MATLAB檔案交換伺服器
1.2 M檔案的編寫
1.2.1 M檔案結構
1.2.2 M腳本檔案
1.2.3 捷徑
1.2.4 M函式
1.2.5 匿名函式
1.2.6 函式提示
1.3 M檔案的調試
1.3.1 M-Lint
1.3.2 使用cells加快調試
1.4 M檔案的發布
1.5 Embedded MATLAB
1.5.1 Embedded MATLAB的主要功能特點
1.5.2 Embedded MATLAB的編程規範
1.5.3 C編譯器的設定
1.5.4 Embedded MATLAB編程實例
第2章 Simulink建模與調試
2.1 Simulink基本操作
2.1.1 模組庫和編輯視窗
2.1.2 Simulink模組庫
2.1.3 模組的基本操作
2.2 搭建直流電動機模型
2.2.1 數學模型分析
2.2.2 模型搭建與參數設定
2.2.3 子系統與庫
2.2.4 添加模組到庫瀏覽器及智慧財產權保護
2.2.5 數據格式與輸入/輸出
2.2.6 PID控制
2.3 Simulink模型調試
2.3.1 圖形界面調試
2.3.2 命令行調試
2.3.3 運行調試器
2.3.4 斷點設定
2.3.5 顯示模型和仿真信息
第3章 Stateflow建模與套用
3.1 Stateflow基本概念
3.1.1 狀態圖編輯器
3.1.2 狀態
3.1.3 遷移
3.1.4 數據與事件
3.1.5 對象的命名規則
3.2 Stateflow狀態圖
3.2.1 狀態
3.2.2 遷移
3.2.3 計時器狀態圖
3.2.4 數據與事件
3.2.5 動作
3.2.6 自動創建對象
3.3 Stateflow流程圖
3.3.1 流程圖與節點
3.3.2 建立流程圖
3.4 層次結構
3.4.1 層次的概念
3.4.2 遷移的層次
3.4.3 歷史節點
3.4.4 子狀態圖
3.4.5 層次狀態圖中的流程圖
3.5 並行機制
3.5.1 設定狀態關係
3.5.2 並行狀態活動順序配置
3.5.3 本地事件廣播
3.5.4 直接事件廣播
3.5.5 隱含事件和條件
3.6 stateflow其他對象
3.6.1 真值表(Truth table)
3.6.2 圖形函式(Graphical function)
3.6.3 Embedded MATLAB
3.6.4 圖形盒(Box)
3.6.5 Simulink函式調用
3.6.6 目標
3.7 綜合套用
3.7.1 計時器
3.7.2 交通燈
第4章 設備驅動模組的編寫
4.1 創建S函式模組的示例
4.1 I1手工編寫Wrapper S函式
4.1.2 代碼繼承工具(Legacy Code T001)
4.1.3 S-Function Builder
4.1.4 三種方法的比較
4.2 S函式
4.2.1 S函式工作機制
4.2.2 C MEX S函式模板
4.2.3 其他回調方法
4.2.4 宏函式
4.2.5 數據訪問
4.2.6 目標語言編譯器
4.3 S-Function Builder
4.3.1 S-Function Builder簡介
4.3.2 初始化界面(initialization)
4.3.4 數據屬性界面(Data Properties)
4.3.5 庫檔案界面(Libraries)
4.3.6 輸出界面(Outputs)
4.3.7 連續狀態求導(Continuous Derivatives)
4.3.8 離散狀態更新(Discrete Update)
4.3.9 編譯信息(Build Info)
4.4 創建設備驅動實例
4.4.1 HCl2模數轉換模組
4.4.2 DASl600數據輸入模組
4.4.3 S-Function Builder
第5章 8051單片機代碼的快速生成
5.1 仿真軟體Proteus快速人門
5.1.1 Proteus簡介
5.1.2 快速繪製原理圖
5.1.3 PCB制板
5.2 KeilC51集成開發環境(IDE)
5.2.1 預備知識
5.2.2 RTW-EC快速代碼生成
5.2.3 脈寬調製
5.2.4 流水燈
5.3 TASKING嵌入式開發環境(EDE)
5.3.1 預備知識
5.3.2 直流電機控制
5.3.3 算術乘法
5.3.4 流水燈
第6章 C166代碼的快速生成
6.1 英飛凌C166模組庫簡介
6.2 TASKING EDE for C166
6.2.1 電動機控制模型
6.2.2 設定IDE與模型參數
6.2.3 處理器在環測試(PIL)
6.2.4 代碼的自動生成
第7章 基於Simulink模組的dsPIC單片機開發
7.1 MPLAB嵌入式開發環境及工具
7.1.1 軟體的下載和安裝
7.1.2 利用MPLAB IDE及Proteus VSM進行虛擬硬體調試
7.1.3 dsPIC外圍驅動模組簡介
7.2 dsPIC外圍驅動模組套用
7.2.1 數模轉換實驗
7.2.2 閃爍燈
7.2.3 調用現有C函式
7.3 無對應模組時的套用
7.3.1 創建功能驗證模型
7.3.2 自動代碼生成
7.3.3 虛擬硬體測試
第8章 ARM代碼的快速生成
8.1 ARM簡介
8.2 蜂鳴器
8.2.1 蜂鳴器發聲模型
8.2.2 蜂鳴器功能驗證模型
8.2.3 軟體在環測試
8.2.4 自動代碼生成
8.2.5 虛擬硬體測試
8.3 交通燈控制
8.3.1 軟體在環測試
8.3.2 自動代碼生成及編譯
8.3.3 虛擬硬體測試
8.4 步進電動機控制
8.4.1 步進電動機原理簡介
8.4.2 步進電動機控制模型
8.4.3 步進電動機的功能驗證模型
8.4.4 軟體在環測試
8.4.5 自動代碼生成
8.4.6 虛擬硬體測試
8.5 無刷電動機的控制
8.5.1 無刷電動機原理簡介
8.5.2 TASKING IDE FOR ARM
8.5.3 無刷電動機控制模型
8.5.4 無刷電動機功能驗證模型
8.5.5 軟體在環測試
8.5.6 編寫驅動代碼
8.5.7 自動代碼生成
8.5.8 代碼效率比較
8.5.9 虛擬硬體測試
第9章 基於模型的設計
9.1 傳統設計的弊端
9.2 基於模型設計的優勢
9.3 基於模型設計的流程
9.3.1 建立需求文檔
9.3.2 建立可執行的技術規範
9.3.3 浮點模型
9.3.4 需求與模型間的雙向跟蹤
9.3.5 Model Advisor檢查
9.3.6 模型驗證
9.3.7 定點模型
9.3.8 軟體在環測試(SIL)
9.3.9 處理器在環測試(PIL)
9.3.10 代碼與模型間的雙向跟蹤
9.3.11 代碼最佳化
9.3.12 生成產品級代碼
9.4 需求分析及跟蹤
9.4.1 系統模型
9.4.2 需求關聯
9.4.3 一致性檢查
9.5 模型檢查及驗證
9.5.1 System Test
9.5.2 Design Verifier
9.5.3 Model Advisor檢查
9.6 定點模型
9.6.1 Fixed Point Advisoi
9.6.2 Fixed Point Tools
9.7 軟體在環測試
9.8 代碼跟蹤
9.9 代碼最佳化及代碼生成
9.9.1 子系統原子化
9.9.2 確定晶片類型
9.9.3 代碼檢查
9.9.4 代碼生成
9.10 虛擬硬體測試
附錄Embedded MATLAB支持的各函式
參考文獻