基本介紹
- 書名:嵌入式軟體設計
- 作者:賴曉晨、張立勇、遲宗正
- 類別:高等學校軟體工程專業系列教材
- 出版社:高等教育出版社
- 出版時間:2020年12月21日
- 頁數:416 頁
- 開本:16 開
- 裝幀:平裝
- ISBN:9787040552263
- 字數:600千字
- CIP核字號:2020209527
成書過程
編寫情況
出版工作
策劃編輯 | 責任編輯 | 封面設計 | 版式設計 | 插圖繪製 | 責任校對 | 責任印製 |
---|---|---|---|---|---|---|
時陽 | 時陽 | 楊立新 | 王艷紅 | 鄧超 | 刁麗麗 | 存怡 |
內容簡介
教材目錄
第1章 緒論 1.1 嵌入式系統概述 1.1.1 計算機的發展和分類 1.1.2 嵌入式系統概述 1.1.3 嵌入式系統的組成 1.1.4 嵌入式系統的發展 1.2 嵌入式系統開發流程 1.3 嵌入式軟體設計 1.3.1 嵌入式系統開發語言 1.3.2 嵌入式系統開發工具 1.4 本書內容簡介 第2章 嵌入式Linux開發環境 2.1 交叉開發環境 2.2 Linux開發工具鏈 2.2.1 Linux開發工具鏈簡介 2.2.2 GNU交叉開發環境的建立 2.3 編輯器 2.4 編譯器 2.4.1 gcc簡介 2.4.2 gcc的基本用法 2.5 連結器 2.6 調試器 2.7 自動化編譯配置檔案 2.7.1 自動化編譯配置檔案簡介 2.7.2 Makefile規則 2.7.3 Makefile的變數 2.7.4 Makefile的執行 2.7.5 make命令的內嵌函式 2.7.6 make命令的常見錯誤信息 第3章 嵌入式系統軟體平台構建 3.1 嵌入式系統軟體平台概述 3.2 BootLoader 3.2.1 BootLoader概述 3.2.2 BootLoader框架 3.2.3 BootLoader代碼分析 3.2.4 vivi 3.3 核心編譯 3.3.1 2.4版本嵌入式Linux作業系統核心編譯 3.3.2 2.6版本嵌入式Linux作業系統核心編譯 3.4 BusyBox 3.5 檔案系統 3.5.1 Linux系統中常見的檔案系統 3.5.2 構建YAFFS2檔案系統 3.6 應用程式設計流程 3.6.1 交叉編譯 3.6.2 執行程式 第4章 嵌入式C語言基礎 4.1 嵌入式C語言概述 4.1.1 C語言的歷史和特點 4.1.2 預處理指令 4.1.3 位運算 4.1.4 函式指針 4.1.5 C程式的移植 4.2 GNU C擴展 4.3 嵌入式C程式架構 4.3.1 嵌入式C程式 4.3.2 人機界面 4.3.3 指針的使用方法 4.4 ARM C程式設計最佳化 4.4.1 編譯器的特性 4.4.2 數據類型對程式效率的影響 4.4.3 循環方式對程式效率的影響 4.4.4 指針對程式效率的影響 4.4.5 邊界對齊對程式效率的影響 4.5 C語言編程規範 第5章 嵌入式Linux程式設計基礎 5.1 錯誤處理機制 5.1.1 C語言的錯誤處理機制 5.1.2 系統日誌檔案 5.2 檔案目錄和記憶體操作 5.2.1 檔案操作 5.2.2 目錄操作 5.2.3 記憶體操作 5.3 進程控制 5.3.1 創建進程 5.3.2 exec系統調用 5.3.3 等待進程結束 5.3.4 殺死進程 5.4 執行緒控制 5.4.1 執行緒概述 5.4.2 多執行緒程式設計方法 5.4.3 執行緒同步 5.4.4 執行緒屬性 5.4.5 執行緒取消 5.5 Linux庫 5.5.1 Linux庫概述 5.5.2 庫操作工具 5.5.3 靜態庫 5.5.4 共享庫 5.5.5 動態程式庫 第6章 嵌入式Linux程式設計進階 6.1 信號 6.1.1 信號概述 6.1.2 信號相關函式 6.1.3 信號集相關函式 | 6.1.4 其他信號相關函式 6.2 管道 6.2.1 無名管道 6.2.2 有名管道 6.3 信號量 6.3.1 信號量概述 6.3.2 信號量相關函式 6.3.3 信號量處理函式程式示例 6.4 共享記憶體 6.4.1 共享記憶體簡介 6.4.2 共享記憶體操作函式 6.4.3 共享記憶體程式示例 6.5 訊息佇列 6.5.1 訊息佇列簡介 6.5.2 訊息佇列操作函式 6.5.3 訊息佇列程式示例 第7章 嵌入式Linux核心驅動程式設計 7.1 Linux核心模組 7.1.1 Linux核心模組概述 7.1.2 Linux核心模組實例 7.1.3 Linux核心模組實現機制 7.2 Linux驅動程式工作原理 7.2.1 設備驅動程式概述 7.2.2 設備驅動程式接口 7.3 Linux核心虛擬驅動程式設計實例 7.3.1 Linux 2.4核心虛擬驅動程式 7.3.2 Linux 2.6核心虛擬驅動程式 7.4 ARM9/Linux 2.4核心驅動程式設計實例 7.4.1 蜂鳴器驅動程式設計實例 7.4.2 ADC驅動程式設計實例 7.4.3 中斷驅動程式設計實例 7.5 ARM9/Linux 2.6核心驅動程式設計實例 7.5.1 按鍵驅動程式設計實例 7.5.2 PWM驅動程式設計實例 第8章 STM32F103軟體設計 8.1 外部按鍵中斷 8.1.1 工作原理 8.1.2 電路介紹 8.1.3 軟體設計 8.2 定時器中斷 8.2.1 工作原理 8.2.2 電路介紹 8.2.3 軟體設計 8.3 PWM流水燈 8.3.1 工作原理 8.3.2 軟體設計 8.4 LED點陣 8.4.1 工作原理 8.4.2 電路介紹 8.4.3 軟體設計 8.5 步進電機 8.5.1 工作原理 8.5.2 電路介紹 8.5.3 軟體設計 *第9章 STM32F401軟體設計 9.1 獨立看門狗 9.1.1 工作原理 9.1.2 模組結構 9.1.3 軟體設計 9.2 通用異步接收傳送設備 9.2.1 工作原理 9.2.2 電路介紹 9.2.3 軟體設計 9.3 實時時鐘 9.3.1 工作原理 9.3.2 軟體設計 9.4 字元型LCD 9.4.1 工作原理 9.4.2 電路介紹 9.4.3 軟體設計 9.5 溫度感測器 9.5.1 工作原理 9.5.2 電路介紹 9.5.3 軟體設計 第10章 嵌入式系統綜合案例設計 10.1 功能描述 10.2 理論基礎 10.2.1 動作識別理論基礎 10.2.2 MPU9250簡介 10.2.3 四元數與歐拉角 10.3 系統概述 10.3.1 系統架構 10.3.2 目標機 10.3.3 上位機 10.4 人體動作識別系統設計與實現 10.4.1 感測器節點 10.4.2 基站 10.4.3 無線通信協定 10.4.4 上位機 10.5 系統測試 10.5.1 測試環境 10.5.2 測試結果 附錄 參考文獻 |
教學資源
- 課程資源
教材特色
- 書中涉及的函式,除對函式原型進行說明的部分外,在敘述時省略了相關參數;
- 書中的代碼,除用於說明程式結構的框架代碼外,都可以通過編譯並正常運行,代碼採用GPL許可證;
- 書中的操作步驟均有詳細解釋,重要步驟配有圖片,如果讀者採用相同的開發環境,應能順利完成書中介紹的每一項操作。