精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為什么學習STM32? 如何系統地入門學習stm32呢?

STM32嵌入式開發 ? 來源:STM32嵌入式開發 ? 作者:STM32嵌入式開發 ? 2020-11-20 10:20 ? 次閱讀

為什么學習STM32

在學習之前,不妨問一下自己這個問題,或許學起來能更加堅定,不至于輕易放棄。有目的性的去做事,更容易成功。

如何系統地入門學習stm32呢?

假如你用過51單片機,那么恭喜你,再學習STM32會容易很多。如果之前沒接觸過51,那也不用理會,直接學習STM32也行。

可以用STM32實現什么?為什么使用STM32而不是8051?

相對于STM32來說,51的頻率太低、管腳太少、沒有眾多的外設IO、功耗太大、功能太弱、內存太小。

需要使用SPI、I2C、ADCDMA,需要使用STM32某些功能,而51實現不了的時候, 那么就需要學習STM32在這些方面的使用方法。比如SPI協議、串口通信、RTOS等。

獲取STM32基礎知識

假定你已經對STM32有一定的理解。如不理解,請立即閱讀我之前發的STM32入門系列文章,以獲取最基本的知識點。

英文好的同學,請不要以為你很牛,可以只看英文文檔。畢竟你是中國人,你最熟悉的,理解最好的還是中文。看英文的速度還是比看中文慢一些,我們要的是最短的時間,而不是追求短時間內記住所有細節。

STM32處理器進入國內市場時候,ST官方(或者第三方)的推廣工作做得非常好。翻譯了大量的英文文檔,迎合了國內的很多工程師的思維。當然,如果是一篇論文,建議看英文原版還是有好處的。

針對有充足的時間、精力的同學,建議去下載需要查閱的文檔,以獲取更多信息。學習過程中,建議多關注兩個比較重要的文檔:《STM32F103xxx參考手冊》,《STM32固件庫使用手冊》。希望您能從中獲取大量的STM32基礎知識。

閱讀《STM32F103xxx參考手冊》,一定要注意,不需要全部閱讀——沒有時間的。建議選讀,但是前幾章必讀。存儲器和總線架構、電源控制、備份寄存器、復位和時鐘控制,通用和復用功能I/O,中斷和時間等等前幾章一定要花時間閱讀。后面章節,講述的是具體的功能模塊設計。如果我們用到哪個模塊,就可以去閱讀哪個模塊。比如在使用AD的時候,就需要去閱讀第10章ADC。其他不舉例。相信每個初學者都有自己的研究方向和判斷。

閱讀《STM32固件庫使用手冊》,主要是為了簡化編程。閱讀《STM32固件庫使用手冊》的時候,前面幾章也是必須閱讀的。比如第一章文檔和庫規范中的命名規則,編碼規則,這些都是需要注意的。第二章是最關鍵的,描述了固件庫的架構,如何去使用固件庫的步驟等。有了第二章的基礎,我們就可以借助固件庫寫出自己的代碼了。第四章開始之后,就可以根據大家的需要來閱讀。實際上,后續的章節,都是描述某個模塊有什么什么函數,每個函數如何使用等。建議對GPIO庫函數、中斷部分庫函數、復位和時鐘設置的庫函數要比較熟悉,因為平時經常會用到。

STM32給我們提供了一個非常好的固件函數庫,我們只要去調用即可。當然,我們也可以不去碰這些固件庫——傳說使用它會使得代碼效率變低,是有道理的。網絡上也出現了很多網友自己寫的代碼,沒有使用帶固件庫函數。如何取舍,在于您的選擇。

為了執行起來更有效率,設定一個兩周入門計劃吧。

這里所謂的“入門”,指的是能理解并掌握一些常用的STM32外設,真正想掌握一款處理器,兩周根本說明不了什么問題。只能說,你已經有所了解了。但是,這對我們初學者來說已經足夠了。

這里所謂的“兩周”,根據每個人的基礎以及時間安排不同而異。

如果您每天有充足的時間學習,那么可以規定自己盡快地能獨立地進行簡單的STM32開發。如果您每天只有業余時間來學習STM32,建議根據您的具體情況安排時間。畢竟計劃時間如果安排太緊,反而收不到良好的效果,只能進入惡性循環,這是我們要避免的。

但是建議,不管您有無充足的時間,都必須給自己做一個計劃!

學習STM32的步驟

這里整理出一個學習步驟,僅供參考。

步驟一,安裝完STM32學習的軟件,比如J-Link、Keilfor ARM(MDK)、ISP(如果需要從串口下載的話)。這些軟件安裝的詳細步驟,可以參考我們推出的相應教程進行。

步驟二,挑選部分例程的HEX,比如LED燈的例程HEX文件,下載到芯達STM32開發板中,觀察兩個LED燈的閃爍情況。這部分的操作,可以參考我們推出的相應的教程進行。

實際上,以上兩個步驟,是為了熟悉要使用的工具軟件而已。屬于找感覺的階段。其實我們還沒開始STM32的學習呢!

步驟三,準備幾個常用的文檔,比如《STM32的用戶手冊》,《STM32固件庫使用手冊》等文檔。用于平時查閱。這些文檔,在光盤中的芯片手冊目錄中均可找到。

步驟四,開始查看例程的編寫,看看例程是如何寫的,自己可否修改下例程,達到自己想要的效果呢?

步驟五,Ucos-II的移植,是否需要試一下?

至此,你已經可以自如進行獨立的開發了。

步驟六,也就是最后一步:給自己找一個項目,把它實現出來!

學習STM32時需要關注的兩個東西

熟悉調試軟件

對初學者來說,我們至少需要安裝兩個軟件:J-Link驅動軟件、MDK(就是原來的Keil)軟件。

這兩個軟件在安裝軟件的過程可以查看神舟開發板用戶手冊,這里不再重復,大家可以參考我們推出的教程《如何安裝J-Link驅動軟件》以及《如何安裝MDK(Keil)軟件》。

如何驗證自己已經熟悉調試軟件的操作了呢?很簡單,神舟STM32開發板光盤里附帶了很多HEX格式的文件,可以選擇一些HEX文件,來觀察運行結果。

熟悉調試軟件,如燒寫HEX出現問題,可簡單判別問題所在,并獨立解決。

GPIO編程

這是第一次接觸固件庫的編程,一定要硬著頭皮去了解固件庫。建議大家盡量去用固件庫。而不是避開固件庫自己寫代碼——這樣只能在學習中才會發生。實際的項目中,代碼成百上千個,如何一個一個自己寫?調用固件庫中的函數來完成,才是王者之道。GPIO本身的編程實際上很簡單:

設置GPIO口的引腳為輸入或者輸出模式。我們在進行點燈代碼的時候,一般設置為推挽輸出模式。

操作寄存器,往寄存器里置1或者清零操作——這個步驟,固件庫已經提供了專門的GPIO_SetBits函數和GPIO_ResetBits函數,我們只要去調用即可實現對IO口的置1和清零。

實現多種花樣的LED閃動,使得自己熟悉GPIO的編程過程。

STM32深入研究

對STM32有一定的了解,至少知道如何利用STM32的固件庫去寫一個代碼。這個階段之后,將要接觸到串口編程、TFT液晶屏驅動編程、定時器編程、串行外設接口SPI編程、存儲器編程、SD卡與文件系統移植、USB讀寫、UCOS移植等,有精力還可以研究其他外設。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2266

    文章

    10876

    瀏覽量

    354923
  • 串口通信
    +關注

    關注

    34

    文章

    1620

    瀏覽量

    55428
  • 函數庫
    +關注

    關注

    1

    文章

    84

    瀏覽量

    32424

原文標題:大牛是這樣學習STM32單片機的

文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    stm32單片機基于rt-thread 的 littlefs 文件系統 的使用

    作者:嵌入式學習和實踐一、開發環境介紹硬件:基于野火stm32f407開發板軟件:基于rt-threadv4.1.1版本的stm32f407-atk-explorerbsp工程。二、littlefs
    的頭像 發表于 11-06 08:04 ?324次閱讀
    <b class='flag-5'>stm32</b>單片機基于rt-thread 的 littlefs 文件<b class='flag-5'>系統</b> 的使用

    入門?畢設?競賽?項目練手?STM32/嵌入式/物聯網學習,有這幾款開發板就夠了!

    針對STM32單片機、嵌入式Linux、物聯網初學者,我們精心梳理了從“入門到項目進階”完整學習路徑,并配有詳細的教程、視頻講解、源代碼以及豐富的實戰案例資料??蓮V泛用于高校教學、學生畢設、個人
    的頭像 發表于 10-10 16:31 ?270次閱讀
    <b class='flag-5'>入門</b>?畢設?競賽?項目練手?<b class='flag-5'>STM32</b>/嵌入式/物聯網<b class='flag-5'>學習</b>,有這幾款開發板就夠了!

    初學STM32的常見誤區與解決方法

    對于初學者來說,STM32是一種功能強大但也相對復雜的微控制器平臺。許多人在學習了幾天后,常常會感到困惑和迷茫。這種情況并不罕見,尤其是在缺乏扎實基礎的情況下直接接觸這樣復雜的芯片。這篇文章旨在
    的頭像 發表于 09-05 08:00 ?423次閱讀
    初學<b class='flag-5'>STM32</b>的常見誤區與解決方法

    第一篇:V1.5-STM32f103c8t6智能小車筆記 標準庫開發 6612電機驅動新手入門項目

    這是全網最詳細、性價比最高的STM32實戰項目入門教程,通過合理的硬件設計和詳細的視頻筆記介紹,硬件使用STM32F103主控資料多方便學習,通過3萬字筆記、12多個小時視頻、20多章
    的頭像 發表于 08-12 18:25 ?1504次閱讀
    第一篇:V1.5-<b class='flag-5'>STM32</b>f103c8t6智能小車筆記 標準庫開發 6612電機驅動新手<b class='flag-5'>入門</b>項目

    課程上線 | STM32單片機入門教程(1)基于HAL庫的多核心開發(F1/F4/G0/U5)

    ?好消息!華清遠見STM32入門視頻課程《基于HAL庫的STM32多核心開發》正式上線,已更新90講,持續更新中,8月份將全部上線。課程優勢真人出鏡,手把手教學一板玩轉STM32多型號
    的頭像 發表于 08-08 16:42 ?316次閱讀
    課程上線 | <b class='flag-5'>STM32</b>單片機<b class='flag-5'>入門</b>教程(1)基于HAL庫的多核心開發(F1/F4/G0/U5)

    從菜鳥到大牛!嵌入式完整學習路線:STM32單片機-RTOS-Linux

    ?嵌入式系統是許多現代電子設備和智能系統的核心,掌握嵌入式系統,意味著能夠設計和開發更加智能化的產品。本文為所有想進入嵌入式領域的初學者提供一個完整系統學習的路線圖,按照“
    的頭像 發表于 07-23 16:11 ?3679次閱讀
    從菜鳥到大牛!嵌入式完整<b class='flag-5'>學習</b>路線:<b class='flag-5'>STM32</b>單片機-RTOS-Linux

    手把手教你!STM32單片機入門指南:從初級到中級工程師的學習路線

    首選的跳板。為了幫助初學者們系統學習STM32,我們提供了一條從初級到中級的學習路線,涵蓋了從基礎知識到進階應用的全方位技能提升,最終助力初學者達到嵌入式
    的頭像 發表于 07-22 14:38 ?3025次閱讀
    手把手教你!<b class='flag-5'>STM32</b>單片機<b class='flag-5'>入門</b>指南:從初級到中級工程師的<b class='flag-5'>學習</b>路線

    新手必看!STM32單片機應該怎么學?從零基礎入門到項目實戰進階學習路線

    STM32是意法半導體(ST)推出的一系列高性能、低功耗的微控制器與微處理器,涵蓋基于ARMCortex-M和部分集成Cortex-A系列內核(如STM32MP1系列)的32位系統。STM32
    的頭像 發表于 07-16 10:47 ?1748次閱讀
    新手必看!<b class='flag-5'>STM32</b>單片機應該怎么學?從零基礎<b class='flag-5'>入門</b>到項目實戰進階<b class='flag-5'>學習</b>路線

    零死角玩轉STM32-F1系列pdf

    一天入門STM32,僅一天的時間,是否有真的這么快。不同的人對入門的理解不一樣,這篇一天入門STM32 的教程,我們先對
    發表于 06-18 09:24 ?5次下載

    stm32單片機學習路線

    第一步 編程及硬件基礎知識 1.掌握C語言基礎 作為STM32的主要編程語言,C語言的基礎知識是必不可少的。建議通過書籍、在線課程或者教學視頻系統學習C語言的基礎知識,包括語法、數據類型
    發表于 05-10 15:34

    STM32高手進階之路與實用學習步驟

    CPU是相通的,相信大部分的同學都學習過單片機,是有一定基礎的。如果你碰到問題,去嘗試了,自己把問題解決了,你會很有成就感!
    的頭像 發表于 03-13 09:38 ?566次閱讀

    STM32電機控制SDK v5.0入門

    電子發燒友網站提供《STM32電機控制SDK v5.0入門.pdf》資料免費下載
    發表于 03-11 09:25 ?10次下載

    請問STM32的bootloader怎么制作?

    我對STM32也算是比較熟悉了,但是, 沒有弄過 STM32的bootloader。也不知道怎么弄的。像,Linux,藍牙等 都有 類型的demo 供你學習和開發。 請問,
    發表于 03-07 07:50

    盤點那些硬件+項目學習套件:STM32U5單片機開發板及入門常見問題解答

    學習。STM32U5開發板采用 手把手教學 ,配套了全套的開發教程、視頻課程及豐富的項目案例,可廣泛應用于STM32入門學習、項目練手、高校
    發表于 02-19 16:59

    盤點那些硬件+項目學習套件:STM32MP157 Linux開發板及入門常見問題解答

    STM32MP157開發板配套全體系學習資料。 ? 嵌入式應用層學習路線:Linux基礎與應用開發、QT界面開發、Qt綜合項目實戰,基礎入門+項目實戰; ? 嵌入式底層
    發表于 02-01 14:25