一.現在單片機那么多,搞得我頭好暈,我應該學習哪種單片機?
答:現在單片機確實很多,頭暈也正常,慶幸的是,我沒有為這暈過,因為筆者上大學時接觸單片機,
可說那時單片機才剛剛發展,單片機的種類少,所以也沒有更多的選擇.誰要你生得那么遲咯(我暗自慶幸)?
那應該學習哪種單片機呢?
這種問題仁者見仁,筆者認為,初學者不宜學習太多的單片機,盲目跟風,選一種單片機先入門,
那選哪種單片機好呢?AT89C51系列單片機雖然速度不夠快,片上資源不夠豐富,但是這是單片機中的經典,
相關的學習資源很豐富,很多高校也做為必選教材.碰到問題可以與人交流,很容易得到答案,因為學習理解及運用51
單片機的人是最多的.
二.聽說51 系列單片機已停產,淘汰了,我還有學的必要嗎? 學了以后工作中能不能用得到?
答:沒那么嚴重,51系列單片機最早是Intel 公司的單片機,雖然由于Intel 公司發展的原因,放棄了51單片機生產,
但是很多有實力的公司購買了Intel 公司的技術和產權,生產出完全兼容Intel 公司51系列單片機。
現在市場上可以買到一大把51核的單片機。
雖然51系單片機速度不夠快,片上資源不夠豐富,但是穩定性很高,經得起考驗。很多要求速度不高的,對單片機上資源要求低
的系民用/工用系統來說,51系列單片機還是足夠應付的,再說了,51單片機的知識,也是學習其它單片機甚至ARM的基礎。因為
其它單片機幾乎都是從51單片機發展而來的,學到的知識不會浪費。
三、我應該學習哪種單片機編程語言呢?是匯編還是C語言,只學一種可以嗎?或者兩者都要學?
答:只學一種可以,但是學習單片機,最終目的是為運用單片機到實際的工作中,匯編語言是低級語言,難記難讀,
但是程序運行效率高,C語言是高級語言,程序運行效率比匯編語言低,但是易記,好讀,便于移植。
我個人認為,學習匯編語言不是為了最終的應用,而是為了更好理解單片機本身的硬件,因為匯編語言是低級語言,更接近于
單片機硬件。學習匯編語言,也是為學習單片機C語言作準備。如果不學習匯編語言而直接學習單片機C語言,
真的好難,很難理解單片機本身。如果只學習匯編語言也不好,只懂匯編語言是很難找到工作的。因為匯編語言編程很困難,
算法實現很困難,難讀難修改,而且往往實際工作中,某些系統的程序可能是幾十K,甚至上百K,如果老板要你寫上幾十K的
單片機程序,等你寫出來后,老板早就炒你的魷魚了。而采用C語言,則快得多。
四.初學習51單片機,需要準備哪些資源?
以下純屬個人建議:
1.一至兩本51單片匯編的書,一至兩本51單片C語言的書(隨時翻翻)
2.51系列單片機(如AT89C51),單片機編程器,仿真器(不是必須的),單片機學習板(不是必須的,可以自己搭)
個人電腦,最好有串口。
3.集成開發軟件,如KEIL。
五.學習51單片機,應該如何開始和實驗?
答:應該大至看懂書本,然后編寫一個最簡單的程序(建議用匯編),我是從讓一個LED閃爍開始的,這就涉及到IO口控制,
及延時程序。以及一個主程序循環。當你寫完程序后,用KEIL軟件編譯,生成后輟名為BIN或HEX的目標文件,然后通過
編程器燒入單片機,再把燒好程序的單片機插入單片機學習板或自制的系統板上。當你看到閃爍的LED時,祝賀你,你已經
有能力寫一個完整的單片機程序了,可說你已正式入門了。然后再寫一些更為復雜的程序,如流水燈程序,檢測按鈕的程序,
數碼管程序,定時器程序,中斷程序……
以后的路還長,但是你已經正式步入了單片機王國的大門,祝賀你,早日成功!
2011/6/15 by L.g
email:cnygboy@sohu.com
|