內容簡介
本書首先介紹微型計算機的相關概念及嵌入式系統的套用,接著介紹Cortex M3微處理器架構及開發方法,介紹彙編語言及其程式設計。在開發套用方面,以STM32F103VET6為背景,介紹常見接口的原理及套用。根據高等工程教育對動手能力培養的要求,緊密結合學習平台,注重實驗實踐內容的編寫,實驗數量豐富。教材中與學習平台相關的實例代碼均經過作者嚴格的仿真調試,讀者可將它們加入到自己的工程項目中。
圖書目錄
第1章基礎知識
1.1微型計算機發展概述
1.2微型計算機中的數制及其編碼
1.2.1微型計算機中的數制
1.2.2不同數制之間的轉換
1.2.3數值數據的編碼及其運算
1.2.4非數值數據的編碼
1.3微型計算機領域的幾個相關概念
1.3.1常用單位及術語
1.3.2微型計算機的基本構成
1.3.3微控制器與嵌入式系統
1.3.4常見技術
1.4ARM概述
1.5微型計算機的套用
1.6習題
第2章CortexM3處理器
2.1CortexM3處理器簡介及其組件
2.1.1CortexM3處理器簡介
2.1.2CortexM3處理器的組件
2.1.3匯流排結構
2.2流水線
2.3暫存器
2.3.1通用暫存器
2.3.2特殊功能暫存器
2.4工作模式和工作等級
2.5堆疊
2.5.1堆疊的基本操作
2.5.2CortexM3的雙堆疊機制
2.6存儲器管理
2.6.1存儲器空間分配
2.6.2位帶操作
2.6.3端模式
2.7異常與中斷
2.7.1中斷號與優先權
2.7.2向量表
2.7.3中斷輸入及掛起
2.7.4Fault類異常
2.7.5中斷的具體行為
2.7.6中斷嵌套控制
2.7.7高級中斷技術
2.7.8異常返回值
2.8復位序列
2.9習題
第3章STM32F1系列微控制器
3.1STM32F1系列微控制器簡介
3.2STM32F1系列產品系統構架和STM32F103ZET6內部結構
3.2.1STM32F1系列產品系統架構
3.2.2STM32F103ZET6的內部架構
3.3STM32F103ZET6的存儲器映像
3.4STM32F103ZET6的時鐘結構
3.5STM32F103VET6的引腳
3.6STM32F103VET6最小系統設計
3.7習題
第4章彙編語言及其程式設計
4.1程式語言簡介
4.2指令分類、條件域和指令格式
4.3定址方式
4.4CortexM3指令集
4.4.1數據傳送類指令
4.4.2數據處理類指令
4.4.3跳轉指令
4.4.4其他指令
4.4.5Thumb指令及套用
4.5彙編語言程式設計舉例
4.5.1分支程式設計
4.5.2循環程式設計
4.5.3子程式的調用與返回
4.6習題
第5章ARM微控制器開發
5.1開發流程
5.2處理器的啟動過程
5.3輸入和輸出接口
5.4程式映像
5.5C語言開發ARM套用
5.6固件庫
5.6.1基於固件庫開發和直接操作暫存器的區別
5.6.2STM32固件庫
5.7習題
第6章通用輸入/輸出接口
6.1通用輸入/輸出接口概述
6.2GPIO的功能
6.3GPIO的暫存器
6.4RCC時鐘模組的暫存器
6.5GPIO的使用
6.5.1利用彙編語言訪問GPIO
6.5.2利用C語言直接操作暫存器方法訪問GPIO
6.5.3利用固件庫函式方法訪問GPIO
6.6習題
第7章中斷和事件
7.1STM32的中斷源
7.2STM32的中斷管理
7.2.1中斷向量暫存器
7.2.2中斷系統設定過程
7.3外部中斷/事件控制器
7.3.1外部中斷/事件控制器
7.3.2外部中斷/事件控制器相關暫存器
7.4外部中斷的使用
7.4.1外部中斷相關的固件庫函式
7.4.2利用固件庫函式開發外部中斷套用
7.5習題
第8章定時器
8.1STM32通用定時器概述
8.1.1高級控制定時器(TIM1和TIM8)
8.1.2普通定時器(TIMx)
8.1.3基本定時器(TIM6和TIM7)
8.1.4定時器的時鐘
8.2普通定時器的結構
8.2.1時基單元
8.2.2計數器模式
8.2.3時鐘選擇
8.2.4捕獲/比較通道
8.3普通定時器的工作模式
8.4普通定時器的暫存器
8.5普通定時器的使用
8.5.1普通定時器的固件庫函式
8.5.2普通定時器的使用舉例
8.6習題
第9章串列通信
9.1通信的有關概念
9.1.1串列通信的相關概念
9.1.2並行通信中的相關概念
9.2STM32的異步串列通信接口
9.2.1STM32異步串列通信接口簡介
9.2.2STM32的USART引腳重映射
9.2.3STM32的USART接口結構
9.2.4STM32的USART特性
9.2.5STM32的USART中斷請求
9.2.6STM32的USART暫存器
9.2.7STM32的USART固件庫函式
9.2.8STM32的USART使用舉例
9.3STM32的SPI接口
9.3.1STM32的SPI接口簡介
9.3.2STM32的SPI接口結構
9.3.3STM32的SPI接口配置
9.3.4STM32的SPI接口數據傳送與接收過程
9.3.5CRC計算
9.3.6狀態標誌
9.3.7關閉SPI
9.3.8STM32的SPI接口中斷
9.3.9STM32的SPI接口的暫存器
9.3.10STM32的SPI接口固件庫函式
9.3.11STM32的SPI接口套用實例
9.4習題
第10章模擬量模組
10.1模數轉換器的工作原理及性能指標
10.1.1模數轉換器的工作原理
10.1.2模數轉換器的性能指標
10.2STM32F103VET6集成的ADC模組
10.2.1STM32的ADC概述
10.2.2STM32的ADC模組結構
10.2.3STM32的ADC配置
10.2.4STM32的ADC套用特徵
10.2.5STM32的ADC中斷請求
10.2.6STM32的ADC暫存器
10.2.7STM32的ADC固件庫函式
10.2.8STM32的ADC使用舉例
10.3數模轉換器的工作原理及性能指標
10.3.1數模轉換器的工作原理
10.3.2數模轉換器的性能指標
10.4STM32F103VET6集成的DAC模組
10.4.1STM32的DAC主要特徵
10.4.2STM32的DAC接口結構
10.4.3STM32的DAC配置
10.4.4STM32的DAC暫存器
10.4.5STM32的DAC固件庫函式
10.4.6STM32的DAC使用舉例
10.5習題
第11章DMA控制器
11.1DMA的結構和主要特徵
11.2DMA的功能描述
11.2.1DMA處理
11.2.2仲裁器
11.2.3DMA通道
11.2.4可程式的數據傳輸寬度、對齊方式和數據大小端
11.2.5DMA中斷
11.2.6DMA請求映像
11.3DMA的暫存器
11.4DMA的固件庫函式
11.4.1DMA暫存器C語言結構定義
11.4.2DMA庫函式
11.5DMA使用舉例
11.6習題
第12章FSMC控制器
12.1FSMC的功能和結構
12.1.1FSMC的功能描述
12.1.2FSMC的結構
12.2AHB接口
12.3FSMC外部設備地址映像
12.4NOR快閃記憶體和PSRAM控制器
12.4.1外部存儲器接口信號
12.4.2支持的存儲器及其操作
12.4.3NOR快閃記憶體和PSRAM控制器時序
12.4.4同步的成組讀
12.5NOR快閃記憶體和PSRAM控制器暫存器
12.6FSMC固件庫函式
12.7FSMC使用舉例
12.8習題
附錄AASCII碼錶
附錄B邏輯符號對照表
附錄C使用MDK開發調試彙編語言程式
C.1MDK簡介
C.2使用MDK調試彙編語言程式
參考文獻