以最快的時(shí)間最好的方法學(xué)好單片機 作者: 時(shí)間:2016-11-22 來(lái)源:網(wǎng)絡(luò ) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對面交流海量資料庫查詢(xún) 收藏 作為一電子愛(ài)好者,如你不懂單片機的話(huà),不管你是搞維修的,還是搞開(kāi)發(fā)的,在現在以及將來(lái)最起碼你不算一位合格的電子愛(ài)好者.我是99年6月開(kāi)始學(xué)的單片機,算是還可以吧(自我感覺(jué)良好)! 要想學(xué)好單片機必須對它有興趣,這是必然的!也是最重要的!在這基礎上你從一個(gè)不知單片機是個(gè)什么東東到自己能做一些單片機的東東----三個(gè)月用你的業(yè)余時(shí)間搞定,要知道到那時(shí)你是個(gè)鍍了金的"電子愛(ài)好者"(學(xué)校剛學(xué)完的本科生不過(guò)如此),那樣的興奮啊...!呵呵! 想學(xué)單片機從MCS-51開(kāi)始,那是公認的,不必研究了.但單片機是一個(gè)很系統的學(xué)科,我們作為自學(xué)的,不可能象學(xué)校那樣很系統的學(xué),那樣的話(huà)可能要倍上它三五年了.那么怎么才能在三個(gè)月而且是業(yè)余的時(shí)間學(xué)好它呢?我個(gè)人認為是---怎么樣使自己盡快的入門(mén)是主要的,一旦入了門(mén)就什么都好說(shuō)!雖說(shuō)不必等系統的學(xué)了計算機系統再來(lái)學(xué)單片機,但有的一些你必須要了解的,那就必須要學(xué),必須要懂.學(xué)單片機要對數字邏輯(數字電路),數制,匯編語(yǔ)言等等---必須懂!頭開(kāi)始大了吧!呵呵!誰(shuí)叫你對它感興趣呢!但話(huà)也得說(shuō)回來(lái),感興趣歸感興趣,要是真的讓你買(mǎi)來(lái)幾本書(shū),那感興趣的也是每本書(shū)的前面幾頁(yè),或許用來(lái)作睡前摧眠罷了!可是應該要懂的就必須得學(xué),怎么辦呢?辦法是有的,因為我就是這么過(guò)來(lái)的!首先:你對必須有電腦,我想你能上網(wǎng)電腦不是大問(wèn)題,況且學(xué)單片機也是離不開(kāi)電腦的,沒(méi)電腦你還是別動(dòng)那個(gè)腦筋了!視頻教程應該聽(tīng)說(shuō)過(guò)吧!對了,就是視頻教程,這樣我們就不必看那摧眠的書(shū)了,就象看電視一樣的看教程,好的教師講的課程比較通俗易懂,容易理解,也就不象書(shū)那樣容易摧眠了.一旦你聽(tīng)得下去了,你的興趣就更上來(lái)了,而且比在學(xué)校里聽(tīng)老師講課還方便,聽(tīng)不懂的地方你可以倒到前面重新來(lái)過(guò),看了一次不明白的地方還可以重看N次,沒(méi)人會(huì )煩你!結合網(wǎng)上多得不能再多的有關(guān)內容做一些東東,你不想學(xué)會(huì )都難(真的不想學(xué)除外)!呵呵!不是吹牛!問(wèn)題是怎么學(xué)?從那兒學(xué)起?什么教程好?怎么按排好教程課時(shí)?單片機是計算機的一個(gè)分支,是計算機一個(gè)系統的.它的硬件是一系列邏輯時(shí)序電路的組合."邏輯時(shí)序"那就是數字電路啊!那數字電路原理也就必須要了解的啰!況且單片機里的什么鎖存器啊,寄存器啊,譯碼器啊,計數器啊,等等.都是數字電路里的東東,了解了數字電路你也就一只腳進(jìn)了單片機的大門(mén).我有幸看了劉潤華老師的<數字電子電路基礎>的視頻教程,他可是一位很不錯的教授!通俗易懂,容易理解!教程30 個(gè)課時(shí),我想如果你有一點(diǎn)點(diǎn)的電子基礎(那怕你一點(diǎn)不懂,你只要有興趣就行),這里面的東東你只要理解便是了.它比模擬電子電路要好理解的多得多,我是三天看完的.給你一個(gè)星期吧!怎么樣?呵呵!一個(gè)星期就能把前腳踏進(jìn)單片機的大門(mén),不錯吧!你的一只腳已經(jīng)進(jìn)了單片機的門(mén),那么我們就來(lái)考慮你的另外一只腳吧!我們假設你沒(méi)有太多的空時(shí)間,劉潤華老師的<數字電子電路基礎>的視頻教程,你用了15天,學(xué)這個(gè)東西最好是連著(zhù)看,可不要斷斷續續的,三天打魚(yú)二天曬網(wǎng)的后果你是知道的!三個(gè)月是90天,你用了15天,那就再有75天了,我們怎么按排這75天呢?總不能把入門(mén)的后一只腳用了75天再把它拖進(jìn)來(lái)吧!!呵呵!那還算叫“搞定”啊!入門(mén)后還要學(xué)會(huì )怎么站起來(lái)走路,然后是怎么跑著(zhù)走路,這樣才是剛剛“搞定”!呵呵!暈了吧!不急,不是說(shuō)過(guò)嗎,只要入了門(mén)什么都好說(shuō),“跑”算什么,“飛”都沒(méi)問(wèn)題!我們走進(jìn)門(mén)吧!武慶生老師的《單片機原理及接口技術(shù)》視頻教程是個(gè)很不錯的選擇,武慶生老師是很敬業(yè)的教師,他把單片機中的很多技術(shù)難點(diǎn),技術(shù)細節講得透透徹徹!明明白白!清清楚楚!盡管武慶生老師講得這么好,可對我們從來(lái)沒(méi)有聽(tīng)過(guò)什么是微機原理,什么是計算機接口技術(shù),什么是計算機匯編語(yǔ)言等等的人來(lái)說(shuō),還是感到頭大!沒(méi)有劉潤華老師的<數字電子電路基礎>的視頻教程來(lái)得輕松了,我的過(guò)程是:買(mǎi)一本筆記,每一課時(shí)先認真的看一遍,然后再認真的重新看一遍,并把重要的記下來(lái).這樣的話(huà),有了<數字電子電路基礎>已經(jīng)打了底的基礎,應該沒(méi)多大問(wèn)題了,我是說(shuō)讓后面的那只腳進(jìn)得門(mén)來(lái)沒(méi)多大問(wèn)題了!呵呵!<單片機原理及接口技術(shù)>整個(gè)課程33課時(shí),我用了大概半個(gè)月吧!我是很認真很認真對待它的!整個(gè)課程我都做了筆記,而且我發(fā)現做筆記有很多好處,首先你會(huì )知道自己已經(jīng)學(xué)到那兒了,學(xué)得怎么樣了(最起碼是你懂了你才會(huì )記下來(lái)吧)!其次是課程里有很多很多經(jīng)典的匯編程序,你記下來(lái)后可作會(huì )日后寫(xiě)程序的范典.就算你不小心用了20天吧!這樣說(shuō)來(lái)大概是35天后,你也就不小心進(jìn)了單片機的大門(mén).呵呵!我用"不小心"是很有意思的,我就是不經(jīng)意間看完的.在這過(guò)程中每天都有"原來(lái)是這樣"和"緣來(lái)如此而已"!那種感受,你慢慢體會(huì )吧!我再來(lái)說(shuō)說(shuō)細節問(wèn)題,課程里一開(kāi)始說(shuō)得是單片機的內臟,你有了劉潤華老師的<數字電子電路基礎>的視頻教程的過(guò)程,應該沒(méi)有太大問(wèn)題的!接下是匯編語(yǔ)言的指令部分,整個(gè)過(guò)程武慶生老師用了大量的實(shí)例,這部分你得十二份的認真對待,日后你要用這些語(yǔ)言寫(xiě)東東的!往下是"定時(shí)器/計數器","串行接口","中斷系統"這三部分可謂是單片機的核心,有了"定時(shí)器/計數器"單片機才會(huì )自動(dòng)控制,有了"中斷系統"單片機才會(huì )有了"智慧",有了"串行接口"單片機才會(huì )知道外面的世界有多大!再往下是"系統擴展"和"接口技術(shù)",盡管我是很認真的看完的,這里邊的"I/O口的擴展","鍵盤(pán)接口","A/D","D/A"等等,在<數字電子電路基礎>里有的已有交待,比較輕松的!有的也只限于了解就可以了,因為將來(lái)的單片機里象"A/D","D/A"等等是芯片自帶的,你可以有選擇的應用便可! 好了!到了這里我們算是完全進(jìn)得門(mén)來(lái)了!不錯吧!只用了你大概一個(gè)月的時(shí)間.相當于學(xué)校一年多的本科生的時(shí)間.我不是說(shuō)要三個(gè)月才能算是"搞定"嗎?是的,我們只不過(guò)是剛剛入門(mén).接下來(lái)是怎么"跑"的問(wèn)題. 動(dòng)手吧!花錢(qián)了!到網(wǎng)上多看看買(mǎi)一個(gè)帶ISP下載線(xiàn)的單片機開(kāi)發(fā)板,100元左右.注意的是你學(xué)的是MCS-51,你就得買(mǎi)MCS-51的開(kāi)發(fā)板.須要注意的是: 1/ 自帶程序的在線(xiàn)燒錄(自下載)功能.這會(huì )讓你省下了買(mǎi)編程器的費用! 2/ 帶標準RS232接口.看看板子上有沒(méi)有RS232芯片和24C**系列的EEPROM芯片,"串行接口","中斷系統"這兩部分的內容可以得到練習. 3/ 提供16*2字符顯示液晶板接口了嗎!以后用得著(zhù). 4/ 精確標準的時(shí)鐘電路.找找有沒(méi)有DS1302芯片,好東東!"定時(shí)器/計數器"可以得到練習. 其它的應該一般的開(kāi)發(fā)板都會(huì )有的,就不必多說(shuō)了! KEIL 是美國Keil Software公司出品的51單片機軟件開(kāi)發(fā)系統.不管你是用匯編的還是C語(yǔ)言的,它都能幫你產(chǎn)生目標代碼,生成的文件你再把它用ISP下載線(xiàn)寫(xiě)進(jìn)芯片,呵呵!你的東東就出來(lái)了!算是"跑"起來(lái)了吧!這跟鍛煉身體有點(diǎn)相似,跑得越多你的身體就越好,你的身體越好就跑得越快!到底能不能"跑"起來(lái),或"跑"得快不快,那是你的事情了!至少你已經(jīng)"走"起來(lái)了! 在這里我再說(shuō)一些細節問(wèn)題:學(xué)"跑"時(shí),最好找一些簡(jiǎn)單的現存的小程序玩玩!然后想辦法改程序,看看能不能再"跑"起來(lái),我就是這樣"跑"起來(lái)的!玩比較大一些程序時(shí)盡量找現存的子程序(就是一些大蝦們說(shuō)的"模塊")作為你的子程序,這樣就比較可靠了!我們假設你已經(jīng)"跑"起來(lái)了("跑"不起來(lái)才怪)!就算你學(xué)"跑"用了30天左右的時(shí)間吧.入門(mén)用了你30天,看看學(xué)"跑"和入門(mén)的比例:占了一半啊!是的學(xué)單片機就是練出來(lái)的!必須練,練,練,再練!最好在入門(mén)的時(shí)候就練!這一點(diǎn)很重要哦!到了這里你的單片機已經(jīng)算是基本上"搞定"了!如果你只是搞維修的,那你畢業(yè)了!呵呵!如果你是想搞單片機開(kāi)發(fā),并且想用單片機養家糊口的,那你離"搞定"還有一點(diǎn)距離.一些大的工程一般不是一個(gè)人能完成得了的,可能要幾個(gè)人甚至幾十個(gè)程序員一起合作.這時(shí)候你還用匯編語(yǔ)言就有點(diǎn)說(shuō)不過(guò)去了!匯編語(yǔ)言?xún)?yōu)點(diǎn)是很多,可是它也有致命的弱點(diǎn):很難交流,很難移值等等!C語(yǔ)言是個(gè)不錯的選擇,與匯編語(yǔ)言相比,C語(yǔ)言在功能,結構性,可讀性,可維護性上有明顯的優(yōu)勢!生成的目標代碼效率非常高,多數語(yǔ)句生成的匯編代碼很緊湊!C語(yǔ)言的優(yōu)勢還體現在你將來(lái)搞MCS-51以外的單片機的開(kāi)發(fā)時(shí),你只要對這種單片機的硬件結構有一個(gè)大概的了解就可以了!就是說(shuō)C語(yǔ)言編程時(shí)對硬件結構的了解要求不是太高的!學(xué)C語(yǔ)言相比是比較容易的,我是網(wǎng)上找到的多媒體學(xué)習光盤(pán)!十天就能知道大概了!然后也是練,練,練!呵呵,沒(méi)這么容易吧!就這么容易!有的東西我們只是被它的外表嚇住了,就象漂亮的MM不是你想象的那么難搞定一樣!自信很重要哦!!!!!!!學(xué)了C語(yǔ)言就算把單片機"搞定"了吧!是的"搞定"了!但"搞定"是要你自己感覺(jué)的,這時(shí)候我建議你看看朱清新老師的<軟件工程>,這里會(huì )跟你說(shuō)說(shuō)什么是編程!看過(guò)后你就有了一種更上一層樓的驚喜!什么是結構化編程,什么是面向對象編程!使你對程序結構和你的編程水平有了質(zhì)的提升!羅克露老師的<計算機組成原理>,按照常規的教學(xué)是先學(xué)這里面的內容,然后才是《單片機》.因為我要在這里提出來(lái),如你能再系統的看一遍羅克露老師的<計算機組成原理>,也是有質(zhì)的升華的!到那時(shí)再加上你從網(wǎng)上積累的東西,和你的實(shí)操經(jīng)驗!呵呵!算是“搞定”了!算算吧!這樣的話(huà)三個(gè)月沒(méi)透支吧!以上只是我的一家之言!有什么不當的地方,請多多包含!但我確實(shí)是這么過(guò)來(lái)的,而且以上就是我的經(jīng)歷!
評論