《例說STM32》

《例說STM32》

《例說STM32》,作者劉軍,由北京航空航天大學出版社於2011年出版。

基本信息

圖書簡介

本書由淺入深,帶領大家進入stm32的世界。全書分3篇,第一篇為硬體篇,介紹本書的實驗平台;第二篇為軟體篇,介紹STM32開發軟體的使用以及一些下載調試的技巧,並詳細介紹了幾個常用的系統檔案(程式);第三篇為實踐篇,通過28個實例(絕大部分是直接操作暫存器完成的)帶領大家一步步深入STM32的學習。
本書附帶的光碟中包含本書實驗平台的詳細原理圖以及所有實例的完整代碼,這些代碼都有詳細的注釋,讀者只需要複製到自己的硬碟,編譯一次即可下載到實驗平台運行。
本書的讀者對象主要是STM32的初學者和提高者,對想了解和使用STM32的讀者具有一定的參考意義,另外對於單片機學習者,本書的大量實例也極具參考價值。

圖書目錄

第一篇硬體篇

第1章實驗平台簡介2
1.1ALIENTEKMiniSTM32開發板簡介2
1.2主流入門級STM32開發平台對比9
第2章實驗平台硬體資源詳解11
2.1開發板原理圖詳解11
2.2開發板使用注意事項18

第二篇軟體篇

第3章RVMDK軟體入門21
3.1RVMDK3.80A簡介21
3.2新建RVMDK工程22
3.3RVMDK使用技巧30
3.3.1文本美化30
3.3.2代碼編輯技巧33
3.3.3其他小技巧37
3.3.4調試技巧38
第4章下載與調試41
4.1STM32軟體仿真41
4.2STM32程式下載47
4.3STM32硬體調試52
第5章SYSTEM資料夾介紹56
5.1delay資料夾代碼介紹56
5.1.1delay_init函式57
5.1.2delay_μs函式58
5.1.3delay_ms函式58
5.2sys資料夾代碼介紹59
5.2.1I/O口的位操作實現59
5.2.2Stm32_Clock_Init函式61
5.2.3Sys_Soft_Reset函式63
5.2.4Sys_SleepDeep函式64
5.2.5JTAG_Set函式65
5.2.6中斷管理函式66
5.3usart資料夾介紹73
5.3.1USART1_IRQHandler函式73
5.3.2uart_init函式75

第三篇實踐篇

第6章跑馬燈實驗79
第7章按鍵輸入實驗88
第8章串口實驗97
第9章外部中斷實驗106
第10章獨立看門狗實驗111
第11章視窗看門狗實驗116
第12章定時器中斷實驗122
第13章PWM輸出實驗129
第14章OLED顯示實驗134
第15章TFTLCD顯示實驗150
第16章RTC實時時鐘實驗168
第17章待機喚醒實驗183
第18章ADC實驗191
第19章內部溫度感測器實驗202
第20章DMA實驗207
第21章I2C實驗216
第22章SPI實驗228
第23章觸控螢幕實驗239
第24章無線通信實驗250
第25章SD卡實驗262
第26章紅外遙控實驗274
第27章DS18B20實驗283
第28章PS/2滑鼠實驗292
第29章漢字顯示實驗308
第30章圖片顯示實驗327
第31章觸控USB滑鼠實驗337
第32章製作MP3播放器實驗346
第33章綜合測試實驗361
參考文獻372

圖書前言

CortexM3作為目前最好的ARMV7構架,不僅支持Thumb2指令集,而且擁有很多新特性。較之ARM7TDMI,CortexM3擁有更強勁的性能、更高的代碼密度、位帶操作、可嵌套中斷、低成本和低功耗等眾多優勢。
在國內CortexM3市場上,ST(意法半導體)公司的STM32無疑是最大贏家,作為CortexM3核心最先嘗蟹的兩個公司(另一個是Luminary(流明))之一,ST無論是在市場占有率,還是在技術支持方面,都是遠超其他對手。在CortexM3晶片的選擇上,STM32無疑是大家的首選。
STM32的優異性體現在如下幾個方面:
超低的價格。以8位機的價格得到32位機,是STM32最大的優勢。
超多的外設。STM32擁有包括:FSMC、TIMER、SPI、I2C、USB、CAN、I2S、SDIO、ADC、DAC、RTC和DMA等眾多外設及功能,具有極高的集成度。
豐富的型號。STM32擁有F101、F102、F103、F105、F107這5個系列數十種型號,具有QFN、LQFP、BGA等封裝可供選擇。
優異的實時性能。84箇中斷,16級可程式優先權,並且所有的引腳都可以作為中斷輸入。
傑出的功耗控制。STM32各個外設都有自己的獨立時鐘開關,可以通過關閉相應外設的時鐘來降低功耗。
極低的開發成本。STM32的開發不需要昂貴的仿真器,只需要一個串口即可下載代碼,並且支持SWD和JTAG兩種調試口。SWD調試可以為您的設計帶來很多方便,只需要2個I/O口即可實現仿真調試。
學習STM32有兩份不錯的中文資料:《STM32參考手冊》中文版V10.0及《CortexM3權威指南》中文版(宋岩譯)。前者是ST官方針對STM32的一份通用參考資料,內容翔實,但是沒有實例,也沒有對CortexM3構架進行太多介紹(估計ST是把讀者都當成一個CortexM3熟悉者來寫的),讀者只能根據自己對書本的理解來編寫相關代碼。後者是專門介紹CortexM3構架的書,有簡短的實例,但沒有專門針對STM32的介紹。所以,在學習STM32的時候,必須結合這份資料來看。
STM32擁有非常多的暫存器,其中斷管理更是複雜,對於新手來說,看ST提供的庫函式雖然可以很好地使用,但是沒法深入理解,一旦出錯查問題就非常痛苦了。另外,庫函式在效率和代碼量上面都是不如直接操作暫存器的。
本書將結合《STM32參考手冊》和《CortexM3權威指南》兩者的優點,並從暫存器級別出發,深入淺出,向讀者展示STM32的各種功能。全書配有28個實例,每個實例均配有軟硬體設計,在介紹完軟硬體之後,馬上附上實例代碼,並帶有詳細注釋及說明,可使讀者快速理解代碼。
這些實例涵蓋了STM32的絕大部分內部資源,所有實例在MDK3.80A編譯器下編譯通過,讀者只須複製源碼,編譯即可驗證實驗。
不管您是一個STM32初學者,還是一個老手,本書都非常適合。尤其對於初學者,本書將手把手地教您如何使用MDK,包括新建工程、編譯、仿真、下載調試等一系列步驟,讓您輕鬆上手。本書不適用於想通過庫函式學習STM32的讀者,因為本書的絕大部分內容都是直接操作STM32暫存器的,如果您想通過庫函式學習STM32,建議直接看MDK安裝目錄下的例程。
本書的實驗平台是ALIENTEKMiniSTM32開發板,有這款開發板的朋友則直接可以拿書上的例程在開發板上運行、驗證。而沒有這款開發板的,可以上淘寶網購買。當然如果已有了一款自己的開發板,而又不想再買,也是可以的,只要您的板子上有ALIENTEKMiniSTM32開發板上的相同資源(需要實驗用到的),代碼一般都是可以通用的,您需要做的就只是把底層的驅動函式(一般是I/O操作)稍做修改,使之適合您的開發板即可。
俗話說:人無完人。書也不例外,本書在編寫過程中雖然得到了不少網友的指正,但難免會有出錯的地方,如果大家發現書中有什麼錯誤的地方,請與筆者聯繫,信箱:[email protected],也可以去www.openedv.com論壇給我留言。在此先向各位朋友表示真心的感謝。
最後,衷心感謝北京航空航天大學出版社,沒有出版社的支持,本書也很難順利出版;感謝師兄及廣大網友對本書的建議與支持;感謝家人對我的支持與理解,尤其要感謝我愛人。

相關詞條

相關搜尋

熱門詞條

聯絡我們