Arm Cortex-M4嵌入式系統——基於STM32Cube和HAL庫的開發方法

李正軍、李瀟然

  • 出版商: 清華大學
  • 出版日期: 2024-08-01
  • 售價: $474
  • 貴賓價: 9.5$450
  • 語言: 簡體中文
  • ISBN: 7302669422
  • ISBN-13: 9787302669425
  • 相關分類: ARM嵌入式系統STM32
  • 立即出貨

  • Arm Cortex-M4嵌入式系統——基於STM32Cube和HAL庫的開發方法-preview-1
  • Arm Cortex-M4嵌入式系統——基於STM32Cube和HAL庫的開發方法-preview-2
  • Arm Cortex-M4嵌入式系統——基於STM32Cube和HAL庫的開發方法-preview-3
Arm Cortex-M4嵌入式系統——基於STM32Cube和HAL庫的開發方法-preview-1

買這商品的人也買了...

相關主題

商品描述

"本書秉承“新工科”理念,從科研、教學和工程實際應用出發,理論聯系實際,全面系統地講述基於 STM32CubeMX、STM32CubeIDE 和HAL 庫的嵌入式系統設計與應用實例。STM32CubeMX 和 STM32CubeIDE是ST公司提供的用於STM32 開發的免費工具軟件,是STM32Cube生態系統的核心工 具軟件。本書從市場上暢銷的STM32F4系列微控制器入手,利用STM32CubeMX快速生成STM32F4系 列的開發環境,並在STM32CubeIDE上對代碼進行進一步修改補充,直至生成最終的開發項目。全書共 12章,主要內容包括緒論、STM32系列微控制器、STM32CubeMX和HAL庫、STM32CubeIDE開發平臺、 STM32 GPIO、STM32中斷、STM32定時器、STM32 通用同步/異步收發器、STM32 SPI串行總線、STM32 I2C串行總線、STM32 A/D轉換器和STM32 DMA 控制器。全書內容豐富,體系先進,結構合理,理論與 實踐相結合,尤其註重工程應用技術。 本書可作為高等院校各類自動化、軟件工程、機器人、自動檢測、機電一體化、人工智能、電子與電氣工 程、電腦應用、信息工程、物聯網等相關專業的本科生、研究生授課教材,也可作為廣大從事嵌入式系統 開發的工程技術人員的參考用書。"

目錄大綱

目錄

第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軟件層次

1.6Arm嵌入式微處理器

1.6.1Arm處理器的特點

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

1.6.3Arm的RISC結構特性

1.7存儲器系統

1.7.1存儲器系統概述

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

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

第2章STM32系列微控制器

2.1STM32 微控制器概述

2.1.1STM32 微控制器產品介紹

2.1.2STM32系統性能分析

2.1.3CortexM4的三級流水線

2.1.4STM32微控制器的命名規則

2.1.5STM32F1和STM32F4的區別

2.1.6STM32微控制器的選型

2.2STM32F407ZGT6概述

2.2.1STM32F407的主要特性

2.2.2STM32F407的主要功能

2.3STM32F407ZGT6芯片內部結構

2.4STM32F407VGT6芯片引腳和功能

2.5STM32F407VGT6最小系統設計

第3章STM32CubeMX和HAL庫

3.1安裝STM32CubeMX

3.2安裝MCU固件包

3.2.1軟件庫文件夾設置

3.2.2管理嵌入式軟件包

3.3軟件功能與基本使用

3.3.1軟件界面

3.3.2新建項目

3.3.3MCU圖形化配置界面總覽

3.3.4MCU配置

3.3.5時鐘配置

3.3.6項目管理

3.3.7生成報告和代碼

3.4HAL庫

3.4.1HAL庫簡介

3.4.2HAL庫與標準外設庫和LL庫的區別

3.4.3回調函數

3.4.4MSP的作用

3.4.5HAL庫的基本問題

第4章STM32CubeIDE開發平臺

4.1安裝STM32CubeIDE

4.2STM32CubeIDE的操作

4.2.1新建和導入工程

4.2.2項目管理

4.2.3打開/關閉/刪除/切換/導出工程

4.2.4固件庫管理

4.2.5代碼編譯

4.2.6調試及運行配置

4.2.7啟動調試

4.3STM32CubeProgrammer軟件

4.4STM32CubeMonitor軟件

4.5STM32F407開發板的選擇

4.6STM32模擬器的選擇

第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.3GPIO的HAL驅動程序

5.4STM32的GPIO使用流程

5.4.1普通GPIO配置

5.4.2I/O復用功能AFIO配置

5.5採用STM32CubeMX和HAL庫的GPIO輸出應用實例

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

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

5.6採用STM32CubeMX和HAL庫的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中斷HAL驅動程序

6.4.1中斷設置相關HAL驅動函數

6.4.2外部中斷相關HAL函數

6.5STM32F4外部中斷設計流程

6.6採用STM32CubeMX和HAL庫的外部中斷設計實例

6.6.1STM32F4外部中斷的硬件設計

6.6.2STM32F4外部中斷的軟件設計

第7章STM32定時器

7.1STM32定時器概述

7.2STM32基本定時器

7.2.1基本定時器介紹

7.2.2基本定時器的功能

7.2.3STM32基本定時器的寄存器

7.3STM32通用定時器

7.3.1通用定時器介紹

7.3.2通用定時器的功能

7.3.3通用定時器的工作模式

7.3.4通用定時器的寄存器

7.4STM32定時器HAL庫函數

7.4.1基礎定時器 HAL驅動程序

7.4.2外設的中斷處理概念小結

7.5採用STM32CubeMX和HAL庫的定時器應用實例

7.5.1STM32的通用定時器配置流程

7.5.2定時器應用的硬件設計

7.5.3定時器應用的軟件設計

第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.3USART的HAL驅動程序

8.3.1常用功能函數

8.3.2常用宏函數

8.3.3中斷事件與回調函數

8.4採用STM32CubeMX和HAL庫的USART串行通信應用實例

8.4.1STM32的USART配置流程

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

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

第9章STM32 SPI串行總線

9.1STM32 SPI通信原理

9.1.1SPI串行總線概述

9.1.2SPI串行總線互連方式

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

9.2.1SPI串行總線的特徵

9.2.2SPI串行總線的內部結構

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

9.2.4STM32的SPI配置

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

9.3SPI的HAL 驅動程序

9.3.1SPI寄存器操作的宏函數

9.3.2SPI初始化和阻塞式數據傳輸

9.3.3SPI中斷方式數據傳輸

9.3.4SPI DMA方式數據傳輸

9.4採用STM32CubeMX和HAL庫的 SPI應用實例

9.4.1STM32的SPI配置流程

9.4.2STM32 SPI與Flash接口的硬件設計

9.4.3STM32 SPI與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.3I2C的HAL驅動程序

10.3.1I2C接口的初始化

10.3.2I2C阻塞式數據傳輸

10.3.3I2C中斷方式數據傳輸

10.3.4I2C DMA方式數據傳輸

10.4採用STM32CubeMX和HAL庫的 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.5ADC的HAL驅動程序

11.5.1常規通道

11.5.2註入通道

11.5.3多重ADC

11.6採用STM32CubeMX和HAL庫的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.4DMA的HAL驅動程序

12.4.1DMA的HAL庫函數概述

12.4.2DMA傳輸初始化配置

12.4.3啟動DMA數據傳輸

12.4.4DMA的中斷

12.5採用STM32CubeMX和HAL庫的DMA應用實例

12.5.1STM32的DMA配置流程

12.5.2DMA應用的硬件設計

12.5.3DMA應用的軟件設計

參考文獻