ARM Cortex-M3嵌入式開發及應用(STM32系列)

ARM Cortex-M3嵌入式開發及應用(STM32系列)

作者: 張新民 段洪琳
出版社: 清華大學
出版在: 2017-01-01
ISBN-13: 9787302450177
ISBN-10: 730245017X
裝訂格式: 平裝
總頁數: 296 頁





內容描述


採用由簡到難的編寫思路, 首先介紹簡單嵌入式發展趨勢和概念,然後逐步到功能性開發,舉例分析,最後加深難度,介紹高級應用,從而使讀者很容易理解和消化。全書共10章,第1~3章介紹了嵌入式系統的基本概念、常用芯片、工具和嵌入式系統的開發過程; 第4章介紹了配套學習板的原理圖和設計思路; 第5~7章介紹了STM32的基本使用和各種外設的驅動以及開發應用,並列舉了各種典型的應用實例; 第8章介紹了μc/OSⅡ在STM32上的應用情況; 第9章詳細介紹了STM32嵌入式系統中可以使用的一些經典實用算法; 第10章從實用角度列舉了支持MODBUS通信協議的通用控制器開發實例。 本書中列舉的實例具有一定難度,適合具有一定嵌入式基礎的讀者使用,初學者請參考本書提供的共享資料和開發板的應用代碼。本書的編寫強調實用性和易用性,希望能解決讀者學習和開發過程中的一些實際困難和問題。


目錄大綱


目錄
Contents
第1章嵌入式系統開發技術
1.1嵌入式開發的基本概念
1.1.1嵌入式系統的基本組成
1.1.2嵌入式系統的特點
1.2嵌入式系統發展歷史與現狀
1.3嵌入式系統的組成
1.3. 1硬件層
1.3.2中間層
1.3.3系統軟件層
1.4嵌入式系統相關概念
1.4.1嵌入式處理器
1.4.2嵌入式外圍設備
1.4.3嵌入式操作系統
1.4.4嵌入式應用軟件
1.5應用領域
第2章ARM技術概述
2.1ARM體系構架
2.1.1哈佛結構
2.1.2馮·諾依曼結構
2.2ARM的RISC結構特性
2.3常用ARM處理器系列
2.4ARM體系結構和技術特徵
2.5ARM的流水線
2.6Thumb指令集
2.7Thumb2指令集
第3章基於STM32的嵌入式系統應用開發
3.1STM32F103系列MCU簡介
3.1.1MCU基本功能
3.1.2系統性能分析
3 .2低功耗版本STM32L系列
3.3STM32的開發工具
3.4STM32的固件庫文件
3.5STM32的啟動文件
3.6JTAG簡介
3.7JTAG調試STM32F103過程
3.8SWD仿真模式
3.9JTAG接口及仿真器接口定義
3.10ISP下載器及常用工具
第4章DevStm 4.0開發板硬件及設計
4.1電源電路
4.2MCU外圍電路
4.3復位電路
4.4晶振電路
4.5啟動模式設置電路
4.6EEPROM電路
4.7串口電路
4.8RS485接口電路
4.9SD卡接口電路
4.10JTAG電路
4.11按鍵檢測電路
4.12開關檢測電路
4.13網絡接口電路
4.14PWM驅動LED電路
4.15片載A/D轉換電路
4.16AD7708 16位高精度A/D轉換電路
4.17CAN總線接口電路
4.18OLED顯示接口電路
4.19繼電器驅動電路
4.20SeiSite接口
4.2 1開發板原件PCB佈局及接口指示說明
第5章STM32基本應用技術
5.1GPIO通用輸入/輸出接口
5.1.1GPIO端口結構
5.1.2GPIO口輸入/輸出模式
5.1.3GPIO的庫函數操作
5.1.4GPIO使用示例
5.2系統滴答定時器
5.2.1SysTick端口結構
5.2.2SysTick操作相關的庫函數
5.2.3SysTick使用示例
5.3復位、系統時鐘及實時時鐘RTC
5.3.1復位
5.3.2時鐘
5.3.3復位及時鐘操作相關的庫函數
5.3.4時鐘使用示例
5.4NVIC嵌套向量中斷控制器
5.4.1中斷優先級
5.4.2中斷函數定義
5.4. 3NVIC操作相關的庫函數
5.4.4NVIC使用示例
5.5EXTI外部中斷
5.5.1GPIO外部中斷
5.5.2EXTI操作相關的庫函數
5.5.3EXTI使用示例
5.6電源控制PWR
5.6.1獨立的A/D轉換器供電和參考電壓
5.6.2電池備份區域
5.6.3電壓調節器
5.6.4電源管理器
5.6.5低功耗模式
5.6.6低功耗模式下的自動喚醒
5.6.7PWR操作相關的庫函數
5.6.8PWR使用示例
第6章STM32F103的進階設計及應用
6.1TIMx定時器
6.1.1TIM1和TIM8高級定時器
6.1.2普通定時器TIMx
6.1.3基本定時器TIM6和TIM7
6.1.4定時器相關的時鐘源
6.1.5計數器模式
6.1.6定時器操作相關的庫函數
6.1.7TIMx使用示例
6.2外設DMA技術
6.2.1DMA基本概念
6.2.2DMA1和DMA2請求詳表
6.2.3DMA操作相關的庫函數
6.2.4DMA使用示例
6.3備份域寄存器
6.3.1BKP的工作機制
6.3. 2BKP操作相關的庫函數
6.3.3BKP使用示例
6.4ADC模/數轉換器
6.4.1ADC主要特徵
6.4.2ADC功能介紹
6.4.3ADC操作相關的庫函數
6.4.4ADC使用示例
6.5DAC數/模轉換器
6.5.1DAC的主要特徵
6.5.2DAC的功能介紹
6.5.3DAC操作相關的庫函數
6.5.4DAC使用示例
6.6看門狗定時器
6.6.1看門狗應用介紹
6.6.2獨立看門狗IWDG
6.6. 3窗口看門狗WWDG
6.6.4看門第1作相關的庫函數
6.6.5看門狗使用示例
第7章STM32F103的通信接口及應用
7.1USART串行通信技術
7.1.1USART介紹
7.1.2USART主要特性
7.1.3USART功能概述
7.1.4USART操作相關的庫函數
7.1.5USART使用示例
7.2SPI通信接口應用
7.2.1SPI簡介
7.2 .2SPI和I2S主要特徵
7.2.3SPI功能介紹
7.2.4時鐘信號的相位和極性
7.2.5SPI工作模式
7.2.6SPI操作相關的庫函數
7.2.7SPI使用示例
7.3I2C通信接口應用
7.3.1I2C主要特點
7.3.2I2C功能描述
7.3.3I2C從模式
7.3.4SDA/SCL線控制
7.3.5SMBus介紹
7.3.6I2C操作相關的庫函數
7.3.7I2C使用示例
7.4CAN總線通信接口應用
7.4.1bxCAN介紹
7.4.2bxCAN主要特點
7.4.3bxCAN總體描述
7.4.4bxCAN工作模式
7.4.5測試模式
7.4.6CAN操作相關的庫函數
7.4. 7CAN使用示例
7.5SDIO接口應用
7.5.1SD卡內部及引腳示意圖
7.5.2SD卡及SPI模式引腳名稱
7.5.3Micro SD引腳示意圖
7.5.4SD模式
7.5.5SDIO操作相關的庫函數
7.5.6SDIO使用示例
第8章μC/OSⅡ在STM32上的應用
8.1 μC/OSⅡ的發展歷史
8.2μC/OSⅡ體系結構
8.2.1任務管理
8.3.2時間管理
8.2.3內存管理
8.2.4通信同步
8.3μC/OSⅡ關鍵函數
8.4μC/OSⅡ中斷編程
8.5μC/OSⅡ的學習方法
8.6μC/OSⅡ的使用實例解析
第9章STM32中嵌入式應用信號處理算法
9.1線性濾波算法
9.1.1卡爾曼濾波算法應用
9.1.2卡爾曼濾波算法機理
9.1.3簡單例子
9.2常用濾波算法
9.2.1程序判數濾波
9.2.2中值濾波
9.2.3滑動算術平均值濾波
9 .2.4滑動加權平均值濾波
9.2.5防脈衝干擾平均值濾波
9.2.6低通數字濾波
9.3PID過程控制算法
9.3.1模擬控制系統
9.3.2微機過程控制系統
9.3.3數字控制系統
9.3.4模擬PID調節器
9.3.5數字PID控制器
9.3.6PID算法的程序流程
9.3.7標準PID算法的改進
9.3.8積分項的改進
9.3.9採樣週期的選擇
9.3.10數字PID控制的參數選擇
9.3.11數字PID控制的工程實現
9.3.12偏差處理
9.4開關量濾波算法
第10章STM32開發工業級控制器應用
10.1工業級控制器的基本要求
10.2基於STM32F103設計的工業級控制器設計原理圖
10.3硬件關鍵設計驅動解析
10.3.1光耦隔離輸入檢測電路
10.3.2基於達靈頓管的信號繼電器驅動
10.3.3OLED顯示驅動接口驅動
10.4Modbus通信協議
10.4.1Modbus協議概述
10.4.2Modbus協議的數據幀
10.4.3Modbus RTU通信結構模型
10.4.4Modbus RTU協議的實現
參考文獻
 
 
 
 
第1章嵌入式系統開發技術
 
1.1嵌入式開發的基本概念
 
1.1.1嵌入式系統的基本組成
 
1.1.2嵌入式系統的特點
 
1.2嵌入式系統發展歷史與現狀
 
1.3嵌入式系統的組成
 
1.3.1硬件層
 
1.3.2中間層
 
1.3.3系統軟件層
 
1.4嵌入式系統相關概念
 
1.4.1嵌入式處理器
 
1.4.2嵌入式外圍設備
 
1.4.3嵌入式操作系統
 
1.4.4嵌入式應用軟件
 
1.5應用領域
 
第2章ARM技術概述
 
2.1ARM體系構架
 
2.1.1哈佛結構
 
2.1.2馮·諾依曼結構
 
2.2ARM的RISC結構特性
 
2.3常用ARM處理器系列
 
2.4ARM體系結構和技術特徵
 
2.5ARM的流水線
 
2.6Thumb指令集
 
2.7Thumb2指令集
 
第3章基於STM32的嵌入式系統應用開發
 
3.1STM32F103系列MCU簡介
 
3.1.1MCU基本功能
 
3.1.2系統性能分析
 
3.2低功耗版本STM32L系列
 
3.3STM32的開發工具
 
3.4STM32的固件庫文件
 
3.5STM32的啟動文件
 
3.6JTAG簡介
 
3.7JTAG調試STM32F103過程
 
3.8SWD模擬模式
 
3.9JTAG接口及模擬器接口定義
 
3.10ISP下載器及常用工具
 
 
ARM Cortex-M3嵌入式開發及應用(STM32系列)
 
 
第4章DevStm 4.0開發板硬件及設計
 
4.1電源電路
 
4.2MCU外圍電路
 
4.3復位電路
 
4.4晶振電路
 
4.5啟動模式設置電路
 
4.6EEPROM電路
 
4.7串口電路
 
4.8RS485接口電路
 
4.9SD卡接口電路
 
4.10JTAG電路
 
4.11按鍵檢測電路
 
4.12開關檢測電路
 
4.13網絡接口電路
 
4.14PWM驅動LED電路
 
4.15片載A/D轉換電路
 
4.16AD7708 16位高精度A/D轉換電路
 
4.17CAN總線接口電路
 
4.18OLED顯示接口電路
 
4.19繼電器驅動電路
 
4.20SeiSite接口
 
4.21開發板原件PCB佈局及接口指示說明
 
第5章STM32基本應用技術
 
5.1GPIO通用輸入/輸出接口
 
5.1.1GPIO埠結構
 
5.1.2GPIO口輸入/輸出模式
 
5.1.3GPIO的庫函數操作
 
5.1.4GPIO使用示例
 
5.2系統滴答定時器
 
5.2.1SysTick埠結構
 
5.2.2SysTick操作相關的庫函數
 
5.2.3SysTick使用示例
 
5.3復位、系統時鐘及實時時鐘RTC
 
5.3.1復位
 
5.3.2時鐘
 
5.3.3復位及時鐘操作相關的庫函數
 
5.3.4時鐘使用示例
 
5.4NVIC嵌套向量中斷控制器
 
5.4.1中斷優先級
 
5.4.2中斷函數定義
 
5.4.3NVIC操作相關的庫函數
 
5.4.4NVIC使用示例
 
5.5EXTI外部中斷
 
5.5.1GPIO外部中斷
 
5.5.2EXTI操作相關的庫函數
 
5.5.3EXTI使用示例
 
5.6電源控制PWR
 
5.6.1獨立的A/D轉換器供電和參考電壓
 
5.6.2電池備份區域
 
5.6.3電壓調節器
 
5.6.4電源管理器
 
5.6.5低功耗模式
 
5.6.6低功耗模式下的自動喚醒 
 
5.6.7PWR操作相關的庫函數
 
5.6.8PWR使用示例
 
第6章STM32F103的進階設計及應用
 
6.1TIMx定時器
 
6.1.1TIM1和TIM8高級定時器
 
6.1.2普通定時器TIMx
 
6.1.3基本定時器TIM6和TIM7
 
6.1.4定時器相關的時鐘源
 
6.1.5計數器模式
 
6.1.6定時器操作相關的庫函數
 
6.1.7TIMx使用示例
 
6.2外設DMA技術
 
6.2.1DMA基本概念
 
6.2.2DMA1和DMA2請求詳表
 
6.2.3DMA操作相關的庫函數
 
6.2.4DMA使用示例
 
6.3備份域寄存器
 
6.3.1BKP的工作機制
 
6.3.2BKP操作相關的庫函數
 
6.3.3BKP使用示例
 
6.4ADC模/數轉換器
 
6.4.1ADC主要特徵
 
6.4.2ADC功能介紹
 
6.4.3ADC操作相關的庫函數
 
6.4.4ADC使用示例
 
6.5DAC數/模轉換器
 
6.5.1DAC的主要特徵
 
6.5.2DAC的功能介紹
 
6.5.3DAC操作相關的庫函數
 
6.5.4DAC使用示例
 
6.6看門狗定時器
 
6.6.1看門狗應用介紹
 
6.6.2獨立看門狗IWDG
 
6.6.3窗口看門狗WWDG
 
6.6.4看門狗操作相關的庫函數
 
6.6.5看門狗使用示例
 
第7章STM32F103的通信接口及應用
 
7.1USART串行通信技術
 
7.1.1USART介紹
 
7.1.2USART主要特性
 
7.1.3USART功能概述
 
7.1.4USART操作相關的庫函數
 
7.1.5USART使用示例
 
7.2SPI通信接口應用
 
7.2.1SPI簡介
 
7.2.2SPI和I2S主要特徵
 
7.2.3SPI功能介紹
 
7.2.4時鐘信號的相位和極性
 
7.2.5SPI工作模式
 
7.2.6SPI操作相關的庫函數
 
7.2.7SPI使用示例
 
7.3I2C通信接口應用
 
7.3.1I2C主要特點
 
7.3.2I2C功能描述
 
7.3.3I2C從模式
 
7.3.4SDA/SCL線控制
 
7.3.5SMBus介紹
 
7.3.6I2C操作相關的庫函數
 
7.3.7I2C使用示例
 
7.4CAN總線通信接口應用
 
7.4.1bxCAN介紹
 
7.4.2bxCAN主要特點
 
7.4.3bxCAN總體描述
 
7.4.4bxCAN工作模式
 
7.4.5測試模式
 
7.4.6CAN操作相關的庫函數
 
7.4.7CAN使用示例
 
7.5SDIO接口應用
 
7.5.1SD卡內部及引腳示意圖
 
7.5.2SD卡及SPI模式引腳名稱
 
7.5.3Micro SD引腳示意圖
 
7.5.4SD模式
 
7.5.5SDIO操作相關的庫函數
 
7.5.6SDIO使用示例
 
第8章μC/OSⅡ在STM32上的應用
 
8.1μC/OSⅡ的發展歷史
 
8.2μC/OSⅡ體系結構
 
8.2.1任務管理
 
8.3.2時間管理
 
8.2.3內存管理
 
8.2.4通信同步
 
8.3μC/OSⅡ關鍵函數
 
8.4μC/OSⅡ中斷編程
 
8.5μC/OSⅡ的學習方法
 
8.6μC/OSⅡ的使用實例解析
 
第9章STM32中嵌入式應用信號處理算法
 
9.1線性濾波算法
 
9.1.1卡爾曼濾波算法應用
 
9.1.2卡爾曼濾波算法機理
 
9.1.3簡單例子
 
9.2常用濾波算法
 
9.2.1程序判數濾波
 
9.2.2中值濾波
 
9.2.3滑動算術平均值濾波
 
9.2.4滑動加權平均值濾波
 
9.2.5防脈沖乾擾平均值濾波
 
9.2.6低通數字濾波
 
9.3PID過程控制算法
 
9.3.1模擬控制系統
 
9.3.2微機過程控制系統
 
9.3.3數字控制系統
 
9.3.4模擬PID調節器
 
9.3.5數字PID控制器
 
9.3.6PID算法的程序流程
 
9.3.7標準PID算法的改進
 
9.3.8積分項的改進
 
9.3.9採樣周期的選擇
 
9.3.10數字PID控制的參數選擇
 
9.3.11數字PID控制的工程實現
 
9.3.12偏差處理
 
9.4開關量濾波算法
 
第10章STM32開發工業級控制器應用
 
10.1工業級控制器的基本要求
 
10.2基於STM32F103設計的工業級控制器設計原理圖
 
10.3硬件關鍵設計驅動解析
 
10.3.1光耦隔離輸入檢測電路
 
10.3.2基於達靈頓管的信號繼電器驅動
 
10.3.3OLED顯示驅動接口驅動
 
10.4Modbus通信協議
 
10.4.1Modbus協議概述
 
10.4.2Modbus協議的數據幀
 
10.4.3Modbus RTU通信結構模型
 
10.4.4Modbus RTU協議的實現
 
參考文獻


作者介紹


張新民,男,43歲,1996年畢業於西安電子科技大學信息工程專業。
主要從事嵌入式系統開發、自動化控制系統、RFID通信系統的研究工作。
個人專注並研究的領域:計算機軟件系統的系統分析及構架設計;基於ARM及DSP的嵌入式應用系統;基於μC/OS-Ⅱ/μGUI、SYS/BIOS的實時嵌入式系統應用;嵌入式系統在工業電氣自動化領域的可靠應用。
自2005年至今,先後帶領研發團隊參與並主導了多項涉及**“十五”、“十一五”及865計劃的重大專項,並取得了突出的成績。




相關書籍

The 8051 Microcontroller and Embedded Systems, 2/e (NIE-Paperback)

作者 Muhammad Ali Mazidi Janice G. Mazidi Rolin D. McKinlay

2017-01-01

嵌入式實時操作系統:RT-Thread 設計與實現

作者 邱禕 熊譜翔 朱天龍

2017-01-01

電路學, 3/e

作者 曲毅民

2017-01-01