本書基于STM32F103基本型微控制器,由淺入深地介紹了STM32嵌入式系統(tǒng)設計的基本流程與應用要點,系統(tǒng)講解了每一個外設的功能及其使用方法,使讀者能夠輕松掌握STM32嵌入式系統(tǒng)設計與實踐中的各種硬件和軟件設計知識。全書分為四部分:第一部分為入門篇,講解了STM32微控制器整體架構和軟件設計方法;第二部分為基礎篇,針對系統(tǒng)設計基礎知識和基本外設的應用進行了講解;第三部分為提高篇,對數(shù)據(jù)處理、總線接口和通信技術進行了講解;第四部分為綜合篇,通過4個綜合設計實例來鞏固前9章所介紹的知識。
鐘佩思博士,山東科技大學教授、博士生導師,先進制造技術研究中心主任、機械設計制造與自動化研究所所長,主要研究方向為現(xiàn)代設計方法與CAD/CAM技術、數(shù)控技術與工業(yè)機器人、并行工程與虛擬樣機技術、智能設計制造與機電一體化技術等。中國機械工程學會高級會員,國際生產(chǎn)力促進協(xié)會會員,山東省高等學校中青年學術骨干,山東省有突出貢獻的中青年專家,山東科技大學機械制造及其自動化、機械設計及理論、虛擬設計藝術科技等學科帶頭人,先后完成和承擔包括國家科技支撐計劃、國家863計劃、國家自然科學基金等國家級科研項目和省部級科研項目等各類縱向項目30多項;獲得授權發(fā)明專利1項、實用新型專利30多項、計算機軟件著作權10多項,在國內(nèi)外刊物及會議發(fā)表學術論140多篇,被SCI/EI/ISTP收錄60多篇次,完成科研成果鑒定和驗收20多項、獲得省部級科技獎勵9項,研究成果達到國際先進水平。發(fā)表教學改革論文10多篇,獲得省部級教學獎勵5項;指導的研究生獲得省級優(yōu)秀學位論文1篇、省級研究生科研獎勵9項。
入 門 篇
第1章 嵌入式系統(tǒng)與STM32微控制器
1.1 嵌入式系統(tǒng)
1.1.1 嵌入式系統(tǒng)概述
1.1.2 嵌入式系統(tǒng)的發(fā)展與應用領域
1.2 STM32微控制器
1.2.1 STM32微控制器的誕生
1.2.2 STM32微控制器的分類、命名規(guī)則與選型
1.3 STM32寄存器簡介
1.3.1 STM32芯片的結構
1.3.2 從存儲區(qū)映射到寄存器
1.3.3 寄存器的封裝與讀/寫操作
第2章 STM32標準庫函數(shù)
2.1 庫函數(shù)開發(fā)概述
2.1.1 STM32標準函數(shù)庫概述
2.1.2 庫函數(shù)開發(fā)的優(yōu)勢
2.2 庫文件及其層次關系
2.2.1 CMSIS標準軟件架構
2.2.2 庫目錄和文件簡介
2.2.3 如何使用官方資料
第3章 STM32開發(fā)工具概述
3.1 多種多樣的開發(fā)工具
3.1.1 開發(fā)工具的類別與選擇
3.1.2 Keil MDK的性能優(yōu)勢
3.2 Keil MDK的安裝與使用
3.2.1 如何安裝Keil MDK
3.2.2 創(chuàng)建庫函數(shù)工程模板
3.2.3 Keil MDK軟件仿真
3.3 STM32的程序下載
3.3.1 利用串口下載程序
3.3.2 JTAG/SWD程序下載與調(diào)試
基 礎 篇
第4章 嵌入式系統(tǒng)設計基礎
4.1 C語言的基本應用
4.1.1 面向STM32的基本操作
4.1.2 結構體的使用解析
4.2 STM32基礎知識儲備
4.2.1 端口復用和重映射功能
4.2.2 嵌套向量中斷控制器簡介
4.2.3 時鐘系統(tǒng)與RCC控制器
第5章 GPIO端口與外部中斷
5.1 STM32的GPIO端口
5.1.1 GPIO端口功能與結構
5.1.2 GPIO工作模式詳解
5.1.3 GPIO庫函數(shù)及其應用
5.2 外部中斷/事件控制器
5.2.1 EXTI的結構與功能
5.2.2 EXTI相關寄存器概述
5.2.3 EXTI相關庫函數(shù)簡介
5.3 GPIO與外部中斷控制實踐
5.3.1 通用文件的編寫與使用
5.3.2 GPIO端口輸出點亮LED
5.3.3 GPIO端口輸入檢測按鍵
5.3.4 EXTI外部中斷控制
第6章 STM32定時器/計數(shù)器
6.1 STM32定時器/計數(shù)器概述
6.1.1 TIMx定時器內(nèi)容解析
6.1.2 RTC定時器的功能與操作
6.1.3 SysTick時鐘功能介紹
6.1.4 看門狗定時器基本操作
6.2 定時器庫函數(shù)及其應用
6.2.1 TIMx定時器相關函數(shù)
6.2.2 RTC與BKP相關函數(shù)
6.2.3 SysTick定時器相關函數(shù)
6.2.4 看門狗定時器相關函數(shù)
6.3 定時器系統(tǒng)設計與實踐
6.3.1 SysTick定時器實現(xiàn)精準延時
6.3.2 看門狗定時器應用
6.3.3 定時器中斷應用
6.3.4 PWM信號的產(chǎn)生
第7章 USART串口通信技術
7.1 通信的基本概念詳解
7.1.1 通信的分類與概念
7.1.2 串口通信協(xié)議解析
7.2 USART串口通信概述
7.2.1 USART的主要功能與硬件結構
7.2.2 USART寄存器及其使用
7.2.3 USART相關庫函數(shù)簡介
7.3 串口通信編程應用實例
7.3.1 串口通信的應用基礎
7.3.2 通過USART1接發(fā)通信
提 高 篇
第8章 數(shù)據(jù)的轉換與讀/寫訪問
8.1 FSMC模塊應用解析
8.1.1 FSMC的主要功能、結構與總線配置
8.1.2 FSMC相關庫函數(shù)概述
8.1.3 FSMC驅動TFTLCD
8.2 ADC的編程應用
8.2.1 ADC的主要操作與特征
8.2.2 ADC相關庫函數(shù)概述
8.2.3 ADC的編程應用實例
8.3 DAC的編程應用
8.3.1 DAC的主要操作與特征
8.3.2 DAC相關庫函數(shù)概述
8.3.3 DAC的轉換編程應用實例
8.4 DMA數(shù)據(jù)訪問與傳輸
8.4.1 DMA結構與數(shù)據(jù)配置
8.4.2 DMA控制器相關庫函數(shù)
8.4.3 DMA數(shù)據(jù)傳輸實例
8.5 嵌入式FLASH的讀/寫操作
8.5.1 STM32的FLASH存儲器
8.5.2 FLASH相關庫函數(shù)簡介
8.5.3 嵌入式FLASH的讀/寫操作實例
第9章 總線接口與通信技術
9.1 I2C總線的設計與使用
9.1.1 I2C的功能結構與特征
9.1.2 I2C相關庫函數(shù)簡介
9.1.3 利用I2C實現(xiàn)讀/寫操作
9.2 SPI串行外設接口技術
9.2.1 SPI與I2S的結構與功能
9.2.2 SPI/I2S相關庫函數(shù)簡介
9.2.3 SPI讀/寫串行FLASH
9.3 CAN總線的編程與使用
9.3.1 CAN總線的結構與功能
9.3.2 CAN相關庫函數(shù)解析
9.3.3 CAN總線通信編程實現(xiàn)
9.4 SDIO接口編程應用解析
9.4.1 SDIO接口與Micro SD卡
9.4.2 SDIO相關庫函數(shù)概述
9.4.3 Micro SD卡操作實踐
綜 合 篇
第10章 嵌入式系統(tǒng)綜合設計實例
10.1 USB讀卡器設計實例
10.1.1 USB標準及結構簡介
10.1.2 USB讀卡器硬件設計
10.1.3 USB讀卡器編程實現(xiàn)
10.2 攝像頭應用設計實例
10.2.1 攝像頭硬件簡介
10.2.2 攝像頭應用硬件設計
10.2.3 攝像頭應用編程實現(xiàn)
10.3 音樂播放器設計實例
10.3.1 音頻解碼芯片簡介
10.3.2 音樂播放器硬件設計
10.3.3 音樂播放器編程實現(xiàn)
10.4 無線通信設計實例
10.4.1 無線通信模塊簡介
10.4.2 無線通信硬件設計
10.4.3 無線通信編程實現(xiàn)
附錄A STM32F103ZET6芯片的引腳功能定義
參考文獻