在電子領(lǐng)域,尤其是自動化智能控制領(lǐng)域,由傳統(tǒng)的分立元件或數(shù)字邏輯電路構(gòu)成的控制系統(tǒng)正在被單片機(jī)等智能控制系統(tǒng)所取代。單片機(jī)具有體積小、功能強(qiáng)、成本低、應(yīng)用面廣等優(yōu)點(diǎn),可以說,智能控制與自動控制的核心就是單片機(jī)。目前,一個學(xué)習(xí)與應(yīng)用單片機(jī)的高潮正在興起。如何短時間內(nèi)上手單片機(jī)是很多人關(guān)心的問題。 但是,對于單片機(jī)很多人存在學(xué)習(xí)上的誤區(qū),指導(dǎo)如何下手,有的人高估了單片機(jī)的難度,有一種敬畏的心里,認(rèn)為自己不行,有的人低估了它的深度,導(dǎo)致學(xué)了很長時間還是很膚淺!因此要學(xué)習(xí)單片機(jī)首先要有一個正確的認(rèn)識和了解。 首先,學(xué)習(xí)單片機(jī)并不像學(xué)習(xí)傳統(tǒng)數(shù)字電路或模擬電路那樣直觀,原因是除了“硬件”之外還存在一個“軟件”的因素。正是這個“軟件”因素的存在,使得許多同學(xué)怎么也弄不懂單片機(jī)的工作過程,不明白為什么將幾個數(shù)送來送去,就能控制一盞燈的亮、滅或控制一臺電機(jī)變速、液晶屏的現(xiàn)實(shí)等。由此對單片機(jī)產(chǎn)生一種“神奇”、 “敬畏”,甚至“恐懼”感,阻礙了學(xué)習(xí)單片機(jī)的熱情與興趣,因而在社會上有“單片機(jī)難學(xué)”一說。 對于初學(xué)者我有些經(jīng)驗(yàn)想和大家分享: 學(xué)習(xí)的步驟 當(dāng)前的單片機(jī)種類很多,但是51是最基礎(chǔ)的,因此單片機(jī)的學(xué)習(xí)最好也是從51開始,不僅容易上手,而且相當(dāng)實(shí)用。然而51單片機(jī)畢竟過于基礎(chǔ),后來的很多單片機(jī)在功能上都有很大的擴(kuò)展,因此按照我們實(shí)驗(yàn)室多數(shù)人的路線接下來大多數(shù)人會學(xué)習(xí)AVR單片機(jī),AVR單片機(jī)在功能上較51有很大提升,集成了A/D、快速PWM等很多實(shí)用的功能,而且和很多大型的單片機(jī)在功能上有很多類似之處,因此如果以后還想掌握其他單片機(jī)AVR無疑是一個很好的跳板。 學(xué)習(xí)的過程 學(xué)習(xí)單片機(jī)最終要的是當(dāng)然是練,我所說的學(xué)習(xí)跟課堂上的單片機(jī)學(xué)習(xí)不同,我以前也看過一些單片機(jī)教材,有些教材講的是單片機(jī)的工作原理和內(nèi)部結(jié)構(gòu),這些東西對于我們暫時并不需要,等以后開課的時候在學(xué)習(xí)好了。現(xiàn)在要學(xué)習(xí)的是暫時拋開內(nèi)部結(jié)構(gòu)原理不談,如何能用單片機(jī)寫一些簡單的小程序,是從實(shí)用性的角度出發(fā),網(wǎng)上有一種說法稱之為先實(shí)踐后理論的學(xué)習(xí)方法。 以此我的觀點(diǎn)如下,單片機(jī)的硬件結(jié)構(gòu)首先要有一個基本的了解,最起碼要知道各引腳的功能、區(qū)別,能自己動手搭一個單片機(jī)的最小系統(tǒng),然后就可以直接從程序入手,程序最好還是用C語言編程,從簡單的跑馬燈做起,逐漸深入,陸續(xù)可以做一些數(shù)碼管、液晶、DS1302、DS18B20等電子元器件的應(yīng)用,在深入就可以結(jié)合一些具體實(shí)例擴(kuò)展一些中斷、串口通訊等功能。還有一點(diǎn)要聲明的是單片機(jī)里用到的C語言其實(shí)很有限,課堂上學(xué)習(xí)C++的很大一部分內(nèi)容在初期單片機(jī)編程中都用不到,因此沒必要因?yàn)橛X的自己的C語言基礎(chǔ)不是很好而對單片機(jī)望而止步! 學(xué)習(xí)的工具 軟件方面方面,51單片機(jī)用的是KEIL軟件,這個軟件在學(xué)校圖書館軟件下載和其他網(wǎng)站上都有,具體用法自己查找相關(guān)資料,AVR的軟件就比較多了,我用的是CVAVR,另外還有ICCAVR等多款編譯軟件,這要看個人喜好了,建議有了一定的51基礎(chǔ)再學(xué)。另外就是燒寫軟件,燒寫軟件的作用就是將編譯器生成的HEX文件燒寫至單片機(jī)里,這要配合下載線實(shí)用,如果有并口的話最好用并口下載線,軟件最好用廣州雙龍的SLISP軟件,如果是筆記本沒有并口的話則要自己買一個下載器了,名稱為USBASP,網(wǎng)上電子市場有賣20塊錢左右,軟件會隨光盤自帶。 硬件方面,首先是要有單片機(jī),對于單片機(jī)有一點(diǎn)要注意,51單片機(jī)最好買89S51、89S52這兩種型號,上面我所說的燒寫程序是ISP方式,這兩種單片機(jī)支持ISP下載,所以如果買其他型號的燒寫程序可能會不太方便,AVR單片機(jī)常用的就是ATmega16L其它型號的區(qū)別也不是很大,甚至有些兼容。至于單片機(jī)開發(fā)板,目前的價格都很貴,不過像上次學(xué)校里廣告的那個六十多塊錢的最好還是免了,沒什么作用。能買一塊當(dāng)然好,沒有的話也不要緊,自己動手買個電路板搭一下也很方便,引出ISP接口,燒寫程序十分容易,然后將I/O口引出擴(kuò)展也很方便。 學(xué)習(xí)單片機(jī)的其它幾個注意點(diǎn): 1.理論與實(shí)踐并重 對一個初學(xué)單片機(jī)的人來說,如果按教科書式的學(xué)法,上來就是一大堆指令、名詞,學(xué)了半天還搞不清這些指令起什么作用,也許用不了幾天就會覺得枯燥乏味以致半途而廢。所以學(xué)習(xí)與實(shí)踐結(jié)合是一個好方法,邊學(xué)習(xí)、邊演練,循序漸進(jìn),這樣用不了幾次就能將所用到的指令理解、吃透、扎根于腦海,甚至“根深蒂固”。也就是說,當(dāng)你學(xué)習(xí)完幾條指令后(一次數(shù)量不求多,只求懂),接下去就該做實(shí)驗(yàn)了,通過實(shí)驗(yàn),使你感受到剛才的指令產(chǎn)生的控制效果,眼睛看得見(燈光)、耳朵聽得到(聲音),更能深刻理解指令是怎樣轉(zhuǎn)化成信號去實(shí)現(xiàn)控制的,通過實(shí)驗(yàn)看到自己所學(xué)的成果不僅有一種成就感也能提升你對單片機(jī)的興趣。說句實(shí)在話,單片機(jī)與其說是學(xué)出來的,還不如說是做實(shí)驗(yàn)練出來的,何況做實(shí)驗(yàn)本身也是一種學(xué)習(xí)過程。因此邊學(xué)邊練的學(xué)習(xí)方法,效果特別好。 2.合理安排時間持之以恒 學(xué)習(xí)單片機(jī)不能“三天打魚、兩天曬網(wǎng)” ,要有持之以恒的毅力與決4心。學(xué)習(xí)完幾條指令后,就應(yīng)及時做實(shí)驗(yàn),融匯貫通,而不要等幾天或幾個星期之后再做實(shí)驗(yàn),這樣效果不好甚至前學(xué)后忘。另外要有打“持久戰(zhàn)” 的心理準(zhǔn)備,不要興趣來時學(xué)上幾天,無興趣時涼上幾星期。學(xué)習(xí)單片機(jī)很重要的一點(diǎn)就是持之以恒。 3.遇到問題耐心檢查 單片機(jī)有軟硬件兩方面的內(nèi)容,有時一個程序怎么調(diào)都不出效果,然而從理論分析卻又是對的,這是就要仔細(xì)找原因了,學(xué)習(xí)單片機(jī)經(jīng)常碰到很多問題,有時一兩天都不能解決,這是就要有耐心,從底層找起,相信每找出一個錯誤都會有一個新的收獲。切不可輕言放棄!!! 4.對只短暫學(xué)過一遍的知識,充其量只比浮光掠影稍好。因此,較好的方法是過一段時間后(1-2個月)再重新學(xué)一遍,學(xué)過的知識要經(jīng)常運(yùn)用,這樣反復(fù)循環(huán)幾次就能徹底弄懂消化,永不忘卻。 5.要進(jìn)行適當(dāng)投資購買實(shí)驗(yàn)器材及書籍資料 單片機(jī)技術(shù)含金量高,一旦學(xué)會后,給你帶來的效益當(dāng)然也高,無論是應(yīng)聘求職還是自起爐灶開廠辦公司,其前景都光明無限。因此在學(xué)習(xí)時要舍得適當(dāng)投資購買必要的學(xué)習(xí)、實(shí)驗(yàn)器材。另外還要經(jīng)常去科技圖書店看看,購買一些適合自己學(xué)習(xí)、提高的書籍。一本好的書籍真的很重要,可以隨時翻閱,隨時補(bǔ)充不懂或遺忘的知識。 要說的就那么多了,以上知識我這個小菜鳥的一些感觸,希望有用,以后共同學(xué)習(xí)!
|