學習單片機,為什麼我建議你從51單片機開始

2020-12-14 艾豆悠然

隨著物聯網的大潮,單片機的學習又有高潮,可是面對品類繁多的單片機,不知從何學起,不知道到底學習單片機需要哪些知識;是從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),這就是對寄存器的最小單元賦值。所以設置寄存器,就兩件事,一確定 地址,二就是 賦值,這就是編程。你看到的複雜的編程就是以這個為基礎的,只不過增加了程式語言的語法規則。這樣的話,理解學習單片機就會更好些。

相關焦點

  • 致單片機初學者,不建議從51單片機學起!
    建議從STM32開始學起!為什麼我不建議從51單片機學呢?因為現在電子行業發展速度很快,很多比較大的半導體公司發展也很速度,比如ST,它推出的STM32 MCU不僅使用簡單,關鍵是現在的價格也很便宜。而且現在的產品公司也大多以ST的MCU為首選。
  • 現在還有必要學習51單片機了嗎
    「現在都是什麼年代了,你還在學單片機?早就該學嵌入式系統了,Linux和FPGA了。什麼,你學的還是51單片機,這個單片機可能比你老爸年紀還大,還學它幹嘛?你這不是1949年參加Guo軍,1912年入宮做『大內總管』嗎?」。
  • 51單片機過時了嗎?如何零基礎快速入門?
    選擇的困惑從學習者的角度來說,51單片機學習遇到的最主要困難就是思維邏輯的轉變,從未接觸過單片機的朋友往往開始學起單片機來很困惑,不知如何學起。相反,如果從相對簡單的51單片機學起(選擇51系列還是AVR、PIC等單片機不在本文討論,朋友們自行判斷選擇,本文僅以51單片機為例),通過學習51單片機首先建立起來數字思維邏輯(儘管學過數字電路,但個人體會初學51最大的阻力還是認知規律與以前學習習慣的不同),逐步深入掌握了51的內核結構,再進一步去學習ARM,你會發現自己的自學能力還是非常強的,參考一些手冊說明或者例程,就能較為容易的上手了。
  • 32位-51單片機學習方法和思路,遊刃有餘
    對於有一定的單片機基礎,能夠熟練掌握51/avr單片機開發的同學來說,32位單片機,是比較好學的,因為不涉及linux。為什麼這麼說呢?51單片機的寄存器簡單很少,外設也簡單,簡單的代碼就能實現功能各種簡單的功能,而32位單片機的外設會比51單片機更多,其配置過程更為繁瑣,32位單片機的時鐘配置,時鐘樹的使能,比如乙太網,FSMC,SDIO等功能的使用。
  • 51單片機、STM32單片機、PIC單片機性能對比
    51單片機 應用最廣泛的8位單片機當然也是初學者們最容易上手學習的單片機,最早由Intel推出,由於其典型的結構和完善的總線專用寄存器的集中管理,眾多的邏輯位操作功能及面向控制的豐富的指令系統,堪稱為一代「經典」,為以後的其它單片機的發展奠定了基礎。
  • 51單片機指令快速記憶方法總結
    建議學單片機之初,你必須懂一些數字電路,若對數字電路中的一般概念都很模糊,最好還是再補習一下再來學單片機。接下來你最好先選一種單片機機種進行學習,因為目前單片機機種較多,其結構和指令均不相同,若這種學兩天,那種學兩天往往會灘多嚼不爛。這裡建議你最好先學8051單片機,因為8051方面的書籍、資料、器材都較多。
  • 51單片機還有沒有必要學?
    二、51單片機入門學習首先根據個人基礎,如果是完全沒有基礎的,應該還是從51單片機入手,目前51單片機的應用還有很多,很多設備還能見到51晶片,尤其成本低的項目,出貨量特別大,51單片機入門簡單,上手快,項目開發進度快。低端產品大量使用,也是教學入門的晶片。
  • 51單片機教程之基礎編(基於C語言)
    大家好,我是陳濱,本人是去年9月份開始學單片機,到現在一年多了,現在本人基本掌握了單片機編程,開始深入學習彙編語言了。當然隨著編譯器的改進,C語言執行效率已經接近彙編,但是想真正成為單片機高手的話,那麼我告訴你,精通彙編是必須的!因為彙編語言是直接操作單片機內部硬體的,如果你精通彙編,那麼意味著你對單片機十分熟悉,就能編出十分高效的程序。所以先學C語言能快速入門,再學彙編就能精通單片機。OK!說了這麼多,你會問:學習單片機能有什麼錢途?嗯!
  • 學習單片機1-單片機-電子工程世界網
    因此我們得把SETB P1.0變為(D2H,90H ),把CLR P1.0變為 (C2H,90H ),至於為什麼是這兩個數字,這也是由51晶片的設計者--INTEL規定的,我們不去研究。第二步,在得到這兩個數字後,怎樣讓這兩個數字進入單片機的內部呢?這要藉助於一個硬體工具"編程器"。
  • 學32位-51單片機的方法和思路
    對於有一定的單片機基礎,能夠熟練掌握51/avr單片機開發的同學來說,32位單片機,是比較好學的,因為不涉及linux。為什麼這麼說呢?51單片機的寄存器簡單很少,外設也簡單,簡單的代碼就能實現功能各種簡單的功能,而32位單片機的外設會比51單片機更多,其配置過程更為繁瑣,32位單片機的時鐘配置,時鐘樹的使能,比如乙太網,FSMC,SDIO等功能的使用。
  • 單片機學習之二:單片機軟體使用簡明教程
    在我們開始單片機學習之前,我們有必要先來介紹一下單片機編程開發環境。我們現在常用的2種編程開發環境是:偉福WAVE和KEIL C軟體。我們這裡以大家最常用的KEIL C軟體為例,簡單介紹一下編程環境。
  • STC單片機和STM32單片機哪個更適合入門?
    在綜合收集網上相關信息後,我相信很多剛入行的朋友,都應該被支持51單片機和STM32單片機任一種硬體平臺作為入門的理由搞得不知所措。我雖不才,但是,也從事硬體研發工作十年之久。因此,我也想從自己的角度給各位剛入行或準備進入電子產品硬體研發行業的工程師和大中專學生一個儘可能全面的參考依據。當然,我發布的言論,也僅僅是代表我個人的觀點,各位朋友如何做出抉擇,依舊要考各位朋友自己斟酌。
  • 在今天這個時代下,51單片機會被淘汰掉嗎?
    到大學,智慧型手機開始出現,每過一年內存就增加一倍,到今天,智慧型手機已經開始發展人工智慧了。我走過了一條工業發展之路,新的總會淘汰舊的,那我不禁想到,今天學的單片機,明天是不是也要淘汰?首先,個人覺得,淘汰是不可能的,但發展是一定的,以後的單片機會更加複雜是一個趨勢,工業生產技術 的提高。
  • 51單片機學習之4-數碼管
    圖(b)右邊的電路圖可以看出,所有的二極體正極都接在電源正極,a、b、c、d、e、f、g、dp都接在單片機的IO口上,在《51單片機複習筆記1》:http://www.51hei.com/mcu/2111.html中介紹過驅動二極體的原理,所以這裡只需要在相應的二極體負極給低電平即可讓相應的二極體發光。這裡補充一下,為什麼給高電平二極體就不亮,給低電平就亮呢。
  • 學好單片機,看懂這個就夠了!
    五年之後現在想想當時老師所說的,完全就是我現在所想的,在五年之前真不曉得思想會有這樣的轉變,歸根到底是我對51單片機深刻的理解,還有自己的工作經驗和積澱,你讓我推薦學習單片機的書籍,別說幾本了,就是幾十本,我都能給你脫口而出,像郭天祥的《51單片機C語言教程》,還有其他的《51單片機項目教程》、《實例解讀51單片機完全學習與應用》等等、這些都是不錯的單片機教程書
  • 從零開始學習51單片機(八)獨立按鍵S1實驗3:一鍵控制N個設備
    今天的學習內容是:系統化編程讓一個按鍵能夠控制N個設備獨立按鍵S1的實驗3:在「獨立按鍵S1實驗2」的基礎上進一步改進,讓程序再次優化,學會怎樣將程序模塊化編寫,掌握了程序模塊化編寫,就能夠用一個獨立按鍵同時控制N個設備了
  • 肺腑之言-寫給喜歡單片機的初學者
    單片機的內部結構 如果沒有學過 也不要緊 那就拿小麻雀開刀 再一層層 自下而上的 到我們所用的PC剛開始學單片機的時候 看到厚厚的一本書 不要一咬牙 要一下子把書全部看完 看得仔仔細細 明明白白 先看看目錄 無非就是 介紹單片機的歷史 然後它內部的組成原理 然後是指令 然後就是接口 先說歷史 知道51單片機是現在資料最豐富 最適合上手拿來開刀的就是了 不要覺得書上的 知識老 這都 N
  • 51單片機玩轉物聯網基礎篇01-開發環境搭建
    前言上至航天,下至兒童玩具,凡事沾一點智能的東西,都離不開單片機的身影......,本文開始,我們學習STC89C52單片機,這款單片機屬於8051系列單片機,51單片機作為入門級單片機不僅在教學實驗中應用廣泛,在實際項目中應用亦是十分廣泛。
  • 51單片機程序下載、ISP及串口基礎知識
    本文詳細介紹了串口、51單片機的ISP下載等基礎知識,已經學過單片機的也可以看看,加強一下對這方面的了解。 串口 串行接口簡稱串口,也稱串行通信接口,是採用串行通信方式的擴展接口。而51單片機等中含有UART串口,UART這裡指的是TTL電平的串口。 UART與RS232區別主要在於其電平定義不同。TTL電平是5V的,而RS232是負邏輯電平,它定義+5~+12V為低電平,而-12~-5V為高電平。 標準串口即RS232串口(通常指COM接口),如圖。
  • 51單片機擴展外部RAM
    2、片外RAM的操作時序進行RAM的擴展,其擴展方法較為簡單容易,這是由單片機的優良擴展性能解決的。單片機的地址總線為16位,擴展的片外RAM的做大容量為64KB,地址為0000H~FFFFH。1)由於51單片機採用不同的控制信號指令,儘管RAM和ROM地址是重疊的,也不會發送混亂。2)51單片機對片內和片外ROM的訪問使用相同的指令,兩者的選擇是由硬體實現的(就是不用咱們關心的,還有他們的存儲也是硬體自動實現的,你只要連接好引線就哦了~~~剩下的就是寫點指令控制控制了)3)晶片選擇現在多採用線選法,地址解碼法用的漸少。