• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 【E問E答】如何系統的學習STM32?

    【E問E答】如何系統的學習STM32?

    作者: 時間:2017-05-11 來源:網絡 收藏

      本人當初學習的時候有一些跟風的因素,自以為學的芯片越多就越厲害 =_=、 其實,學習嵌入式重要的是整體的工程思想和項目經驗積累,說到底這些芯片,我感覺學習起來都差不多吧,無非就是對內資源(寄存器、中斷、定時器、串口等等),和對各種外設的操作而已,掛載的外設越多,系統會越復雜,這時可能會用上操作系統,同時,如果工程中涉及到各種算法、自動控制、采樣、濾波等實際問題的時候,不僅會上操作系統,而且還對數學、物理、電路等方面知識要有較強的功底,對編程的能力的要求會更高,此時就要求對的各種資源有比較明晰的了解了。

    本文引用地址:http://www.czjhyjcfj.com/article/201705/359060.htm

      回到問題,題主問:如何系統的學習?

      (這個問題,,,講句實話,以本人的水平,真的不敢強答 =_=,才學有限,僅僅提幾點建議吧)

      建議:

      1、要動手實踐,要動手實踐,要動手實踐!

      下面有位答主也提到了,工科類的東西光看是不夠的!算法如何實現,自己獨立設計再動手去敲一敲就知道了;外設如何驅動,找到芯片手冊,照著時序圖自己敲一遍;涉及到操作系統部分的內存管理與進程調用,找到源碼仔仔細細研讀幾遍(自己應該寫不出吧 =_=),相信你一定會很有收獲的,可能我這個方法比較笨,但是確實挺實用的,個人覺得。

      2、準備好資料與開發板

      相信很多人都有這樣的意識吧,學一款芯片首先想到的是買一塊開發板,對的,沒錯!巧婦難為無米之炊嘛,這里推薦兩本書《C和指針》、《Cortex-M3權威指南》和《STM32庫開發實戰指南》網上都有PDF版本,結合自己的開發板配套的視頻教程(某火的講的就不錯,需要的話私信發給你),先要理解透徹,然后自己獨立去敲一敲,觸類旁通,例子上給出的都不會很難,知識的拓展很重要,就是舉一反三。還有,不懂得話就多去各大論壇大神虛心請教,論壇里有很多經驗帖子值得學習。

      3、庫開發與寄存器開發?

      現在STM32入門門檻都不高,稍微有點C語言和單片機基礎的都能學,有人說:寄存器操作那么復雜難懂,那一堆寄存器名字都記不住,,,那寄存器開發是不是就不重要了?顯然不是,我會說大牛與菜鳥的卻別就在這兒?盡管我也很菜。。。建議:庫開發為主,看寄存器是為了理解實現的原理,所以寄存器部分不能丟了。有余力可以深入學習下,這對M3內核的理解很有幫助,以及后面ARM系列芯片的學習都很有幫助。

      4、多做東西。在實際工程項目中去鍛煉能力

      題主才大一,若對這一塊感興趣的話,可要把51單片機的知識深入透徹地學扎實喲,這是基本功。盡量爭取加入實驗室,跟著學校實驗室的老師、學長,學姐,并積極參加校內外組織的各種比賽,如電賽、全國STM32大賽,飛思卡爾智能車,四旋翼等等。一開始不懂沒關系,只要他們不嫌棄你,積極好學、不要怕苦!(在實驗室里要謙虛、好學、低調啊,切勿裝逼!否則被打臉是很慘的,別問我怎么知道的 =_=........),有條件的話,可以組建團體去接外面的項目,當然要經過老師同意,或者代做畢業設計也是條財路 【 手動斜眼】

      5、勤總結,有整體思想。形成自己的總結文檔、代碼風格

      可能很多人都沒有這個習慣,包括當初本人自己,拿到一個課題或者項目的時候,大概寫一下流程,就開干,途中遇到很多問題,程序改了又改,從v1.0改到v10.0都還有BUG,,,究根到底,還是自己學得不夠透徹不夠扎實,沒有一個整體的概念,知識零散雜亂,不成體系。有時候,程序框架、流程都沒有錯,就因為時鐘PLL配置上的沖突,導致一個禮拜BUG找不出來,,,所以,形成良好的編程習慣、勤寫注釋、善于總結真的很重要!最好能形成文檔,這絕對是最好的經驗積累形式!



    關鍵詞: STM32

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 元氏县| 嘉义市| 宾川县| 阳高县| 定州市| 长沙市| 武功县| 兴化市| 道真| 尚义县| 怀安县| 利津县| 闽侯县| 屏东市| 长葛市| 达拉特旗| 洛扎县| 新建县| 常州市| 日喀则市| 浦城县| 开阳县| 新津县| 囊谦县| 晋城| 安新县| 九龙城区| 防城港市| 元阳县| 桃园市| 宽甸| 桓台县| 桦川县| 洛隆县| 澄迈县| 和林格尔县| 太仓市| 秀山| 天祝| 依安县| 新民市|