在錯誤的道路上日夜兼程,最終也無法成功,方法和思路絕對是最重要的。本章節講到的學習單片機的方法,都是作者學習單片機的無數經驗和教訓總結出來的瑰寶。通過作者前面的披荊斬棘,開辟了道路,可以告訴讀者路在何方;也因為作者摸過燒紅的鐵塊,燙了手,所以也可以告訴讀者教訓和代價是什么。希望各位都能站在作者的肩膀上,看得更遠!
1.1學什么類型的單片機
單片機的型號那么多,如何選取一款合適的進行學習?如果沒有任何單片機基礎的話,建議跟著作者學習51單片機。為什么呢?雖然現在單片機種類和型號非常多,每個型號都有一定的市場份額,但是哪個型號也沒有早期51單片機那般風光和火爆,雖然現在地位不是那么高了,但是由于51單片機積累的資料非常多,學習過程中有眾多的參考資料,所以上手肯定比其他型號的要快一些。如果學習稍微偏門的單片機,可能一個簡單的軟件問題就要折騰好長時間,不僅僅浪費了你時間,更重要的是打擊了學習單片機的信心。
那么是不是每種單片機都要學一遍呢?答案當然是否定的。通過學習51單片機,除了掌握51這個型號的單片機,還得具備舉一反三和融會貫通的能力。單片機型號那么多,挨個學下來估計頭發白了也學不完,學以致用才有價值。因此學習51單片機,不能僅僅當做51來學習,更重要的是要當做“單片機”來學,要通過這個教程,把所有的單片機內部資源都搞清楚、弄明白,每個內部模塊的用法理解透徹,這樣當遇到一個從未用過的單片機,也就知道如何下手使用它進行開發了。
1.2學習單片機的最佳方法
前邊提到過,單片機是一門實用技術,學習它已經不是為了應付考試了,下面總結了單片機的學習方法:一個要領,四個步驟。
學習單片機的要領就是:在實踐中成長,In Doing We Learn!
學射箭得去拉弓,整天只擺造型肯定不行;學游泳得下水撲騰,整天在岸上做模仿活動不行;學開車得坐車上去開,坐沙發上肯定學不會。同樣的道理,學習單片機,整天盯著單片機書看肯定不行,也必須得親自動手去練。
沒有不下水就學會游泳成為游泳健將的,沒有不到車上練就能成為賽車手的,這點大家都清楚,可為什么那么多人學單片機的時候,總是只抱著一本書看呢。第一,小學、中學甚至大學的學習模式都是如此,學什么東西主要都是靠看書,應付書面考試;第二,很多人想實踐卻不太清楚該怎么去實踐。
遇到問題查書比直接看書的效果要好過百倍。不是不看書,而是說看了一點以后,要馬上去實踐驗證,然后再回頭結合實踐的結果,理解書上的內容。從這里得出一個結論,就是學實際技術的過程和應付考試不同,書上的內容不需要去硬性記憶,書是用來查的,不是用來背的。
下面是學習單片機的四個步驟。
第一步:鸚鵡學舌。
剛出生的孩子叫“爸爸”“媽媽”的時候,他甚至不知道“爸爸”“媽媽”是什么意思,更不會理解這些聲音代表的意義,但是當帶著孩子見到爸爸就讓他喊“爸爸”,見到媽媽就讓他喊“媽媽”,見到爺爺就喊“爺爺”……慢慢會發現,次數多了,孩子就知道誰是爸爸,誰是媽媽,誰是爺爺,誰是奶奶了。
大家剛開始接觸單片機的時候,也屬于單片機行業的新生兒。單片機的樣子,單片機外圍的各種器件,單片機內部的各種結構,單片機使用C語言的編程方法,初學者可能都沒有見過,腦子里全無概念。沒關系,有些概念和方法不理解也沒有關系,甚至不需要去理解,只需要跟著去鸚鵡學舌式的學習,第一遍學習某一節課的內容時,對于程序,可以完全跟著抄下來,甚至抄兩三遍,過一段時間會發現,好多東西也認識了,好多概念也慢慢地理解清楚了,也能大概看懂別人的程序了。
第二步:照葫蘆畫瓢。
很多同學學習的時候看書看視頻能看明白,甚至看別人的程序也都能看懂,覺得自己就會了,等到自己寫程序的時候,感覺就是老鼠啃天,不知道從哪里下手了,這是初學者很容易犯的“眼高手低”的毛病,所以第二步的內容就非常重要了。
要求每一位同學,學完當前課時內容,把第一步順利完成以后,關掉視頻教程,關掉源代碼,自己通過看電路圖和查找非源代碼的其他任何資料,把當節課的程序代碼重新默寫出來,邊寫邊多少理解那么一點點,不是純粹的背誦,應該說是背誦加理解的結合。甚至學過幾節課以后,可以回頭把前邊曾經這樣實現過的課程,再按照這種方法做一遍。千萬不要認為這一步沒必要,這一步是能否真正學會單片機的一個關鍵。在學完本教程之前,每一課內容都要這樣做,如果每一個程序都能夠完美的完成,那么可以說,當節課的內容,百分之七八十已經掌握了。
第三步:他山之石,可以攻玉。
單片機技術的最大特點就是可以通過修改程序來實現不同的功能,因此舉一反三的能力就必不可少了。每一節課一般都會布置幾個作業,大家盡量去獨立完成這個作業。在完成這個作業的過程中可以參考例程的程序思路,在這個基礎上通過動腦思考去構建自己的程序框架,最終將程序完成。
工程師實際產品研發的時候,很多種情況下也是如此。比如一個產品,如果從零起步的話,可能會走很多彎路,遭遇很多前人已經遭遇過的挫折,所以通常的做法是尋找幾款同類產品,先研究各自優缺點,學習其長處,然后在同類產品基礎上再來設計自己的產品,這就是“他山之石,可以攻玉”。
初學者在學習的時候往往遇到的問題很多,應該想到自己遇到的問題,可能前輩們早就遇到過了,所以遇到問題后不要慌張,首先利用搜索引擎在網上搜一下。要做什么新東西,先去網上找相關資料了解一下。現在AI大模型也很厲害,也可以多問問人工智能。不管是編程還是硬件設計,多參考別人的東西,只要把別人的東西分析明白了,自己用起來了,也就成為自己的知識了。
第四步:理論實踐結合,溫故知新。
當大家把所有的課程都按照前邊三步完成后,不妨再把書打開,再看看書,經過了自己的實戰經歷,再看書的時候,對很多知識點會有一種恍然大悟的感覺。甚至視頻教程、書籍都可以反復看幾遍,可能有的知識點當時學習的時候不明白,過了一段時間,回過頭來再學習的時候,一下就明白了。
審核編輯 黃宇
-
單片機
+關注
關注
6076文章
45494瀏覽量
670236
發布評論請先 登錄
手把手教你學51單片機-C語言版
嵌入式單片機開發學習路徑
學習單片機快速方法
單片機的入門準備
學單片機的誤區
第1章如何學習單片機(1.5 1.6)
第1章如何學習單片機(1.3 1.4)
怎么測單片機系統頻率
單片機怎么驅動電機?
第一章 W55MH32 高性能以太網單片機的學習方法概述
第1章 如何學習單片機
評論