理論與實(shí)踐相結(jié)合,教你如何快速學(xué)習(xí)單片機(jī)
發(fā)布時(shí)間:2015-10-22 責(zé)任編輯:susan
【導(dǎo)讀】單片機(jī)是計(jì)算機(jī)發(fā)展的一個(gè)重要分支領(lǐng)域,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。那么如何快速得學(xué)習(xí)單片機(jī)呢?
快速學(xué)單片機(jī)要求有6點(diǎn):
1、熟悉單片機(jī)的原理,結(jié)構(gòu);
2、學(xué)好數(shù)電,模電,為設(shè)計(jì)電路打好基礎(chǔ);
3、熟練使用C語言,多學(xué)習(xí)別人的程序;
4、對(duì)操作系統(tǒng)原理有一定的了解;
5、Protel至少要有點(diǎn)基礎(chǔ);
6、要實(shí)際動(dòng)手調(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ù)人會(huì)學(xué)習(xí) AVR 單片機(jī), AVR 單片機(jī)在功能上較 51 有很大提升,集成了 A/D 、快速 PWM 等很多實(shí)用的功能,而且和很多大型的單片機(jī)在功能上有很多類似之處,因此如果以后還想掌握其他單片機(jī) AVR 無疑是一個(gè)很好的跳板。
學(xué)習(xí)的過程
學(xué)習(xí)單片機(jī)最終要的是當(dāng)然是練,我所說的學(xué)習(xí)跟課堂上的單片機(jī)學(xué)習(xí)不同,我以前也看過一些單片機(jī)教材,有些教材講的是單片機(jī)的工作原理和內(nèi)部結(jié)構(gòu),這些東西對(duì)于我們暫時(shí)并不需要,等以后開課的時(shí)候在學(xué)習(xí)好了?,F(xiàn)在要學(xué)習(xí)的是暫時(shí)拋開內(nèi)部結(jié)構(gòu)原理不談,如何能用單片機(jī)寫一些簡(jiǎn)單的小程序,是從實(shí)用性的角度出發(fā),網(wǎng)上有一種說法稱之為先實(shí)踐后理論的學(xué)習(xí)方法。
因此我的觀點(diǎn)如下,單片機(jī)的硬件結(jié)構(gòu)首先要有一個(gè)基本的了解,最起碼要知道各引腳的功能、區(qū)別,能自己動(dòng)手搭一個(gè)單片機(jī)的最小系統(tǒng),然后就可以直接從程序入手,程序最好還是用 C 語言編程,從簡(jiǎn)單的跑馬燈做起,逐漸深入,陸續(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ǔ)不是很好而對(duì)單片機(jī)望而止步!
學(xué)習(xí)的工具
軟件方面方面, 51 單片機(jī)用的是 KEIL 軟件,這個(gè)軟件在學(xué)校圖書館軟件下載和其他網(wǎng)站上都有,具體用法自己查找相關(guān)資料, AVR 的軟件就比較多了,我用的是 CVAVR ,另外還有 ICCAVR 等多款編譯軟件,這要看個(gè)人喜好了,建議有了一定的 51 基礎(chǔ)再學(xué)。另外就是燒寫軟件,燒寫軟件的作用就是將編譯器生成的 HEX 文件燒寫至單片機(jī)里,這要配合下載線實(shí)用,如果有并口的話最好用并口下載線,軟件最好用廣州雙龍的 SLISP 軟件,如果是筆記本沒有并口的話則要自己買一個(gè)下載器了,名稱為 USBASP ,網(wǎng)上電子市場(chǎng)有賣 20 塊錢左右,軟件會(huì)隨光盤自帶。
硬件方面,首先是要有單片機(jī),對(duì)于單片機(jī)有一點(diǎn)要注意, 51 單片機(jī)最好買 89S51 、 89S52 這兩種型號(hào),上面我所說的燒寫程序是 ISP 方式,這兩種單片機(jī)支持 ISP 下載,所以如果買其他型號(hào)的燒寫程序可能會(huì)不太方便, AVR 單片機(jī)常用的就是 ATmega16L 其它型號(hào)的區(qū)別也不是很大,甚至有些兼容。至于單片機(jī)開發(fā)板,目前的價(jià)格都很貴,從一百到幾百不等,不過像上次學(xué)校里廣告的那個(gè)六十多塊錢的最好還是免了,沒什么作用。能買一塊當(dāng)然好,沒有的話也不要緊,自己動(dòng)手買個(gè)電路板搭一下也很方便,引出 ISP 接口,燒寫程序十分容易,然后將 I/O 口引出擴(kuò)展也很方便。
學(xué)習(xí)單片機(jī)的其它幾個(gè)注意點(diǎn):
1 .理論與實(shí)踐并重
對(duì)一個(gè)初學(xué)單片機(jī)的人來說,如果按教科書式的學(xué)法,上來就是一大堆指令、名詞,學(xué)了半天還搞不清這些指令起什么作用,也許用不了幾天就會(huì)覺得枯燥乏味以致半途而廢。所以學(xué)習(xí)與實(shí)踐結(jié)合是一個(gè)好方法,邊學(xué)習(xí)、邊演練,循序漸進(jìn),這樣用不了幾次就能將所用到的指令理解、吃透、扎根于腦海,甚至 “ 根深蒂固 ” 。也就是說,當(dāng)你學(xué)習(xí)完幾條指令后 ( 一次數(shù)量不求多,只求懂 ) ,接下去就該做實(shí)驗(yàn)了,通過實(shí)驗(yàn),使你感受到剛才的指令產(chǎn)生的控制效果,眼睛看得見 ( 燈光 ) 、耳朵聽得到 ( 聲音 ) ,更能深刻理解指令是怎樣轉(zhuǎn)化成信號(hào)去實(shí)現(xiàn)控制的,通過實(shí)驗(yàn)看到自己所學(xué)的成果不僅有一種成就感也能提升你對(duì)單片機(jī)的興趣。說句實(shí)在話,單片機(jī)與其說是學(xué)出來的,還不如說是做實(shí)驗(yàn)練出來的,何況做實(shí)驗(yàn)本身也是一種學(xué)習(xí)過程。因此邊學(xué)邊練的學(xué)習(xí)方法,效果特別好。
2 .合理安排時(shí)間持之以恒
學(xué)習(xí)單片機(jī)不能 “ 三天打魚、兩天曬網(wǎng) ” ,要有持之以恒的毅力與決 4 心。學(xué)習(xí)完幾條指令后,就應(yīng)及時(shí)做實(shí)驗(yàn),融匯貫通,而不要等幾天或幾個(gè)星期之后再做實(shí)驗(yàn),這樣效果不好甚至前學(xué)后忘。另外要有打 “ 持久戰(zhàn) ” 的心理準(zhǔn)備,不要興趣來時(shí)學(xué)上幾天,無興趣時(shí)涼上幾星期。學(xué)習(xí)單片機(jī)很重要的一點(diǎn)就是持之以恒。
3 .遇到問題耐心檢查
單片機(jī)有軟硬件兩方面的內(nèi)容,有時(shí)一個(gè)程序怎么調(diào)都不出效果,然而從理論分析卻又是對(duì)的,這是就要仔細(xì)找原因了,學(xué)習(xí)單片機(jī)經(jīng)常碰到很多問題,有時(shí)一兩天都不能解決,這是就要有耐心,從底層找起,相信每找出一個(gè)錯(cuò)誤都會(huì)有一個(gè)新的收獲。切不可輕言放棄!!!
4 .對(duì)只短暫學(xué)過一遍的知識(shí),充其量只比浮光掠影稍好。因此,較好的方法是過一段時(shí)間后 (1-2 個(gè)月 ) 再重新學(xué)一遍,學(xué)過的知識(shí)要經(jīng)常運(yùn)用,這樣反復(fù)循環(huán)幾次就能徹底弄懂消化,永不忘卻。
5 .要進(jìn)行適當(dāng)投資購買實(shí)驗(yàn)器材及書籍資料
單片機(jī)技術(shù)含金量高,一旦學(xué)會(huì)后,給你帶來的效益當(dāng)然也高,無論是應(yīng)聘求職還是自起爐灶開廠辦公司,其前景都光明無限。因此在學(xué)習(xí)時(shí)要舍得適當(dāng)投資購買必要的學(xué)習(xí)、實(shí)驗(yàn)器材。另外還要經(jīng)常去科技圖書店看看,購買一些適合自己學(xué)習(xí)、提高的書籍。一本好的書籍真的很重要,可以隨時(shí)翻閱,隨時(shí)補(bǔ)充不懂或遺忘的知識(shí)。
學(xué)習(xí)使用單片機(jī)就是理解單片機(jī)硬件結(jié)構(gòu),以及內(nèi)部資源的應(yīng)用,在匯編或C語言中學(xué)會(huì)各種功能的初始化設(shè)置,以及實(shí)現(xiàn)各種功能的程序編制。
第一步:數(shù)字I/O的使用
使用按鈕輸入信號(hào),發(fā)光二極管顯示輸出電平,就可以學(xué)習(xí)引腳的數(shù)字I/O功能,在按下某個(gè)按鈕后,某發(fā)光二極管發(fā)亮,這就是數(shù)字電路中組合邏輯的功能,雖然很簡(jiǎn)單,但是可以學(xué)習(xí)一般的單片機(jī)編程思想,例如,必須設(shè)置很多寄存器對(duì)引腳進(jìn)行初始化處理,才能使引腳具備有數(shù)字輸入和輸出輸出功能。每使用單片機(jī)的一個(gè)功能,就要對(duì)控制該功能的寄存器進(jìn)行設(shè)置,這就是單片機(jī)編程的特點(diǎn),千萬不要怕麻煩,所有的單片機(jī)都是這樣。
第二步:定時(shí)器的使用
學(xué)會(huì)定時(shí)器的使用,就可以用單片機(jī)實(shí)現(xiàn)時(shí)序電路,時(shí)序電路的功能是強(qiáng)大的,在工業(yè)、家用電氣設(shè)備的控制中有很多應(yīng)用,例如,可以用單片機(jī)實(shí)現(xiàn)一個(gè)具有一個(gè)按鈕的樓道燈開關(guān),該開關(guān)在按鈕按下一次后,燈亮3分鐘后自動(dòng)滅,當(dāng)按鈕連續(xù)按下兩次后,燈常亮不滅,當(dāng)按鈕按下時(shí)間超過2s,則燈滅。數(shù)字集成電路可以實(shí)現(xiàn)時(shí)序電路,可編程邏輯器件(PLD)可以實(shí)現(xiàn)時(shí)序電路,可編程控制器(PLC)也可以實(shí)現(xiàn)時(shí)序電路,但是只有單片機(jī)實(shí)現(xiàn)起來最簡(jiǎn)單,成本最低。
定時(shí)器的使用是非常重要的,邏輯加時(shí)間控制是單片機(jī)使用的基礎(chǔ)。
第三步:中斷
單片機(jī)的特點(diǎn)是一段程序反復(fù)執(zhí)行,程序中的每個(gè)指令的執(zhí)行都需要一定的執(zhí)行時(shí)間,如果程序沒有執(zhí)行到某指令,則該指令的動(dòng)作就不會(huì)發(fā)生,這樣就會(huì)耽誤很多快速發(fā)生的事情,例如,按鈕按下時(shí)的下降沿。要使單片機(jī)在程序正常運(yùn)行過程中,對(duì)快速動(dòng)作做出反應(yīng),就必須使用單片機(jī)的中斷功能,該功能就是在快速動(dòng)作發(fā)生后,單片機(jī)中斷正常運(yùn)行的程序,處理快速發(fā)生的動(dòng)作,處理完成后,在返回執(zhí)行正常的程序。中斷功能使用中的困難是需要精確地知道什么時(shí)候不允許中斷發(fā)生(屏蔽中斷)、什么時(shí)候允許中斷發(fā)生(開中斷),需要設(shè)置哪些寄存器才能使某種中斷起作用,中斷開始時(shí),程序應(yīng)該干什么,中斷完成后,程序應(yīng)該干什么等等。
中斷學(xué)會(huì)后,就可以編制更復(fù)雜結(jié)構(gòu)的程序,這樣的程序可以干著一件事,監(jiān)視著一件事,一旦監(jiān)視的事情發(fā)生,就中斷正在干的事情,處理監(jiān)視的事情,當(dāng)然也可以監(jiān)視多個(gè)事情,形象的比喻,中斷功能使單片機(jī)具有吃著碗里的,看著鍋里的功能。
以上三步學(xué)會(huì),就相當(dāng)于降龍十八掌武功,會(huì)了三掌了,可以勉強(qiáng)護(hù)身。
第四步:與PC機(jī)進(jìn)行RS232通信
單片機(jī)都有USART接口,特別是MSP430系列中很多型號(hào),都具有兩個(gè)USART接口。USART接口不能直接與PC機(jī)的RS232接口連接,它們之間的邏輯電平不同,需要使用一個(gè)MAX3232芯片進(jìn)行電平轉(zhuǎn)換。
USART接口的使用是非常重要的,通過該接口,可以使單片機(jī)與PC機(jī)之間交換信息,雖然RS232通信并不先進(jìn),但是對(duì)于接口的學(xué)習(xí)是非常重要的。正確使用USART接口,需要學(xué)習(xí)通信協(xié)議,PC機(jī)的RS232接口編程等等知識(shí)。試想,單片機(jī)實(shí)驗(yàn)板上的數(shù)據(jù)顯示在PC機(jī)監(jiān)視器上,而PC機(jī)的鍵盤信號(hào)可以在單片機(jī)實(shí)驗(yàn)板上得到顯示,將是多么有意思的事情啊!
第五步:學(xué)會(huì)A/D轉(zhuǎn)換
MAP430單片機(jī)帶有多通道12位A/D轉(zhuǎn)換器,通過這些A/D轉(zhuǎn)換器可以使單片機(jī)操作模擬量,顯示和檢測(cè)電壓、電流等信號(hào)。學(xué)習(xí)時(shí)注意模擬地與數(shù)字地、參考電壓、采樣時(shí)間,轉(zhuǎn)換速率,轉(zhuǎn)換誤差等概念。
使用A/D轉(zhuǎn)換功能的簡(jiǎn)單的例子是設(shè)計(jì)一個(gè)電壓表。
第六步:學(xué)會(huì)PCI、I2C接口和液晶顯示器接口
這些接口的使用可以使單片機(jī)更容易連接外部設(shè)備,在擴(kuò)展單片機(jī)功能方面非常重要。
第七步:學(xué)會(huì)比較、捕捉、PWM功能
這些功能可以使單片機(jī)能夠控制電機(jī),檢測(cè)轉(zhuǎn)速信號(hào),實(shí)現(xiàn)電機(jī)調(diào)速器等控制起功能。
如果以上七步都學(xué)會(huì),就可以設(shè)計(jì)一般的應(yīng)用系統(tǒng),相當(dāng)于學(xué)會(huì)十招降龍十八掌,可以出手攻擊了。
第八步:學(xué)習(xí)USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設(shè)計(jì)學(xué)習(xí)USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設(shè)計(jì)是非常重要的,因?yàn)檫@是當(dāng)前產(chǎn)品開發(fā)的發(fā)展方向。
特別推薦
- 兆易創(chuàng)新GD32F30x STL軟件測(cè)試庫獲得德國(guó)萊茵TüV IEC 61508功能安全認(rèn)證
- 芯科科技第三代無線開發(fā)平臺(tái)引領(lǐng)物聯(lián)網(wǎng)發(fā)展
- MSO 4B 示波器為工程師帶來更多臺(tái)式功率分析工具
- 艾為電子推出新一代高線性度GNSS低噪聲放大器——AW15745DNR
- 瑞薩發(fā)布四通道主站IC和傳感器信號(hào)調(diào)節(jié)器, 以推動(dòng)不斷增長(zhǎng)的IO-Link市場(chǎng)
- e絡(luò)盟現(xiàn)貨供應(yīng) Abracon 新推出的 AOTA 系列微型鑄型電感器
- 加賀富儀艾電子推出支持Wi-Fi 6和藍(lán)牙的無線局域網(wǎng)/藍(lán)牙組合模塊
技術(shù)文章更多>>
- 數(shù)字驅(qū)動(dòng)工業(yè),智能賦能制造 AMTS & AHTE SOUTH CHINA 2024同期會(huì)議全公開!
- 團(tuán)體觀展招募!104CEF開啟組團(tuán)觀眾通道,解鎖更多禮遇
- 觸摸式OLED顯示屏有望重新定義汽車用戶界面
- 用Python自動(dòng)化雙脈沖測(cè)試
- 揭秘電動(dòng)汽車中直流鏈路電容器的奧秘(上)
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
電阻觸控屏
電阻器
電阻作用
調(diào)速開關(guān)
調(diào)諧器
鼎智
動(dòng)力電池
動(dòng)力控制
獨(dú)石電容
端子機(jī)
斷路器
斷路器型號(hào)
多層PCB
多諧振蕩器
扼流線圈
耳機(jī)
二極管
二極管符號(hào)
發(fā)光二極管
防靜電產(chǎn)品
防雷
防水連接器
仿真工具
放大器
分立器件
分頻器
風(fēng)力渦輪機(jī)
風(fēng)能
風(fēng)扇
風(fēng)速風(fēng)向儀