理論與實(shí)踐相結(jié)合,教你如何快速學(xué)習(xí)單片機(jī)
發(fā)布時間:2015-10-22 責(zé)任編輯:susan
【導(dǎo)讀】單片機(jī)是計算機(jī)發(fā)展的一個重要分支領(lǐng)域,它不是完成某一個邏輯功能的芯片,而是把一個計算機(jī)系統(tǒng)集成到一個芯片上。那么如何快速得學(xué)習(xí)單片機(jī)呢?
快速學(xué)單片機(jī)要求有6點(diǎn):
1、熟悉單片機(jī)的原理,結(jié)構(gòu);
2、學(xué)好數(shù)電,模電,為設(shè)計電路打好基礎(chǔ);
3、熟練使用C語言,多學(xué)習(xí)別人的程序;
4、對操作系統(tǒng)原理有一定的了解;
5、Protel至少要有點(diǎn)基礎(chǔ);
6、要實(shí)際動手調(diào)試電路的能力。
學(xué)習(xí)單片機(jī)的步驟
當(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í)好了?,F(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í)使用單片機(jī)就是理解單片機(jī)硬件結(jié)構(gòu),以及內(nèi)部資源的應(yīng)用,在匯編或C語言中學(xué)會各種功能的初始化設(shè)置,以及實(shí)現(xiàn)各種功能的程序編制。
第一步:數(shù)字I/O的使用
使用按鈕輸入信號,發(fā)光二極管顯示輸出電平,就可以學(xué)習(xí)引腳的數(shù)字I/O功能,在按下某個按鈕后,某發(fā)光二極管發(fā)亮,這就是數(shù)字電路中組合邏輯的功能,雖然很簡單,但是可以學(xué)習(xí)一般的單片機(jī)編程思想,例如,必須設(shè)置很多寄存器對引腳進(jìn)行初始化處理,才能使引腳具備有數(shù)字輸入和輸出輸出功能。每使用單片機(jī)的一個功能,就要對控制該功能的寄存器進(jìn)行設(shè)置,這就是單片機(jī)編程的特點(diǎn),千萬不要怕麻煩,所有的單片機(jī)都是這樣。
第二步:定時器的使用
學(xué)會定時器的使用,就可以用單片機(jī)實(shí)現(xiàn)時序電路,時序電路的功能是強(qiáng)大的,在工業(yè)、家用電氣設(shè)備的控制中有很多應(yīng)用,例如,可以用單片機(jī)實(shí)現(xiàn)一個具有一個按鈕的樓道燈開關(guān),該開關(guān)在按鈕按下一次后,燈亮3分鐘后自動滅,當(dāng)按鈕連續(xù)按下兩次后,燈常亮不滅,當(dāng)按鈕按下時間超過2s,則燈滅。數(shù)字集成電路可以實(shí)現(xiàn)時序電路,可編程邏輯器件(PLD)可以實(shí)現(xiàn)時序電路,可編程控制器(PLC)也可以實(shí)現(xiàn)時序電路,但是只有單片機(jī)實(shí)現(xiàn)起來最簡單,成本最低。
定時器的使用是非常重要的,邏輯加時間控制是單片機(jī)使用的基礎(chǔ)。
第三步:中斷
單片機(jī)的特點(diǎn)是一段程序反復(fù)執(zhí)行,程序中的每個指令的執(zhí)行都需要一定的執(zhí)行時間,如果程序沒有執(zhí)行到某指令,則該指令的動作就不會發(fā)生,這樣就會耽誤很多快速發(fā)生的事情,例如,按鈕按下時的下降沿。要使單片機(jī)在程序正常運(yùn)行過程中,對快速動作做出反應(yīng),就必須使用單片機(jī)的中斷功能,該功能就是在快速動作發(fā)生后,單片機(jī)中斷正常運(yùn)行的程序,處理快速發(fā)生的動作,處理完成后,在返回執(zhí)行正常的程序。中斷功能使用中的困難是需要精確地知道什么時候不允許中斷發(fā)生(屏蔽中斷)、什么時候允許中斷發(fā)生(開中斷),需要設(shè)置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應(yīng)該干什么,中斷完成后,程序應(yīng)該干什么等等。
中斷學(xué)會后,就可以編制更復(fù)雜結(jié)構(gòu)的程序,這樣的程序可以干著一件事,監(jiān)視著一件事,一旦監(jiān)視的事情發(fā)生,就中斷正在干的事情,處理監(jiān)視的事情,當(dāng)然也可以監(jiān)視多個事情,形象的比喻,中斷功能使單片機(jī)具有吃著碗里的,看著鍋里的功能。
以上三步學(xué)會,就相當(dāng)于降龍十八掌武功,會了三掌了,可以勉強(qiáng)護(hù)身。
第四步:與PC機(jī)進(jìn)行RS232通信
單片機(jī)都有USART接口,特別是MSP430系列中很多型號,都具有兩個USART接口。USART接口不能直接與PC機(jī)的RS232接口連接,它們之間的邏輯電平不同,需要使用一個MAX3232芯片進(jìn)行電平轉(zhuǎn)換。
USART接口的使用是非常重要的,通過該接口,可以使單片機(jī)與PC機(jī)之間交換信息,雖然RS232通信并不先進(jìn),但是對于接口的學(xué)習(xí)是非常重要的。正確使用USART接口,需要學(xué)習(xí)通信協(xié)議,PC機(jī)的RS232接口編程等等知識。試想,單片機(jī)實(shí)驗(yàn)板上的數(shù)據(jù)顯示在PC機(jī)監(jiān)視器上,而PC機(jī)的鍵盤信號可以在單片機(jī)實(shí)驗(yàn)板上得到顯示,將是多么有意思的事情啊!
第五步:學(xué)會A/D轉(zhuǎn)換
MAP430單片機(jī)帶有多通道12位A/D轉(zhuǎn)換器,通過這些A/D轉(zhuǎn)換器可以使單片機(jī)操作模擬量,顯示和檢測電壓、電流等信號。學(xué)習(xí)時注意模擬地與數(shù)字地、參考電壓、采樣時間,轉(zhuǎn)換速率,轉(zhuǎn)換誤差等概念。
使用A/D轉(zhuǎn)換功能的簡單的例子是設(shè)計一個電壓表。
第六步:學(xué)會PCI、I2C接口和液晶顯示器接口
這些接口的使用可以使單片機(jī)更容易連接外部設(shè)備,在擴(kuò)展單片機(jī)功能方面非常重要。
第七步:學(xué)會比較、捕捉、PWM功能
這些功能可以使單片機(jī)能夠控制電機(jī),檢測轉(zhuǎn)速信號,實(shí)現(xiàn)電機(jī)調(diào)速器等控制起功能。
如果以上七步都學(xué)會,就可以設(shè)計一般的應(yīng)用系統(tǒng),相當(dāng)于學(xué)會十招降龍十八掌,可以出手攻擊了。
第八步:學(xué)習(xí)USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設(shè)計學(xué)習(xí)USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設(shè)計是非常重要的,因?yàn)檫@是當(dāng)前產(chǎn)品開發(fā)的發(fā)展方向。
特別推薦
- 授權(quán)代理商貿(mào)澤電子供應(yīng)Same Sky多樣化電子元器件
- 使用合適的窗口電壓監(jiān)控器優(yōu)化系統(tǒng)設(shè)計
- ADI電機(jī)運(yùn)動控制解決方案 驅(qū)動智能運(yùn)動新時代
- 倍福推出采用 TwinSAFE SC 技術(shù)的 EtherCAT 端子模塊 EL3453-0090
- TDK推出新的X系列環(huán)保型SMD壓敏電阻
- Vishay 推出新款采用0102、0204和 0207封裝的精密薄膜MELF電阻
- Microchip推出新款交鑰匙電容式觸摸控制器產(chǎn)品 MTCH2120
技術(shù)文章更多>>
- 更高精度、更低噪音 GMCC美芝電子膨脹閥以創(chuàng)新?lián)屨夹袠I(yè)“制高點(diǎn)”
- 本立租完成近億元估值Pre-A輪融資,打造AI賦能的租賃服務(wù)平臺
- 中微公司成功從美國國防部中國軍事企業(yè)清單中移除
- 華邦電子白皮書:滿足歐盟無線電設(shè)備指令(RED)信息安全標(biāo)準(zhǔn)
- 功率器件熱設(shè)計基礎(chǔ)(九)——功率半導(dǎo)體模塊的熱擴(kuò)散
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
單向可控硅
刀開關(guān)
等離子顯示屏
低頻電感
低通濾波器
低音炮電路
滌綸電容
點(diǎn)膠設(shè)備
電池
電池管理系統(tǒng)
電磁蜂鳴器
電磁兼容
電磁爐危害
電動車
電動工具
電動汽車
電感
電工電路
電機(jī)控制
電解電容
電纜連接器
電力電子
電力繼電器
電力線通信
電流保險絲
電流表
電流傳感器
電流互感器
電路保護(hù)
電路圖