Arm嵌入式系統設計與應用——STM32F407微控制器與FreeRTOS開發

李正軍、李瀟然

  • 出版商: 清華大學
  • 出版日期: 2025-04-01
  • 售價: $474
  • 語言: 簡體中文
  • ISBN: 7302683719
  • ISBN-13: 9787302683711
  • 相關分類: 嵌入式系統單晶片STM32
  • 下單後立即進貨 (約4週~6週)

  • Arm嵌入式系統設計與應用——STM32F407微控制器與FreeRTOS開發-preview-1
  • Arm嵌入式系統設計與應用——STM32F407微控制器與FreeRTOS開發-preview-2
  • Arm嵌入式系統設計與應用——STM32F407微控制器與FreeRTOS開發-preview-3
Arm嵌入式系統設計與應用——STM32F407微控制器與FreeRTOS開發-preview-1

相關主題

商品描述

" 本書秉承“新工科”理念,從科研、教學和工程實際應用出發,理論聯系實際,全面系統地講述了基於STM32F407微控制器的嵌入式系統設計與應用實例,並講述了FreeRTOS嵌入式實時操作系統。 全書共分13章,主要內容包括:緒論、嵌入式微處理器、STM32系列微控制器、嵌入式開發平臺的搭建、STM32 GPIO、STM32中斷、STM32定時器、STM32 通用同步異步收發器(USART)、STM32 SPI串行總線、STM32 I2C串行總線、STM32 A/D轉換器、STM32 DMA控制器和嵌入式實時操作系統FreeRTOS。全書內容豐富,體系先進,結構合理,理論與實踐相結合,尤其註重工程應用技術。 通過閱讀本書,讀者可以掌握STM32F4標準固件庫的開發方式和工具軟件的使用,掌握STM32F407的系統功能和常用外設的編程開發方法,通過FreeRTOS的學習,掌握嵌入式實時操作系統的應用方法。 本書是在作者教學與科研實踐經驗的基礎上,結合近20年的STM32嵌入式系統的發展編寫而成的。 本書可作為高等院校各類自動化、軟件工程、機器人、自動檢測、機電一體化、人工智能、電子與電氣工程、電腦應用、信息工程、物聯網等相關專業的本科生、研究生授課教材,也可作為廣大從事嵌入式系統開發的工程技術人員的參考用書。"

目錄大綱

目錄

第1章緒論

1.1嵌入式系統

1.1.1嵌入式系統概述

1.1.2嵌入式系統和通用電腦系統比較

1.1.3嵌入式系統的特點

1.2嵌入式系統的組成

1.3嵌入式系統的軟件

1.3.1無操作系統的嵌入式軟件

1.3.2帶操作系統的嵌入式軟件

1.3.3嵌入式操作系統的分類

1.3.4嵌入式實時操作系統的功能

1.3.5典型嵌入式操作系統

1.4嵌入式系統的應用領域

1.5嵌入式系統的體系

1.5.1硬件架構

1.5.2軟件層次

第2章嵌入式處理器

2.1Arm嵌入式處理器

2.1.1Arm處理器的特點

2.1.2Arm體系結構的版本和系列

2.1.3Arm的RISC結構特性

2.2存儲器系統

2.2.1存儲器系統概述

2.2.2嵌入式系統存儲器的分類

2.3嵌入式處理器的分類和特點

2.3.1嵌入式微處理器

2.3.2嵌入式微控制器

2.3.3嵌入式DSP

2.3.4嵌入式SoC

2.3.5嵌入式處理器的特點

第3章STM32系列微控制器

3.1STM32 微控制器概述

3.1.1STM32微控制器產品介紹

3.1.2STM32系統性能分析

3.1.3CortexM4的三級流水線

3.1.4STM32微控制器的命名規則

3.1.5STM32F1和STM32F4的區別

3.1.6STM32微控制器的選型

3.2STM32F407ZGT6概述

3.2.1STM32F407的主要特性

3.2.2STM32F407的主要功能

3.3STM32F407ZGT6芯片內部結構

3.4STM32F407VGT6芯片引腳和功能

3.5STM32F407VGT6最小系統設計

第4章嵌入式開發環境的搭建

4.1Keil MDK安裝配置

4.1.1Keil MDK簡介

4.1.2Keil MDK下載

4.1.3Keil MDK安裝

4.1.4安裝庫文件

4.2Keil MDK新工程的創建

4.2.1建立文件夾

4.2.2打開Keil μVision

4.2.3新建工程

4.3JScope安裝

4.4JScope調試方法

4.4.1打開JScope

4.4.2JScope功能區介紹

4.4.3新建工程

4.4.4添加變量

4.4.5保存工程

4.4.6進入調試模式

4.4.7停止調試

4.4.8查看存儲的變量

4.5CortexM4 微控制器軟件接口標準(CMSIS)

4.5.1CMSIS介紹

4.5.2STM32F40x標準外設庫

4.6STM32F407開發板的選擇

4.7STM32模擬器的選擇

第5章STM32 GPIO

5.1STM32 GPIO接口概述

5.1.1輸入通道

5.1.2輸出通道

5.2STM32 GPIO功能

5.2.1普通I/O功能

5.2.2單獨的位設置或位清除

5.2.3外部中斷/喚醒線

5.2.4復用功能

5.2.5軟件重新映射I/O復用功能

5.2.6GPIO鎖定機制

5.2.7輸入配置

5.2.8輸出配置

5.2.9復用功能配置

5.2.10高阻抗模擬輸入配置

5.2.11STM32的GPIO操作

5.2.12外部中斷映射和事件輸出

5.2.13GPIO的主要特性

5.3STM32的GPIO常用庫函數

5.4STM32的GPIO使用流程

5.5STM32 GPIO輸出應用實例

5.5.1STM32的GPIO輸出應用硬件設計

5.5.2STM32的GPIO輸出應用軟件設計

5.6STM32 GPIO輸入應用實例

5.6.1STM32的GPIO輸入應用硬件設計

5.6.2STM32的GPIO輸入應用軟件設計

第6章STM32中斷

6.1中斷概述

6.1.1中斷

6.1.2中斷的功能

6.1.3中斷源與中斷屏蔽

6.1.4中斷處理過程

6.1.5中斷優先級與中斷嵌套

6.2STM32F4中斷系統

6.2.1STM32F4嵌套向量中斷控制器

6.2.2STM32F4中斷優先級

6.2.3STM32F4中斷向量表

6.2.4STM32F4中斷服務程序

6.3STM32F4外部中斷/事件控制器

6.3.1STM32F4的 EXTI內部結構

6.3.2STM32F4的EXTI主要特性

6.4STM32F4中斷系統庫函數

6.4.1NVIC相關的庫函數

6.4.2EXTI相關的庫函數

6.5STM32F4外部中斷設計流程

6.6STM32F4外部中斷設計實例

6.6.1STM32F4外部中斷的硬件設計

6.6.2STM32F4外部中斷的軟件設計

第7章STM32定時器

7.1STM32定時器概述

7.2STM32基本定時器

7.2.1基本定時器介紹

7.2.2基本定時器的功能

7.2.3基本定時器的寄存器

7.3STM32通用定時器

7.3.1通用定時器介紹

7.3.2通用定時器的功能

7.3.3通用定時器的工作模式

7.3.4通用定時器的寄存器

7.4STM32定時器庫函數

7.5STM32定時器應用實例

7.5.1STM32定時器配置流程

7.5.2STM32定時器應用硬件設計

7.5.3STM32定時器應用軟件設計

第8章STM32通用同步/異步收發器

8.1串行通信基礎

8.1.1串行異步通信數據格式

8.1.2串行同步通信數據格式

8.2STM32的USART工作原理

8.2.1USART介紹

8.2.2USART的主要特性

8.2.3USART的功能

8.2.4USART的通信時序

8.2.5USART的中斷

8.2.6USART的相關寄存器

8.3STM32的USART 庫函數

8.4STM32 USART串行通信應用實例

8.4.1STM32 USART基本配置流程

8.4.2USART串行通信應用的硬件設計

8.4.3USART串行通信應用的軟件設計

第9章STM32 SPI串行總線

9.1STM32的SPI通信原理

9.1.1SPI串行總線概述

9.1.2SPI串行總線互連方式

9.2STM32F407 SPI串行總線的工作原理

9.2.1SPI串行總線的特徵

9.2.2SPI串行總線的內部結構

9.2.3SPI串行總線時鐘信號的相位和極性

9.2.4STM32的SPI配置

9.2.5STM32的SPI數據發送與接收過程

9.3STM32的SPI庫函數

9.4STM32的SPI應用實例

9.4.1STM32的SPI配置流程

9.4.2SPI與Flash接口的硬件設計

9.4.3SPI與Flash接口的軟件設計

第10章STM32 I2C串行總線

10.1STM32 I2C串行總線的通信原理

10.1.1STM32 I2C串行總線概述

10.1.2I2C總線的數據傳輸

10.2STM32 I2C串行總線接口

10.2.1STM32 I2C串行總線的主要特性

10.2.2STM32 I2C串行總線的內部結構

10.2.3STM32 I2C串行總線的功能描述

10.3STM32F4的I2C庫函數

10.4STM32 I2C應用實例

10.4.1STM32的I2C配置

10.4.2STM32 I2C與EEPROM接口的硬件設計

10.4.3STM32 I2C與EEPROM接口的軟件設計

第11章STM32模數轉換器

11.1模擬量輸入通道

11.1.1模擬量輸入通道的組成

11.1.2ADC的工作原理

11.2模擬量輸入信號類型與量程自動轉換

11.2.1模擬量輸入信號類型

11.2.2量程自動轉換

11.3STM32F407微控制器的ADC結構

11.4STM32F407 微控制器的ADC功能

11.4.1ADC使能和啟動

11.4.2時鐘配置

11.4.3轉換模式

11.4.4DMA控制

11.4.5STM32的ADC應用特徵

11.5STM32的ADC庫函數

11.6STM32 ADC應用實例

11.6.1STM32的ADC配置流程

11.6.2STM32 ADC應用的硬件設計

11.6.3STM32 ADC應用的軟件設計

第12章STM32 DMA控制器

12.1STM32 DMA的基本概念

12.1.1DMA的定義

12.1.2DMA在嵌入式實時系統中的價值

12.1.3DMA傳輸的基本要素

12.1.4DMA傳輸過程

12.1.5DMA的特點與應用

12.2STM32 DMA的結構和主要特徵

12.3STM32 DMA的功能描述

12.3.1DMA處理

12.3.2仲裁器

12.3.3DMA通道

12.3.4DMA中斷

12.4STM32的DMA庫函數

12.5STM32 DMA應用實例

12.5.1STM32的DMA配置流程

12.5.2DMA應用的硬件設計

12.5.3DMA應用的軟件設計

第13章嵌入式實時操作系統FreeRTOS

13.1FreeRTOS系統概述

13.1.1FreeRTOS的特點

13.1.2FreeRTOS的商業許可

13.1.3選擇FreeRTOS的理由

13.1.4FreeRTOS的發展歷史

13.1.5FreeRTOS的功能

13.1.6FreeRTOS的一些概念和術語

13.1.7為什麽要使用RTOS

13.2FreeRTOS的源代碼和相應官方手冊獲取

13.3FreeRTOS系統移植

13.4FreeRTOS的文件組成

13.5FreeRTOS的編碼規則及配置和功能裁剪

13.6FreeRTOS的任務管理

13.6.1任務相關的一些概念

13.6.2FreeRTOS的任務調度

13.6.3任務管理相關函數

13.7進程間通信與消息隊列

13.7.1進程間通信

13.7.2隊列的特點和基本操作

13.8信號量和互斥量

13.8.1二值信號量

13.8.2計數信號量

13.8.3優先級翻轉問題

13.8.4互斥量

13.8.5遞歸互斥量

13.8.6相關函數概述

13.9事件組

13.9.1事件組的功能和原理

13.9.2事件組相關函數

13.10軟件定時器

13.10.1軟件定時器概述

13.10.2軟件定時器相關函數

13.11FreeRTOS任務管理應用實例

參考文獻