STM32嵌入式系統開發實戰指南

STM32嵌入式系統開發實戰指南

《STM32嵌入式系統開發實戰指南》是2013年機械工業出版社出版的圖書,作者是李志明,檀永,徐石明,丁孝華,桑林。 該書適合已熟悉STM32的操作、掌握基於STM32官方驅動庫的前後台模式套用軟體開發的讀者或初級嵌入式軟體開發工程師閱讀。

內容簡介

《STM32嵌入式系統開發實戰指南》以一款輕量級嵌入式實時作業系統為樣本,闡述了嵌入式實時作業系統任務管理、時間管理、資源共享、記憶體管理等機制,介紹了核心及TCP/IP的移植和具體使用方法。為了避免枯燥的理論闡述,本書輔以適量的例程幫助大家學習。此外,本書還簡要闡述了硬體平台設計、項目開展的一般步驟和注意事項。

《STM32嵌入式系統開發實戰指南》適合已熟悉STM32的操作、掌握基於STM32官方驅動庫的前後台模式套用軟體開發的讀者或初級嵌入式軟體開發工程師閱讀。本書由李志明,檀永,徐石明,丁孝華,桑林編著。

圖書目錄

序言
前言
第一篇 平台篇
第1章 ARM處理器簡介
1.1 ARM核心處理器沿革
1.1.1 傳統ARM處理器
1.1.2 Cortex核心處理器
1.2 Cortex核心系列處理器技術特點
1.2.1 ARM Cortex-M系列處理器
1.2.2 ARM Cortex-R系列處理器
1.2.3 ARM Cortex-A系列處理器
1.3 STM32互聯型嵌入式控制器
1.4 微控制器選型
1.4.1 選型因素
1.4.2 選型示例
第2章 基於STM32F107的開發板
2.1 STM32F107開發板
2.2 主要板載資源
2.2.1 10/100M乙太網接口
2.2.2 CAN匯流排接口
2.2.3 RS485匯流排接口
2.2.4 其他匯流排接口
2.3 硬體設計要點
2.3.1 電磁兼容問題
2.3.2 信號完整性
2.3.3 電源完整性
第3章 開發環境
3.1 開發環境及搭建
3.1.1 常見開發環境
3.1.2 IAR EWARM安裝
3.1.3 RealView MDK安裝
3.2 相關開發工具
3.3 創建工程
第4章 編程規範
4.1 ST固件庫編程規範
4.1.1 縮寫
4.1.2 命名規則
4.1.3 編碼規則
4.2 基於C語言的嵌入式編程規範
4.2.1 原始碼的排版
4.2.2 原始碼的注釋
4.2.3 標識符命名
4.2.4 代碼可讀性
4.2.5 變數、結構
4.2.6 函式、過程
4.2.7 可測性
4.2.8 程式效率
4.2.9 質量保證
4.2.10 代碼編輯、編譯、審查
4.2.11 測試與維護
4.2.12 宏定義
第5章 項目規劃
5.1 概述
5.2 系統分析
5.3 系統設計
5.4 系統製造
5.5 系統運用及反饋
5.6 開發團隊
5.6.1 團隊負責人
5.6.2 調研人員
5.6.3 開發人員
第二篇 RTOS篇
第6章 作業系統原理基礎知識
6.1 前後台模式應用程式
6.2 嵌入式作業系統
6.2.1 相關基本概念
6.2.2 系統調用
6.2.3 作業系統結構
6.2.4 進程與任務
6.2.5 進程間的通信
6.2.6 進程調度
6.2.7 存儲管理
第7章 FreeRTOS嵌入式作業系統
7.1 FreeRTOS特色
7.2 任務管理
7.2.1 任務函式
7.2.2 基本任務狀態
7.2.3 任務創建
7.2.4 任務的優先權
7.2.5 非運行狀態
7.2.6 空閒任務及回調函式
7.2.7 改變任務優先權
7.2.8 刪除任務
7.2.9 調度算法概述
7.3 佇列管理
7.3.1 概述
7.3.2 使用佇列
7.3.3 大型數據單元傳輸
7.4 中斷管理
7.4.1 延遲中斷處理
7.4.2 計數信號量
7.4.3 在中斷服務例程中使用佇列
7.4.4 中斷嵌套
7.5 資源管理
7.5.1 基本概念
7.5.2 臨界區與掛起調度器
7.5.3 互斥量
7.5.4 互斥的另一種實現
7.6 記憶體管理
7.6.1 概述
7.6.2 記憶體分配方案範例
7.7 常見錯誤
7.7.1 概述
7.7.2 棧溢出
7.7.3 其他常見錯誤
第8章 基於STM32F107的FreeRTOS移植
8.1 概述
8.2 FreeRTOS移植
8.2.1 portmacro.h頭檔案
8.2.2 port.c源檔案
8.2.3 portasm.s彙編源檔案
8.2.4 其他問題
8.3 創建測試任務
第三篇 LwIP篇
第9章 TCP/IP協定棧介紹
9.1 引言
9.2 網路分層
9.2.1 OSI七層參考模型
9.2.2 TCP/IP分層
9.2.3 TCP/IP協定簇的協定
9.3 IP協定
9.4 ARP協定與RARP協定
9.5 ICMP
9.6 TCP協定
9.7 UDP協定
9.8 FTP協定
第10章 LwIP輕量級TCP/IP協定棧
10.1 LwIP進程模型
10.2 LwIP緩衝與記憶體管理
10.2.1 LwIP動態記憶體管理機制
10.2.2 LwIP的緩衝管理機制
10.3 LwIP網路接口
10.4 LwIP的ARP處理
10.5 LwIP的IP處理
10.6 LwIP的ICMP處理
10.7 LwIP的UDP處理
10.8 LwIP的TCP處理
10.8.1 TCP處理流程概述
10.8.2 TCP控制塊
10.8.3 LwIP的TCP滑動視窗
10.8.4 LwIP的TCP逾時與重傳
10.8.5 LwIP的TCP擁塞控制
10.8.6 LwIP的TCP定時器
10.9 LwIP的應用程式接口簡介
10.9.1 RAW API接口
10.9.2 Sequential API接口
第11章 基於STM32F107的LwIP移植
11.1 etherif.c檔案的移植
11.1.1 etherif_init函式
11.1.2 low_level_init函式
11.1.3 etherif_input函式
11.1.4 low_level_input函式
11.1.5 low_level_output函式
11.2 網路驅動移植
11.2.1 乙太網控制器概述
11.2.2 乙太網控制器硬體配置
11.2.3 乙太網控制器硬體的引腳配置
11.2.4 乙太網驅動之接收
11.2.5 乙太網驅動之傳送
11.2.6 其他注意事項
11.3 基於RAW API接口的HelloWorld例程
第四篇 移植篇
第12章 基於FreeRTOS的LwIP協定棧移植
12.1 概述
12.2 FreeRTOS下乙太網驅動程式的移植
12.3 LwIP程式移植
12.3.1 乙太網接口檔案etherif.c的移植
12.3.2 作業系統模擬層檔案sys_arch.c的移植
第13章 工業通信網關解析
13.1 概述
13.2 編碼實現
13.3 通信測試
附錄A 開發板原理圖
附錄B 專業術語
參考文獻

相關詞條

熱門詞條

聯絡我們