除了學習順序,學習方法和深度都是不同的。 51 單片機一般是需要係統學習,熟悉每個外設對應的寄存器配置。 而STM32我幾乎沒看過多少次數據手冊,直接調庫把外設用起來就行。 很多東西,你現在理解起來很難,等你經驗積累的差不多了,自然而然就領悟了,不需要刻意去學習。 比如看STM32的數據手冊,哪怕是看中文的,很多寄存器幹嘛用的,你完全看不懂的。 拿我自己為例子,說出來有點諷刺,但是很真實。 我英語水平很差,我是怎麼看英文數據手冊的,是根據我的經驗去猜測和理解數據手冊。 我相信,像我這樣的工程師應該不在少數。 因為用多了,看多了,很多核心的參數都是相同的。 學STM32也是一樣的,想通過數據手冊去學單片機簡直就是噩夢。 正確的方法,不管三七二十一,哪怕複製例程,我把外設先用起來看看效果再說。 總比看枯燥數據手冊有趣多了,用起來了再嚐試去改一些參數,改引腳,改定時時間,改通道… 等你把STM32固件庫用熟了,發現某個外設的結構體成員對應正好也是對應某個寄存器。 這個時候再針對性去研究對應的寄存器,就會好理解很多。 一般上了STM32這種級別的單片機,通過項目去學習是最快的。 假設在此之前,你已經學過別的單片機了,那這個時候對你最有價值的不是學會STM32。 而是能做項目的能力,從專業術語來說就是項目思維和編程水平。 單純從開發板上學習,隻能學會單片機這個工具,學完你會發現還是不會做項目。 這也是無際單片機編程讓學員以項目驅動學習的原因,我自己就是通過項目學會STM32的。 對於不能落地的東西,不管是知識還是想法,都是在消耗時間。 |