-
1 # 工程物業電器PCB
-
2 # 人間野史
stm32有自己的硬體韌體庫。透過呼叫它的API就可以方便的控制晶片所有的硬體資源。
用起來比51其實更容易入手。
找本關於韌體庫的書籍或者看看它的說明書就可以很快的入門了。
最好是買本書吧,資訊更全面一些。書籍上有部分不太詳細的,可以根據書籍上的資訊百度一下了解更詳細的講解。
祝你好運。你會發現stm32比51效能更強大反而更好操作。
-
3 # Ezineio
不建議學stm32,官方的韌體庫和整合開發環境影響開發者的認知,不能完全瞭解它是如何執行如何編譯等等。學習arm裸板你會知道cpu的執行機制以及它程式的編譯、執行過程,對學習作業系統有很大的助力。
-
4 # 科技電小二
謝謝邀請,我是大學讀的電子資訊工程,最開始也是學習的51微控制器,用51微控制器做過幾個小實驗,畢業後,工作需要,做過半年AVR,然後又因為專案需要,就轉到stm32微控制器了,當時學習STM32是自學摸索,所以在學習STM32,我有自己的看法。
STM32的韌體庫,除了啟動檔案.S
檔案,其他的底層,其實是使用暫存器地址,對映到相關的位置,然後使用結構體定義,用指標替代,最後形成對應的暫存器,比如GPIOE->ODR,韌體庫再以此進行操作暫存器操作,封裝成函式,並將相同外設的多個函式放到相同的.c的檔案中.
總結韌體庫用法,主要是對結構體的變數進行賦值,將賦值好的結構進行初始化函式運算.呼叫各類合適的函式.並在此基礎上,完成自己需要的程式碼功能處理,
對於自學者來說,尤其是從51微控制器轉過來的自學者來說,習慣了51微控制器操作暫存器配置,學習stm32韌體庫是比較不習慣和困難的,尤其是對於C語言的指標和結構體理解不夠透徹的同學,更有難度。
所以我學stm32,最初是學習的stm32f1系列的暫存器。
前提條件是,需要stm32一塊開發板,有jlink燒錄器,搭建好能夠開發stm32的keil的開發環境。能模擬操作。
1,學習IO埠的普通輸入輸出的操作
2,學習串列埠操作,串列埠資料的 輸入輸出,以方便有利於除錯
3 學習ADC,進行模擬量採集,比如電池電量
4 學習SPI,
5 學習片上FLASH儲存
6 學習乙太網,
7 學習USB
8...
學無止境,要學的很多,我覺得學習STM32從0-1最難,找到辦法後,後續的學習就是按部就班,費時間努力去學就可以了,
以上是問題的粗略解答,難免會有遺漏
-
5 # Shaka0723
如果想要“快速”
1.得有一個開發板,推薦正點原子,硬石科技,或者野火的(基本是例程+教程+影片+開發環境+各種實用工具,正點原子還有相關社群論壇)
2.stm32型號很多,入門推薦學習stm32f103系列
3.stm32也有很多開發方式,標準韌體庫,或者HAL庫。推薦HAL庫+cubemx自動化生成,可以快速入門,降低學習難度增強學習信心
-
6 # 玩轉嵌入式
微控制器其實都是相通的,會了一種微控制器,對著資料手冊檢視一下暫存器的設定可以快速的入手其他型號的微控制器。會51微控制器,說明有微控制器的基礎,再去學習STM32微控制器會很快。由於51微控制器的埠都是準雙向口並且暫存器相對較簡單,而STM32作為32的微控制器,片上資源更多、暫存器也相對複雜。建議從以下幾個方面入手。
1選擇一塊微控制器型號較廣泛的STM32微控制器開發板學習微控制器,其實就是學習微控制器相關電路的設計、以及微控制器程式的編寫,而51微控制器和STM32微控制器的電路設計基本類似,主要取決於需求和功能,而與微控制器本身關係不大,STM32微控制器和51微控制器開發板的硬體電路基本類似、重合性較大。微控制器開發板集成了常用的外設電路,方便了初學者學習,所以入手一塊開發板是學習微控制器的當務之急。
2從基本的片上資源開始學習STM32基本的微控制器資源包括:普通GPIO的配置、定時器的應用、中斷的應用、AD取樣的配置等。這些功能51微控制器也有,既然會51微控制器,那麼學習起來很容易。在學習的過程中,要學習STM32微控制器的暫存器是如何配置的,或者學習庫函式的使用、呼叫方法。
3學習相對高階的片上資源這裡所講的高階資源是針對51微控制器而言的,如UART、IIC、SPI、SDIO、FSMC、RTC、PWM、看門狗等。這一部分的學習,主要學習這些資源的工作原理、基本硬體電路的設計、暫存器的配置方法或者是庫函式的使用方法等。根據微控制器開發板所提供的例程學習,並基於開發板提出自己的需求去實現。
4多參與專案學習微控制器的目的是為了做產品,而學習和做產品是迥然不同的,要多參與專案、多動手,在專案中積累經驗。
-
7 # 動感擔架
stm32乍一看比51麻煩得多,簡簡單單一個點燈,stm32還要配置暫存器,可是用久了你會發現,stm32韌體庫很完善,很多功能直接改改引數就能用,有不明白的就看手冊,基本上都是直接搬庫來用就行。
回覆列表
建議還使用keil軟體,有建立好的例程,然後在已有例程上進行修改練習,有經濟能力的話可以在某寶上買開發板進行詳細學習,微控制器原理都差不多,加油!