輕松玩轉 STM32Cube
內容描述
這是一本介紹如何使用STM32Cube組件學習STM32微控制器的入門教材,是一個工程師自身學習STM32過程的經驗總結。全書緊緊圍繞《STM32F10xxx參考手冊》,結合STM32CubeF1軟件包提供的例程進行分析、講解、重新生成,全面、系統地介紹了STM32F103的各個功能項。這是一本教你STM32微控制器具體學習方法的教材。其先從HAL固件庫例程入手,而後結合STM32參考手冊、數據手冊、ARM Cortex-M3權威指南、Cortex-M3編程手冊等ST和ARM兩公司提供的原始資料進行深入、詳細的講解,最後,通過可視化圖形配置工具STM32CubeMX重新生成例程。該方法幾乎可以推廣於STM32微控制器的任何一款芯片,也是經驗豐富的工程師最快瞭解一款芯片的“獨門絕技”。
目錄大綱
基礎篇
第1章選擇開發板
1.1國外的開發板
1.2國內的開發板
1.3Nucleo—F103RB開發板
1.4思考與練習
第2章走近STM32
2.1認識STM32
2.2STM32與Cortex—M3的關係
2.3Cortex—M3與ARM
2.4思考與練習
第3章認識MDK—ARM
3.1開發工具介紹
3.2MDK—ARM的安裝與註冊
3.2.1MDK—ARM的安裝
3.2.2註冊MDK—ARM
3.3從例程入手
3.3.1了解MDK—ARM
3.3.2例程Blinky
3.4思考與練習
第4章初識STM32Cube
4.1STM32CubeMX
4.2STM32Cube軟件包
4.3STM32CubeF1實例
4.4思考與練習
入門篇
第5章跑馬燈實驗
5.1例程GPIO_IOToggle
5.2分析例程GPIO_IOToggle
5.2.1解析HAL_Init函數
5.2.2解析SystemClock_Config函數
5.2.3解析LED2_GPIO_CLK_ENABLE函數
5.2.4解析HAL_GPIO_Init函數
5.2.5為何LED燈能閃爍
5.3新建例程
5.3.1重新創建例程
5.3.2完善例程
5.4思考與練習
第6章外部中斷
6.1例程GPIO_EXTI
6.2分析例程
6.2.1分析例程GPIO_EXTI
6.2.2解析stm32f10x_it.c
6.3移植例程
6.3.1創建例程MyEXTI
6.3.2外部中斷小結
6.3.3硬件仿真
6.4思考與練習
第7章串口通信USART
7.1有關USART
7.2例程UART_Printf
7.2.1使用例程
7.2.2新建例程MyPrintf
7.2.3分析例程
7.3例程ComPolling
7.3.1例程介紹
7.3.2分析例程
7.3.3重建例程
7.4例程UART_TwoBoards_ComIT
7.4.1例程介紹
7.4.2分析例程
7.4.3重新生成例程
7.4.4完善工程
7.5思考與練習
第8章DMA控制器
8.1認識DMA控制器
8.2例程UART_HyperTerminal_DMA
8.2.1例程介紹
8.2.2分析例程
8.2.3重建例程UART_HyperTerminal_DMA
8.3思考與練習
第9章完美定時器
9.1了解定時器
9.2例程TIM_TimeBase
9.2.1例程介紹
9.2.2分析例程
9.2.3重建例程
9.3例程TIM_DMA
9.3.1例程介紹
9.3.2分析例程
9.3.3重新生成例程
9.4思考與練習
第10章模數轉換ADC
10.1模數轉換器ADC
10.2例程ADC_Sequencer
10.2.1例程介紹
10.2.2分析例程
10.2.3重建例程
10.3思考與練習
提高篇
第11章實時操作系統FreeRTOS
11.1了解操作系統
11.2例程FreeRTOS_ThreadCreation
11.2.1例程介紹
11.2.2分析例程
11.2.3重建例程
11.2.4完善例程
11.2.5擴展例程
11.3思考與練習
附錄
附錄A中容量STMF103xB模塊框圖
附錄B中容量STMF103xB時鍾樹
附錄CSTMF103xB存儲器映像
附錄D圖書資料、網站、開發板推薦
參考文獻
作者介紹
楊百軍
筆名老楊,曾就職於中航工業集團,主要研究微控制器、微處理器及嵌入式系統的移植與優化,具有豐富的傳感器與檢測技術、生物識別技術、遠程無線抄表技術及鋰電池管理系統(BMS)的開發與教學經驗。