隨著物聯網的大潮,單片機的學習又有高潮,可是面對品類繁多的單片機,不知從何學起,不知道到底學習單片機需要哪些知識;是從8位單片機、16位單片機,還是現在正流行的32位單片機開始學習呢。

很多人的選擇是當下流行的32位單片機,覺得既然學當然需要學習主流的產品了,可是面對32位單片機複雜的庫文件,大量的資源,即使使用項目驅動的學習方法,立完Flag後,很快就放棄了,很難堅持學習。
因此經過我的教學經驗,如果想開始學習單片機,最好從51單片機開始學起,我都推薦STC系列的51單片機學習。原因就是一句話,因為51系列單片機簡單,學習起來也簡單。但是簡單不代表它功能少,51單片機雖然簡單,但體系是完備的。所以當你學會51單片機,會非常快速入門其它單片機學習。這就和我們小時候學習數學都是從1+1開始學習加法的,簡單+堅持我們就能學習下去,就能更好的理解。
下面介紹學習51單片機的準備工作。入門51單片機,始終包含「一軟一硬」2部分,
首先你需要準備一個完整的單片機最小系統(包括 時鐘電路、復位電路和電源),最好能有幾個按鍵和LED的,方便後續學習(某寶購買現成的51單片機最小系統,30元內,STC系列的),硬體的方面;然後你要有一個程序編輯、編譯調試的環境,一般選擇Keil軟體安裝在我們自己的PC機,軟體的方面;之後,你還要準備一條連接PC機和51單片機的數據線,用來燒寫程序,建立起PC機和51單片機的聯繫,目前常用的有串口線,USB接口線等,可以根據你選擇的最小系統預留接口選擇,或者自己製作,硬體的方面;再之後要有一個將Keil軟體生成的「HEX」文件燒寫在單片機內的燒錄軟體,如stc-isp-xx型號燒錄軟體,軟體的方面;經過以上步驟,你即可在Keil練習你的項目,通過下載燒寫到單片機中,調試觀看結果了。有了以上準備,就可以開始51單片機的項目練習了。在此我建議你要看下你選購型號單片機的手冊。這裡我要強調一句話,
對51單片機的學習即是對51單片機的寄存器的學習,對51單片機的編程即是對51單片機寄存器的設置。
51單片機簡單就在與它的寄存器少,少就好學。下面說下寄存如何理解:
寄存器如果覺得抽象,你可以想像它為學生宿舍樓,有很多棟,每棟又有很多房間,你要想找到住在房間內的學生,你就要知道他的房間號,這個房間號就是51單片機的地址,只不過單片機的房間內只能允許1個人住,即住(1)還是不住(0),這就是對寄存器的最小單元賦值。所以設置寄存器,就兩件事,一確定 地址,二就是 賦值,這就是編程。你看到的複雜的編程就是以這個為基礎的,只不過增加了程式語言的語法規則。這樣的話,理解學習單片機就會更好些。