第1章微計算機(jī)系統(tǒng)基礎(chǔ)知識
1.1概述
1.2微計算機(jī)的基本構(gòu)成
1.2.1基本概念
1.2.2馮·諾伊曼和哈佛結(jié)構(gòu)
1.2.38086/8088與ARM體系
1.2.4微計算機(jī)編程與操作系統(tǒng)
1.3數(shù)制與編碼
1.3.1二進(jìn)制/十進(jìn)制/十六進(jìn)制
1.3.2數(shù)制間的轉(zhuǎn)換
1.3.3數(shù)值數(shù)據(jù)編碼
1.3.4字符數(shù)據(jù)編碼
1.4微計算機(jī)應(yīng)用領(lǐng)域
第2章CortexM3體系結(jié)構(gòu)與芯片
2.1概述
2.2CortexM3內(nèi)核結(jié)構(gòu)
2.2.1CortexM3內(nèi)核組成與特點
2.2.2CortexM3總線
2.3基于CortexM3內(nèi)核的處理器體系結(jié)構(gòu)
2.3.1工作模式
2.3.2三級流水線
2.3.3寄存器
2.4存儲器結(jié)構(gòu)及其管理機(jī)制
2.4.1存儲器分類與特點
2.4.2CortexM3存儲器分區(qū)
2.4.3CortexM3非對齊訪問和互斥訪問
2.5中斷以及異常
2.5.1中斷及異常的概念
2.5.2CortexM3中斷控制器NVIC
2.5.3CortexM3系統(tǒng)級中斷與異常特點
2.5.4CortexM3中斷及異常嵌套與返回途徑
2.5.5高級中斷技術(shù)
2.6基于CortexM3內(nèi)核的STM32處理器
2.6.1STM32處理器特點
2.6.2編程模式與調(diào)試工具簡述
第3章STM32F1系列處理器
3.1STM32F1系列處理器簡介
3.2STM32F103ZET6處理器架構(gòu)和主要特性
3.2.1芯片和引腳定義
3.2.2系統(tǒng)架構(gòu)
3.2.3主要特性
3.3STM32F103ZET6的時鐘樹
3.4STM32F103ZET6存儲器組織及其映像
3.5最小系統(tǒng)
3.5.1復(fù)位電路
3.5.2時鐘電路
3.5.3電源DCDC轉(zhuǎn)換電路
3.5.4系統(tǒng)調(diào)試電路JTAG
3.5.5其他輔助電路
3.6STM32最小系統(tǒng)和拓展實驗平臺
3.7STM32實驗環(huán)境構(gòu)建
3.8STM32軟件開發(fā)與仿真環(huán)境構(gòu)建
第4章STM32程序設(shè)計
4.1匯編語言簡介
4.1.1計算機(jī)語言
4.1.2匯編語言的語法結(jié)構(gòu)
4.2尋址方式與指令系統(tǒng)
4.2.1CortexM3指令組成結(jié)構(gòu)
4.2.2尋址方式
4.2.3CortexM3指令集
4.3基于CortexM3處理器的匯編語言程序設(shè)計
4.3.1ARM匯編語言中的常量、變量、表達(dá)式及運(yùn)算符
4.3.2偽指令
4.3.3程序設(shè)計思想
4.3.4程序示例
4.4C固件庫使用與編程
4.4.1直接操作寄存器與固件庫開發(fā)
4.4.2CMSIS標(biāo)準(zhǔn)與STM32標(biāo)準(zhǔn)庫
4.4.3固件庫的C語言知識
4.4.4固件庫函數(shù)使用與編程
第5章通用輸入/輸出接口
5.1GPIO接口概述
5.2GPIO接口基本功能
5.2.1GPIO
5.2.2接口位設(shè)置或位清除
5.2.3外部中斷/喚醒線
5.2.4接口復(fù)用功能及其配置
5.2.5軟件重新映射GPIO復(fù)用功能
5.2.6GPIO接口的鎖定機(jī)制
5.2.7輸入和輸出配置
5.3GPIO寄存器及其功能配置
5.3.1x接口配置低寄存器GPIOx_CRL
5.3.2x接口配置高寄存器GPIOx_CRH
5.3.3x接口輸入/輸出數(shù)據(jù)寄存器GPIOx_IDR和GPIOx_ODR
5.3.4接口位設(shè)置/清除寄存器GPIOx_BSRR
5.3.5接口位清除寄存器GPIOx_BRR
5.3.6接口配置鎖定寄存器GPIOx_LCKR
5.4RCC時鐘模塊寄存器
5.4.1時鐘控制和配置寄存器RCC_CR和RCC_CFGR
5.4.2時鐘中斷寄存器RCC_CIR
5.4.3APB1/2外設(shè)復(fù)位寄存器RCC_APB1RSTR和RCC_APB2RSTR
5.4.4AHB外設(shè)時鐘使能寄存器RCC_AHBENR
5.4.5APB1/2外設(shè)時鐘使能寄存器RCC_APB1ENR和RCC_APB2ENR
5.4.6備份域控制寄存器RCC_BDCR
5.4.7控制/狀態(tài)寄存器RCC_CSR
5.5通用輸入輸出GPIO接口使用
5.5.1利用C語言直接操作寄存器方法訪問GPIO方法
5.5.2利用固件庫函數(shù)方法訪問GPIO接口方法
第6章中斷和事件
6.1ARM STM32的中斷源
6.1.1STM32F103ZET6中斷和異常向量
6.1.2ARM STM32中斷優(yōu)先級
6.2ARM STM32中斷管理機(jī)制
6.2.1向量中斷寄存器
6.2.2中斷設(shè)置流程
6.3外部中斷/事件控制器EXTI
6.3.1EXTI結(jié)構(gòu)與管理機(jī)制
6.3.2外部中斷/事件控制器EXTI相關(guān)寄存器
6.4外部中斷的使用
第7章STM32定時器
7.1定時器原理
7.1.1基本定時器
7.1.2通用定時器
7.1.3高級定時器
7.1.4滴答定時器
7.2定時器中斷應(yīng)用
7.2.1硬件設(shè)計
7.2.2軟件設(shè)計
7.3定時器PWM輸出應(yīng)用
7.3.1脈寬調(diào)制
7.3.2實現(xiàn)PWM輸出相關(guān)寄存器
7.3.3硬件配置
7.3.4軟件設(shè)計
7.4定時器輸入捕獲應(yīng)用
7.4.1定時器輸入捕獲簡介
7.4.2硬件配置
7.4.3軟件設(shè)計
第8章串行通信
8.1串行通信的相關(guān)概念
8.1.1串行通信與并行通信
8.1.2串行通信的分類
8.1.3串行異步通信的數(shù)據(jù)傳輸形式
8.2STM32通用同步/異步收發(fā)器
8.2.1USART概述
8.2.2USART通信
8.2.3USART固件庫函數(shù)
8.2.4USART應(yīng)用示例
8.3STM32處理器的SPI
8.3.1SPI概述
8.3.2SPI通信
8.3.3SPI固件庫函數(shù)
8.3.4SPI接口應(yīng)用例
8.4STM32處理器的I2C接口
8.4.1I2C接口概述
8.4.2I2C接口通信
8.4.3I2C接口固件庫函數(shù)
8.4.4I2C接口應(yīng)用示例
第9章ADC和DAC接口
9.1模擬量
9.2ADC工作原理及性能指標(biāo)
9.2.1ADC原理
9.2.2ADC的性能指標(biāo)
9.3STM32處理器ADC的構(gòu)造及特性
9.3.1硬件結(jié)構(gòu)
9.3.2功能特性
9.4STM32處理器ADC功能配置
9.5STM32處理器ADC寄存器
9.6STM32 ADC應(yīng)用
9.6.1STM32 ADC固件庫函數(shù)
9.6.2STM32 ADC應(yīng)用示例
9.7DAC工作原理及性能指標(biāo)
9.7.1DAC工作原理
9.7.2DAC性能指標(biāo)
9.8STM32處理器DAC模塊硬件及特性
9.8.1STM32 DAC硬件
9.8.2功能特性
9.9STM32 DAC功能配置
9.10STM32 DAC寄存器
9.11STM32處理器的DAC應(yīng)用
9.11.1STM32 處理器的DAC固件庫函數(shù)
9.11.2STM32 DAC應(yīng)用示例
第10章DMA和FSMC控制器
10.1DMA簡介
10.2DMA結(jié)構(gòu)與功能
10.2.1DMA主要特征
10.2.2DMA寄存器
10.2.3DMA通道
10.2.4DMA中斷請求
10.2.5DMA仲裁器
10.2.6DMA請求映射
10.3DMA重要固件庫函數(shù)
10.4DMA存儲器到外設(shè)模式操作示例
10.5FSMC簡介
10.6FSMC結(jié)構(gòu)與功能
10.6.1FSMC功能特點
10.6.2AHB總線接口
10.6.3外部設(shè)備接口
10.6.4FSMC寄存器
10.6.5FSMC的地址映射
10.7FSMC重要固件庫函數(shù)
10.8FSMC對TFTLCD液晶屏幕操作例
第11章FreeRTOS實時操作系統(tǒng)
11.1FreeRTOS簡介
11.2FreeRTOS基礎(chǔ)知識
11.2.1FreeRTOS系統(tǒng)配置
11.2.2FreeRTOS中斷配置
11.2.3FreeRTOS臨界段代碼保護(hù)
11.2.4FreeRTOS任務(wù)基礎(chǔ)知識
11.3FreeRTOS開發(fā)重要函數(shù)
11.3.1任務(wù)創(chuàng)建和刪除函數(shù)
11.3.2任務(wù)掛起和恢復(fù)函數(shù)
11.4FreeRTOS信號量
11.4.1信號量簡介
11.4.2二值信號量
11.4.3計數(shù)信號量
11.4.4互斥信號量
11.4.5遞歸互斥信號量
11.5FreeRTOS移植
11.5.1系統(tǒng)移植準(zhǔn)備工作
11.5.2FreeRTOS移植
11.5.3關(guān)鍵問題解決方案
11.6FreeRTOS操作系統(tǒng)使用示例
參考文獻(xiàn)
附錄AASCII碼表
附錄B最小實驗系統(tǒng)
附錄C擴(kuò)展實驗系統(tǒng)
附錄D高級實驗系統(tǒng)