【正点原子STM32连载】第一章 本书学习方法 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
1)實驗平臺:正點原子MiniPro H750開發(fā)板
2)平臺購買地址:https://detail.tmall.com/item.htm?id=677017430560
3)全套實驗源碼+手冊+視頻下載地址:http://www.openedv.com/thread-336836-1-1.html
4)對正點原子STM32感興趣的同學(xué)可以加群討論:879133275
第一章 本書學(xué)習(xí)方法
為了讓大家更好的學(xué)習(xí)和使用本書,本章將給大家介紹一下本書的學(xué)習(xí)方法,包括:本書的學(xué)習(xí)順序、編寫規(guī)范、代碼規(guī)范、資料查找、學(xué)習(xí)建議等內(nèi)容。
本章將分為如下幾個小節(jié):
1.1 本書學(xué)習(xí)順序
1.2 本書參考資料
1.3 本書編寫規(guī)范
1.4 本書代碼規(guī)范
1.5 例程資源說明
1.6 學(xué)習(xí)資料查找
1.7 給初學(xué)者的建議
1.1 本書學(xué)習(xí)順序
為了讓大家更好的學(xué)習(xí)和使用本書,我們做了以下幾點考慮:
1,堅持循序漸進的思路編寫,從基礎(chǔ)到入門,從簡單到復(fù)雜。
2,將知識進行分類介紹,簡化學(xué)習(xí)過程,包括:基礎(chǔ)篇、入門篇、提高篇。
3,將硬件介紹獨立成一個文檔(《MiniPro STM32H750硬件參考手冊》),本書著重介紹軟件知識。
因此,大家在學(xué)習(xí)本書的時候,我們建議:先通讀一遍《MiniPro STM32H750硬件參考手冊》,對開發(fā)板的硬件資源有個大概了解,然后從基礎(chǔ)篇開始,再到入門篇,最后學(xué)習(xí)提高篇,循序漸進,逐一攻克。
對初學(xué)者來說,尤其要按照以上順序?qū)W習(xí),不要跳躍式學(xué)習(xí),因為我們書本的知識都是一環(huán)扣一環(huán)的,如果前面的知識沒學(xué)好,后面的知識學(xué)起來就會很困難。
對于已經(jīng)學(xué)過STM32的朋友來說,就可以跳躍式學(xué)習(xí)了,當(dāng)然如有不懂,也得翻閱前面的知識點進行鞏固。
1.2 本書參考資料
本書的主要參考資料有以下三份文檔:
《STM32H7xx參考手冊_V7(英文版).pdf》
《STM32H7xx參考手冊_V3(中文版).pdf》
《STM32H7編程手冊.pdf》
《STM32H7xx參考手冊_V7(英文版).pdf》是英文版的,該文檔詳細介紹了STM32H7的各種寄存器定義以及外設(shè)的使用說明等,是學(xué)習(xí)STM32H750的必備資料。
《STM32H7xx參考手冊_V3(中文版)》則是針對H7x3等系列芯片的中文版本參考手冊,由于和H750有很多內(nèi)容相似/相同,所以《STM32H7xx參考手冊_V3(中文版).pdf》在這里也有一定的參考作用,對那些英文比較差的朋友,是一個很好的輔助文檔資料(可以對照兩本手冊學(xué)習(xí))。
而《STM32H7編程手冊.pdf》則是對《STM32H7xx參考手冊_V7(英文版).pdf》的補充,很多關(guān)于Cortex M7內(nèi)核的介紹(寄存器等),都可以在這個文檔找到答案,該文檔同樣是ST的官方資料,專門針對ST的Cortex M7產(chǎn)品。結(jié)合這三本參考資料,就可以比較好的學(xué)習(xí)STM32H7了。
這幾份參考文檔都在我們提供的光盤資料里面可以找到,路徑:A盤8,STM32參考資料 文件夾下可以找到。
1.3 本書編寫規(guī)范
本書通過數(shù)十個例程,給大家詳細介紹STM32的所有功能和外設(shè),按難易程度以及知識結(jié)構(gòu),我們將本書分為三個篇章:基礎(chǔ)篇、入門篇和提高篇。
基礎(chǔ)篇,共12章,主要是一些基礎(chǔ)知識介紹,包括開發(fā)環(huán)境搭建、新建工程、HAL庫介紹、時鐘樹介紹、SYSTEM文件夾介紹等,這些章節(jié)在結(jié)構(gòu)上沒有共性,但是互相有關(guān)聯(lián),有一個集成的關(guān)系在里面,即:必須先學(xué)了前面的知識,才好學(xué)習(xí)后面的知識點。
入門篇和提高篇,共51章,詳細介紹了STM32H750每一個外設(shè)的使用方法及驅(qū)動代碼,并且還介紹了一些非常使用的程序代碼(純軟件例程),如:內(nèi)存管理、文件系統(tǒng)讀寫、拼音輸入法、手寫識別、圖片解碼、IAP等。這部分內(nèi)容占了本書的絕大部分篇幅,而且這些章節(jié)在結(jié)構(gòu)上都比較有共性,一般分為4個部分,如下:
1,外設(shè)功能介紹
2,硬件設(shè)計
3,程序設(shè)計
4,下載驗證
外設(shè)功能介紹,簡單介紹具體章節(jié)所要用到的外設(shè)功能、框圖和寄存器等,讓大家對所用外設(shè)的功能有一個基本了解,方便后面的程序設(shè)計。
硬件設(shè)計,包括具體章節(jié)的實驗具體功能說明、所用到的硬件資源及原理圖連接方式,從而知道要做什么? 需要用到哪些IO口? 是怎么接線的? 方便程序設(shè)計的時候編寫驅(qū)動代碼。
程序設(shè)計,一般包括:驅(qū)動介紹、程序流程圖、關(guān)鍵代碼分析、main函數(shù)講解等三部分。一點點介紹程序代碼是怎么來的,注意事項等,從而學(xué)會整個代碼。
下載驗證,屬于實踐環(huán)節(jié),在完成程序設(shè)計后,教大家如何下載并驗證我們的例程是否正確? 完成一個閉環(huán)過程。
1.4 本書代碼規(guī)范
為了方便大家編寫高質(zhì)量代碼,我們對本書的代碼風(fēng)格進行了統(tǒng)一,詳細的代碼規(guī)范說明文檔,見光盤:A盤1,入門資料《嵌入式單片機 C代碼規(guī)范與風(fēng)格.pdf》,初學(xué)者務(wù)必好好學(xué)習(xí)一下這個文檔。
總結(jié)幾個規(guī)范的關(guān)鍵點:
1,所有函數(shù)/變量名字非特殊情況,一般使用小寫字母;
2,注釋風(fēng)格使用doxgen風(fēng)格,除屏蔽外,一律使用 /* */ 方式進行注釋;
3,TAB鍵統(tǒng)一使用4個空格對齊,不使用默認的方式進行對齊;
4,每兩個函數(shù)之間,一般有且只有一個空行;
5,相對獨立的程序塊之間,使用一個空行隔開;
6,全局變量命名一般用g_開頭,全局指針命名一般用 p_開頭;
7,if、for、while、do、case、switch、default等語句單獨占一行,一般無論有多少行執(zhí)行語句,都要用加括號:{}。
1.5 例程資源說明
MiniPro STM32H750開發(fā)板提供的標(biāo)準例程多達68個,提供:寄存器和HAL庫兩個版本的代碼(本手冊以HAL庫版本例程做為介紹,我們不再提供寄存器版本文檔教程,寄存器版本例程僅供大家參考學(xué)習(xí))。我們提供的這些例程,基本都是原創(chuàng),擁有非常詳細的注釋,代碼風(fēng)格統(tǒng)一、循序漸進,非常適合初學(xué)者入門。
MiniPro STM32H750開發(fā)板的例程列表如表1.5.1所示:
MiniPro STM32H750 開發(fā)指南_V1.1
表1.5.1 MiniPro STM32H750開發(fā)板例程表
從上表可以看出,正點原子MiniPro STM32H750開發(fā)板的例程基本上涵蓋了STM32H750VBT6芯片的所有內(nèi)部資源,并且外擴展了很多有價值的例程,比如:FLASH模擬EEPROM實驗、USMART調(diào)試實驗、UCOSII實驗、內(nèi)存管理實驗、IAP實驗、拼音輸入法實驗、手寫識別實驗、綜合實驗等。
而且從上表可以看出,例程安排是循序漸進的,首先從最基礎(chǔ)的跑馬燈開始,然后一步步深入,從簡單到復(fù)雜,有利于大家的學(xué)習(xí)和掌握。所以,正點原子MiniPRO STM32H750開發(fā)板是非常適合初學(xué)者的。當(dāng)然,對于想深入了解STM32H750內(nèi)部資源的朋友,正點原子MiniPRO STM32H750開發(fā)板也絕對是一個不錯的選擇。
1.6 學(xué)習(xí)資料查找
學(xué)習(xí)資料包括三個方面:
1,ST官方的學(xué)習(xí)資料
ST官方資料有兩個網(wǎng)址:www.stmcu.org.cn和 www.st.com。
www.stmcu.org.cn是ST中文社區(qū),里面的資料全部由ST中國區(qū)的人負責(zé)更新和整理,包含了所有ST公司的MCU資料,比如:STM32H7最新的芯片文檔(參考手冊、數(shù)據(jù)手冊、勘誤手冊、編程手冊等)、軟件資源(固件庫、配置工具、PC軟件等)、硬件資源(各種官方評估板)等,如圖1.6.1所示:
圖1.6.1 STM32H7相關(guān)資料(stmcu.org)
www.st.com是ST官網(wǎng),ST最新最全的資料,一般都是放在該網(wǎng)站,ST中文社區(qū)的資料,一般都是從ST官網(wǎng)搬過來的,所以如果你想找最新的STM32官方資料,應(yīng)該在ST官網(wǎng)找。對于初學(xué)者,一般從ST中文社區(qū)獲取ST官方資料就可以了。ST官網(wǎng)的STM32H750資料頁面如圖1.6.2所示(注意:默認是英文語言,需要在網(wǎng)頁右上角設(shè)置成中文):
圖1.6.2 STM32H750官網(wǎng)資料(st.com)
1,STM32H750的硬件相關(guān)資源,在:產(chǎn)品微控制器STM32 ARM Cortex 32位微控制器STM32高性能單片機STM32H7系列STM32H750超值型工具和軟件 路徑下面可以找到。
2,STM32H750的軟件相關(guān)資源,在:工具與軟件嵌入式軟件微控制器軟件STM32微控制器軟件 路徑下面可以找到。
2,正點原子的學(xué)習(xí)資料
正點原子給大家提供的學(xué)習(xí)資料,都放在正點原子文檔中心,大家可以在文檔中心下載所有正點原子最新最全的學(xué)習(xí)資料,文檔中心地址:www.openedv.com/docs/index.html ,如圖1.6.3所示:
圖1.6.3 正點原子文檔中心
在文檔中心下面,我們可以找到正點原子所有開發(fā)板、模塊、產(chǎn)品等的詳細資料下載地址。
3,正點原子論壇
正點原子論壇,即開源電子網(wǎng):http://www.openedv.com/forum.php,該論壇從2010年成立至今,已有10年時間,數(shù)十萬注冊用戶,STM32相關(guān)帖子數(shù)量有20多萬,每天數(shù)百人互動,是一個非常好的STM32學(xué)習(xí)交流平臺。
在學(xué)習(xí)過程中,我們難免會遇到一些問題,有任何問題,大家都可以先去開源電子網(wǎng)搜索一下,基本上你能遇到的問題,我們論壇都有人問過了,所以可以很方便的找到一些參考解決方法。如果實在找不到,你也可以在論壇提問,每天原子哥都會在上面給大家做解答。
不過,大家在論壇發(fā)帖的時候,建議先閱讀一下提問的智慧,縷清思路,不要亂問一通,提高提問質(zhì)量,提問的智慧閱讀地址:http://www.openedv.com/thread-7245-1-1.html。
1.7 給初學(xué)者的建議
對于學(xué)習(xí)STM32,這里我給大家提以下三點建議:
1,準備一款合適的開發(fā)板(強烈建議配仿真器)
任何實驗,我們都需要驗證,最好的驗證方式就是在開發(fā)板上面實際跑起來,然后通過仿真器仿真調(diào)試,查看具體的執(zhí)行過程。仿真調(diào)試可以加深印象,還可以方便的查找bug,所以學(xué)習(xí)STM32必備:一個開發(fā)板 + 一個仿真器。
另外,開發(fā)板在精不在多,學(xué)好一款,基本上就夠用了。
2,兩本參考資料,即《STM32中文參考手冊》和《Cortex-M3權(quán)威指南》。
這兩個手冊在本章1.2節(jié)有過介紹,對于我們學(xué)習(xí)STM32和了解Cortex M3內(nèi)核非常有幫助,是學(xué)習(xí)STM32的必備資料,因此初學(xué)者尤其要多看這兩個手冊。
這里建議大家,要多了解一些底層的東西(可結(jié)合這兩個手冊,看看寄存器版本的例程),不要只會使用庫,否則,一旦遇到問題,或者換個芯片,就不知道怎么辦了。
3,戒驕戒躁,勤思敏行。
學(xué)習(xí)STM32千萬不能浮躁,更加不能驕傲,初學(xué)者學(xué)習(xí)STM32會遇到很多問題和難點,這個時候千萬不能浮躁,不要帶情緒,一定要靜下心來,縷清思路,逐一攻克。
我就曾經(jīng)遇到一個問題半個月都沒解決的情況,但是這半個月我嘗試并掌握了很多解決問題的方法,最終解決問題的時候,其實帶來的收獲遠遠大于問題本身。所以不要遇到問題就認慫,就想問別人,問老師,先嘗試自己解決一下,比如花個十天半個月去解決一個問題,我相信你也會有很多收獲。
學(xué)習(xí)我們教程的時候,要多思考,多想想為什么要這么寫?有沒有其他更好的辦法?然后,自己去驗證,去實踐。這里非常重要的一點是要多實踐,一定要自己動手寫代碼,然后再下載到開發(fā)板驗證,不要只是看看視頻,看看例程就算完了,要能做到舉一反三,如果自己不實踐,不動手寫代碼,是很難真正學(xué)會的。
最后,C語言是學(xué)習(xí)STM32的必備知識,所以如果C語言不過關(guān)的朋友,得先好好學(xué)習(xí)一下C語言基礎(chǔ),否則學(xué)起來會比較吃力。
總結(jié)
以上是生活随笔為你收集整理的【正点原子STM32连载】第一章 本书学习方法 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NET Core 指令启动
- 下一篇: 重启模块与及关开邮件存储设置功能页面-P