AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰

黃克亞 編著

  • 出版商: 深智
  • 出版日期: 2025-01-19
  • 定價: $1,080
  • 售價: 7.9$853
  • 語言: 繁體中文
  • 頁數: 624
  • ISBN: 6267569381
  • ISBN-13: 9786267569382
  • 相關分類: ARMSTM32人工智慧
  • 尚未上市,歡迎預購

  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-1
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-2
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-3
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-4
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-5
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-6
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-7
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-8
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-9
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-10
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-11
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-12
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-13
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-14
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-15
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-16
  • AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-17
AI PC 基礎 CPU 架構 - Arm Cortex-M4 STM32F407 HAL 開發實戰-preview-1

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

相關主題

商品描述

AI PC基礎CPU架構 - Arm Cortex-M4 STM32F407 HAL開發實戰

︎ ARM Cortex-M4嵌入式系統

︎ STM32F407與實驗平臺,軟體環境設定與使用入門

通用輸入輸出通訊埠

︎ LED流水燈與SysTick計時器

按鍵輸入與蜂鳴器

︎ FSMC匯流排與雙顯示終端

中斷系統與基本應用

基本計時器,通用計時器

串列通訊介面USART

︎ SPI與字形檔儲存

︎ I2C介面與EEPROM

/數轉換與光照感測器

直接記憶體存取

/類轉換器

位元附帶操作與溫濕度感測器

︎ RTC與藍芽通訊

作者簡介

黃克亞

蘇州大學副教授、軟體設計師、碩士生導師,主要從事智慧控制、嵌入式系統開發等領域的教學和科研工作。長期講授「電工電子技術」「單片機原理與控制技術」「微機原理及應用」「嵌入式系統開發與實踐」「感測器應用技術」等課程。近年來主持省級課題2項,獲授權發明專利2項,登記軟體著作權4項,發表SCI/EI/中文核心論文12篇。指導學生獲全國軟件和資訊技術專業人才大賽全國總決賽二等獎2項、全國大學生電子設計競賽江蘇省賽區二等獎2項、江蘇省本專科優秀畢業設計(論文)三等獎1項。

目錄大綱

第一篇 系統平台
第 1 章 ARM Cortex-M4嵌入式系統
1.1 嵌入式系統概述
1.1.1 什麼是嵌入式系統
1.1.2 嵌入式系統和通用電腦比較
1.1.3 嵌入式系統的特點
1.1.4 嵌入式系統的應用領域
1.1.5 嵌入式系統範例
1.2 嵌入式系統的硬體
1.2.1 嵌入式處理器的分類
1.2.2 嵌入式處理器的技術指標
1.2.3 嵌入式記憶體
1.2.4 嵌入式I/O裝置
1.2.5 嵌入式I/O介面
1.3 ARM Cortex-M4處理器
1.3.1 ARM公司
1.3.2 ARM處理器
1.4 STM32微控制器
1.4.1 從ARM Cortex-M核心到基於ARM Cortex-M的MCU
1.4.2 STM32微控制器產品線
1.4.3 STM32微控制器命名規則
1.5 嵌入式系統的軟體
1.5.1 無作業系統的嵌入式軟體
1.5.2 附帶作業系統的嵌入式軟體
1.5.3 典型嵌入式作業系統
1.5.4 軟體結構選擇建議
本章小結
思考拓展


第 2 章 STM32F407與實驗平臺
2.1 STM32F407微控制器
2.1.1 STM32F407/STM32F417系列
2.1.2 STM32F407功能特性
2.1.3 TM32F407內部結構
2.1.4 STM32F407記憶體映射
2.1.5 STM32F407時鐘系統
2.1.6 STM32F407接腳
2.2 開發板整體概況
2.2.1 開發板設計背景
2.2.2 開發板整體介紹
2.3 電源電路
2.3.1 電源電路原理圖
2.3.2 電源電路工作原理
2.4 核心板電路
2.4.1 晶片電源電路
2.4.2 CPU濾波電路
2.4.3 外接晶振電路
2.4.4 備用電源電路
2.4.5 重置電路
2.4.6 啟動設定電路
2.5 I/O模組電路
2.5.1 LED模組
2.5.2 按鍵模組
2.5.3 顯示模組
2.5.4 蜂鳴器模組
2.6 擴充模組電路
2.6.1 溫濕度感測器
2.6.2 光照感測器
2.6.3 A/D採樣模組
2.6.4 EEPROM
2.6.5 Flash記憶體
2.6.6 波形發生器
2.6.7 藍牙模組
2.6.8 I/O接腳外接模組
2.7 CMSIS-DAP偵錯器
本章小結
思考拓展


第 3 章 軟體環境設定與使用入門
3.1 STM32開發方式
3.1.1 STM32Snippets函數庫
3.1.2 標準外接裝置函數庫
3.1.3 STM32CubeMX HAL函數庫
3.1.4 STM32CubeMX LL函數庫
3.1.5 開發方式比較與選擇
3.2 軟體資源安裝與設定
3.2.1 JRE安裝
3.2.2 STM32CubeMX安裝
3.2.3 HAL軔體套件安裝
3.2.4 MDK-ARM安裝
3.2.5 元件套件安裝
3.2.6 MDK-ARM註冊
3.2.7 軟體安裝總結
3.3 基於STM32CubeMX的HAL開發方式
3.3.1 STM32CubeMX生成初始化程式
3.3.2 MDK-ARM整合開發
3.4 CMSIS-DAP偵錯器使用
3.4.1 偵錯器連接與驅動安裝
3.4.2 偵錯選項設定與程式下載
3.5 開發經驗小結—編譯器最佳化與volatile 關鍵字
3.5.1 編譯器最佳化
3.5.2 volatile關鍵字
本章小結
思考拓展


第二篇 基本外設
第 4 章 通用輸入輸出通訊埠
4.1 GPIO概述及接腳命名
4.2 GPIO內部結構

4.2.1 輸入驅動器
4.2.2 輸出驅動器
4.3 GPIO工作模式
4.3.1 輸入浮空
4.3.2 輸入上拉
4.3.3 輸入下拉
4.3.4 類比輸入
4.3.5 開漏輸出
4.3.6 開漏重複使用輸出
4.3.7 推拉式輸出
4.3.8 推拉式重複使用輸出
4.3.9 工作模式選擇
4.4 GPIO輸出速度
4.5 I/O接腳重複使用及映射
4.6 GPIO控制暫存器

4.7 GPIO控制暫存器設定實例
4.8 暫存器版LED燈閃爍專案

4.8.1 建立暫存器版專案範本
4.8.2 LED燈閃爍程式設計
4.9 開發經驗小結—MDK中的C語言資料型態
本章小結
思考拓展


第 5 章 LED流水燈與SysTick計時器
5.1 GPIO輸出庫函數
5.1.1 GPIO外接裝置時鐘啟用
5.1.2 函數HAL_GPIO_Init()
5.1.3 函數HAL_GPIO_DeInit()
5.1.4 函數HAL_GPIO_WritePin()
5.1.5 函數HAL_GPIO_TogglePin()
5.1.6 輸出暫存器存取
5.2 LED流水燈控制
5.3 SysTick計時器

5.3.1 SysTick計時器概述
5.3.2 SysTick計時器暫存器
5.3.3 延遲時間函數HAL_Delay()
5.3.4 HAL_Delay() 延遲時間實例
5.3.5 微秒級延遲時間的實現
5.3.6 綜合延遲時間程式實例
5.4 開發經驗小結—C語言中的位元運算
5.4.1 位元運算符號和位元運算
5.4.2 嵌入式系統位元運算實例
本章小結
思考拓展


第 6 章 按鍵輸入與蜂鳴器
6.1 GPIO 輸入庫函數
6.1.1 函數HAL_GPIO_ReadPin()
6.1.2 輸入資料暫存器存取
6.1.3 函數HAL_GPIO_LockPin()
6.2 獨立按鍵控制蜂鳴器
6.2.1 電路原理
6.2.2 按鍵消抖
6.2.3 專案實施
6.3 矩陣鍵盤掃描
6.3.1 矩陣鍵盤電路
6.3.2 矩陣鍵盤掃描原理
6.3.3 矩陣鍵盤實例
6.4 開發經驗小結—複合資料型態
6.4.1 結構資料型態
6.4.2 列舉資料型態
本章小結
思考拓展


第 7 章 FSMC 匯流排與雙顯示終端
7.1 FSMC匯流排
7.2 硬體系統設計

7.2.1 硬體結構方塊圖
7.2.2 FSMC與TFT LCD 連接
7.2.3 FSMC與數位管連接
7.3 數位管介面技術
7.3.1 數位管工作原理
7.3.2 數位管編碼方式
7.3.3 數位管顯示方式
7.4 TFT LCD驅動
7.4.1 ILI9341 顏色系統
7.4.2 ILI9341 常用命令
7.5 專案實例
7.5.1 FSMC讀寫時序
7.5.2 FSMC初始化
7.5.3 數位管動態顯示學號
7.5.4 數位管動態顯示時間
7.5.5 LCD驅動程式
7.5.6 LCD英文顯示
7.5.7 LCD中文資訊顯示
7.6 開發經驗小結—C語言指標及其類型轉換
7.6.1 指標基本概念
7.6.2 指標類型轉換
本章小結
思考拓展


第 8 章 中斷系統與基本應用
8.1 中斷的基本概念
8.1.1 中斷的定義
8.1.2 中斷的優點與應用
8.1.3 中斷來源與中斷遮罩
8.1.4 中斷處理過程
8.1.5 中斷優先順序與中斷巢狀結構
8.2 STM32F407中斷系統
8.2.1 巢狀結構向量中斷控制器
8.2.2 STM32F407中斷優先順序
8.2.3 STM32F407中斷向量表
8.2.4 STM32F407中斷服務函數
8.3 STM32F407外部中斷/事件控制器EXTI
8.3.1 EXTI內部結構
8.3.2 EXTI工作原理
8.3.3 EXTI主要特性
8.4 STM32F407外部中斷HAL函數庫
8.4.1 STM32F407的NVIC相關函數庫
8.4.2 STM32F407的EXTI相關函數庫
8.5 EXTI專案實例
8.5.1 開發專案
8.5.2 專案實施
8.5.3 ISR框架總結
8.6 開發經驗小結—前/背景嵌入式軟體架構
本章小結
思考拓展


第 9 章 基本計時器
9.1 STM32F407計時器概述
9.2 基本計時器

9.2.1 基本計時器簡介 
9.2.2 基本計時器的主要特性
9.2.3 基本計時器的功能
9.2.4 基本計時器暫存器
9.3 基本計時器的HAL驅動
9.3.1 基本計時器主要HAL驅動函數
9.3.2 計時器通用操作巨集函數
9.3.3 計時器中斷處理函數
9.4 專案實例
9.4.1 數字電子鐘
9.4.2 計時器更新數位管
9.4.3 計時器矩陣鍵盤掃描 
本章小結
思考拓展


第 10 章 通用計時器
10.1 通用計時器功能概述
10.1.1 通用計時器主要特性
10.1.2 通用計時器功能描述
10.2 通用計時器工作模式與HAL驅動
10.2.1 PWM輸出模式
10.2.2 輸出比較模式
10.2.3 輸入捕捉模式
10.2.4 PWM輸入模式
10.3 通用計時器暫存器
10.4 通用計時器中斷事件和回呼函數
10.5 專案實例

10.5.1 PWM呼吸燈
10.5.2 輸出比較模式輸出方波訊號
10.5.3 輸入捕捉模式測量脈衝頻率
10.5.4 PWM波頻率和工作週期比測量
本章小結
思考拓展


第三篇 擴展外設
第 11 章 串列通訊介面USART
11.1 資料通信基本概念
11.1.1 並行通訊與串列通訊
11.1.2 非同步通訊與同步通訊
11.1.3 串列通訊的制式
11.1.4 串列通訊的驗證
11.1.5 串列通訊的串列傳輸速率
11.2 USART工作原理
11.2.1 USART介紹
11.2.2 USART功能特性
11.2.3 UART通訊協定
11.2.4 USART中斷
11.2.5 USART相關暫存器
11.3 UART的HAL驅動
11.3.1 UART常用功能函數
11.3.2 UART常用的巨集函數
11.3.3 UART中斷事件與回呼函數
11.4 序列埠通訊專案實例
11.4.1 開發專案
11.4.2 微控制器端程式設計
11.4.3 上位機程式設計
11.4.4 序列埠通訊偵錯
11.5 開發經驗小結—printf()重定向函數
11.5.1 重寫fputc()函數
11.5.2 選擇使用Micro LIB
11.5.3 printf()序列埠列印資訊
本章小結
思考拓展


第 12 章 SPI與字形檔儲存
12.1 SPI通訊原理
12.1.1 SPI
12.1.2 SPI互連 ...................................................................................12-4
12.2 STM32F407的SPI工作原理
12.2.1 SPI主要特徵
12.2.2 SPI內部結構
12.2.3 時鐘訊號的相位和極性
12.2.4 資料框架格式
12.3 Flash儲存晶片W25Q128
12.3.1 硬體介面和連接
12.3.2 儲存空間劃分
12.3.3 資料讀寫原則
12.3.4 記憶體操作指令
12.4 SPI的HAL函數庫驅動
12.4.1 SPI暫存器操作的巨集函數
12.4.2 SPI初始化和阻塞式資料傳輸
12.4.3 中斷和DMA方式資料傳輸
12.5 SPI Flash讀寫測試
12.5.1 開發專案
12.5.2 專案實施
12.6 中文字形檔儲存
12.6.1 需求分析
12.6.2 字形檔生成與合併
12.6.3 字形檔儲存
12.6.4 LCD中文驅動程式
12.7 基於SPI快閃記憶體的中文顯示
12.8 開發經驗小結——條件編譯

12.8.1 命令形式
12.8.2 應用範例
本章小結
思考拓展


第 13 章 I2C介面與EEPROM
13.1 I2C通訊原理
13.1.1 I2C串列匯流排概述
13.1.2 I2C匯流排的資料傳送
13.2 STM32F407的I2C介面
13.2.1 STM32F407的I2C主要特性
13.2.2 STM32F407的I2C內部結構
13.2.3 STM32F407的I2C工作模式
13.3 I2C介面的HAL函數庫驅動
13.3.1 I2C介面的初始化
13.3.2 阻塞式資料傳輸
13.3.3 中斷方式資料傳輸
13.3.4 DMA方式資料傳輸
13.4 EEPROM儲存晶片24C02
13.4.1 晶片概述與硬體連接
13.4.2 介面與通訊協定
13.5 EEPROM儲存開機密碼專案
13.5.1 開發專案
13.5.2 專案實施
本章小結
思考拓展


第 14 章 類/數轉換與光照感測器
14.1 ADC概述
14.1.1 ADC基本原理
14.1.2 ADC性能參數
14.1.3 ADC主要類型
14.2 STM32F407的ADC工作原理
14.2.1 主要特徵
14.2.2 內部結構
14.2.3 通道及分組
14.2.4 時序圖
14.2.5 資料對齊
14.2.6 校準
14.2.7 轉換時間
14.2.8 轉換模式
14.2.9 外部觸發轉換和觸發極性
14.2.10 中斷和DMA請求
14.2.11 多重ADC模式
14.3 ADC的HAL函數庫驅動
14.3.1 規則通道驅動
14.3.2 注入通道驅動
14.3.3 多重ADC驅動
14.4 專案實例
14.4.1 多通道輪詢方式類比訊號擷取
14.4.2 光照感測器類比與數位同步控制
本章小結
思考拓展


第 15 章 直接記憶體存取
15.1 DMA的基本概念
15.1.1 DMA的由來
15.1.2 DMA的定義
15.1.3 DMA的優點
15.2 STM32F407的DMA工作原理
15.2.1 DMA簡介
15.2.2 DMA通道選擇
15.2.3 DMA主要特性
15.2.4 DMA傳輸屬性
15.3 DMA的HAL函數庫驅動
15.3.1 DMA的HAL函數概述
15.3.2 DMA傳輸初始化設定
15.3.3 啟動DMA資料傳輸
15.3.4 DMA中斷
15.4 專案實例
15.4.1 USART介面DMA傳輸
15.4.2 計時器觸發DMA傳輸多通道類比量擷取
15.4.3 三重ADC同步轉換DMA傳輸
15.5 開發經驗小結—輪詢、中斷、DMA
15.5.1 輪詢
15.5.2 中斷
15.5.3 DMA
本章小結
思考拓展


第 16 章 數/類轉換器
16.1 DAC概述
16.1.1 DAC基本原理
16.1.2 DAC性能參數
16.2 STM32F407的DAC工作原理
16.2.1 DAC結構與特性
16.2.2 DAC功能說明
16.3 DAC的HAL函數庫驅動
16.3.1 DAC驅動巨集函數
16.3.2 DAC驅動功能函數
16.4 專案實例
16.4.1 軟體觸發D/A轉換
16.4.2 三角波輸出
16.4.3 使用DMA輸出正弦波訊號
本章小結
思考拓展


第 17 章 位元帶操作與溫濕度感測器
17.1 STM32位元帶操作
17.1.1 位元帶介紹
17.1.2 位元等量與位元帶別名區位址轉換
17.1.3 位元帶操作巨集定義
17.2 溫濕度感測器DHT11
17.2.1 DHT11 功能說明
17.2.2 DHT11 單匯流排通訊協定
17.3 溫濕度即時監測
17.3.1 開發專案
17.3.2 專案實施
本章小結
思考拓展


第 18 章 RTC與藍牙通訊
18.1 RTC概述
18.1.1 RTC功能
18.1.2 RTC工作原理
18.1.3 RTC的中斷和重複使用接腳
18.2 RTC的HAL函數庫驅動
18.2.1 RTC的HAL基礎驅動程式
18.2.2 週期喚醒相關HAL函數
18.2.3 鬧鈴相關HAL函數
18.3 備份暫存器
18.4 RTC日曆和鬧鈴專案

18.4.1 開發專案
18.4.2 專案實施
18.5 藍牙模組通訊
18.5.1 藍牙通訊概述
18.5.2 藍牙透明傳輸原理
18.6 無線時間同步電子萬年曆
18.6.1 開發專案
18.6.2 專案實施
本章小結
思考拓展


附錄A ASCII 碼表
附錄B 運算子和結合性關係表
附錄C STM32F407微控制器接腳定義表
參 考 文 獻