理論與實踐相結合,教你如何快速學習單片機
發布時間:2015-10-22 責任編輯:susan
【導讀】單片機是計算機發展的一個重要分支領域,它不是完成某一個邏輯功能的芯片,而是把一個計算機係統集成到一個芯片上。那麼如何快速得學習單片機呢?
快速學單片機要求有6點:
1、熟悉單片機的原理,結構;
2、學好數電,模電,為設計電路打好基礎;
3、熟練使用C語言,多學習別人的程序;
4、對操作係統原理有一定的了解;
5、Protel至少要有點基礎;
6、要實際動手調試電路的能力。
學習單片機的步驟
當前的單片機種類很多,但是 51 是最基礎的,因此單片機的學習最好也是從 51 開始,不僅容易上手,而且相當實用。然而 51 單片機畢竟過於基礎,後來的很多單片機在功能上都有很大的擴展,因此按照我們實驗室多數人的路線接下來大多數人會學習 AVR 單片機, AVR 單片機在功能上較 51 有很大提升,集成了 A/D 、快速 PWM 等很多實用的功能,而且和很多大型的單片機在功能上有很多類似之處,因此如果以後還想掌握其他單片機 AVR 無疑是一個很好的跳板。
學習的過程
學xue習xi單dan片pian機ji最zui終zhong要yao的de是shi當dang然ran是shi練lian,我wo所suo說shuo的de學xue習xi跟gen課ke堂tang上shang的de單dan片pian機ji學xue習xi不bu同tong,我wo以yi前qian也ye看kan過guo一yi些xie單dan片pian機ji教jiao材cai,有you些xie教jiao材cai講jiang的de是shi單dan片pian機ji的de工gong作zuo原yuan理li和he內nei部bu結jie構gou,這zhe些xie東dong西xi對dui於yu我wo們men暫zan時shi並bing不bu需xu要yao,等deng以yi後hou開kai課ke的de時shi候hou在zai學xue習xi好hao了le。現xian在zai要yao學xue習xi的de是shi暫zan時shi拋pao開kai內nei部bu結jie構gou原yuan理li不bu談tan,如ru何he能neng用yong單dan片pian機ji寫xie一yi些xie簡jian單dan的de小xiao程cheng序xu,是shi從cong實shi用yong性xing的de角jiao度du出chu發fa,網wang上shang有you一yi種zhong說shuo法fa稱cheng之zhi為wei先xian實shi踐jian後hou理li論lun的de學xue習xi方fang法fa。
因此我的觀點如下,單片機的硬件結構首先要有一個基本的了解,最起碼要知道各引腳的功能、區別,能自己動手搭一個單片機的最小係統,然後就可以直接從程序入手,程序最好還是用 C 語言編程,從簡單的跑馬燈做起,逐漸深入,陸續可以做一些數碼管、液晶、 DS1302 、 DS18B20 等電子元器件的應用,在深入就可以結合一些具體實例擴展一些中斷、串口通訊等功能。還有一點要聲明的是單片機裏用到的 C 語言其實很有限,課堂上學習 C++ 的很大一部分內容在初期單片機編程中都用不到,因此沒必要因為覺的自己的 C 語言基礎不是很好而對單片機望而止步!
學習的工具
軟件方麵方麵, 51 單片機用的是 KEIL 軟件,這個軟件在學校圖書館軟件下載和其他網站上都有,具體用法自己查找相關資料, AVR 的軟件就比較多了,我用的是 CVAVR ,另外還有 ICCAVR 等多款編譯軟件,這要看個人喜好了,建議有了一定的 51 基礎再學。另外就是燒寫軟件,燒寫軟件的作用就是將編譯器生成的 HEX 文件燒寫至單片機裏,這要配合下載線實用,如果有並口的話最好用並口下載線,軟件最好用廣州雙龍的 SLISP 軟件,如果是筆記本沒有並口的話則要自己買一個下載器了,名稱為 USBASP ,網上電子市場有賣 20 塊錢左右,軟件會隨光盤自帶。
硬件方麵,首先是要有單片機,對於單片機有一點要注意, 51 單片機最好買 89S51 、 89S52 這兩種型號,上麵我所說的燒寫程序是 ISP 方式,這兩種單片機支持 ISP 下載,所以如果買其他型號的燒寫程序可能會不太方便, AVR 單片機常用的就是 ATmega16L qitaxinghaodequbieyebushihenda,shenzhiyouxiejianrong。zhiyudanpianjikaifaban,muqiandejiagedouhengui,congyibaidaojibaibudeng,buguoxiangshangcixuexiaoliguanggaodenageliushiduokuaiqiandezuihaohaishimianle,meishenmezuoyong。nengmaiyikuaidangranhao,meiyoudehuayebuyaojin,zijidongshoumaigedianlubandayixiayehenfangbian,yinchu ISP 接口,燒寫程序十分容易,然後將 I/O 口引出擴展也很方便。
學習單片機的其它幾個注意點:
1 .理論與實踐並重
對一個初學單片機的人來說,如果按教科書式的學法,上來就是一大堆指令、名(ming)詞(ci),學(xue)了(le)半(ban)天(tian)還(hai)搞(gao)不(bu)清(qing)這(zhe)些(xie)指(zhi)令(ling)起(qi)什(shen)麼(me)作(zuo)用(yong),也(ye)許(xu)用(yong)不(bu)了(le)幾(ji)天(tian)就(jiu)會(hui)覺(jiao)得(de)枯(ku)燥(zao)乏(fa)味(wei)以(yi)致(zhi)半(ban)途(tu)而(er)廢(fei)。所(suo)以(yi)學(xue)習(xi)與(yu)實(shi)踐(jian)結(jie)合(he)是(shi)一(yi)個(ge)好(hao)方(fang)法(fa),邊(bian)學(xue)習(xi)、邊演練,循序漸進,這樣用不了幾次就能將所用到的指令理解、吃透、紮根於腦海,甚至 “ 根深蒂固 ” 。也就是說,當你學習完幾條指令後 ( 一次數量不求多,隻求懂 ) ,接下去就該做實驗了,通過實驗,使你感受到剛才的指令產生的控製效果,眼睛看得見 ( 燈光 ) 、耳朵聽得到 ( 聲音 ) ,gengnengshenkelijiezhilingshizenyangzhuanhuachengxinhaoqushixiankongzhide,tongguoshiyankandaozijisuoxuedechengguobujinyouyizhongchengjiuganyenengtishengniduidanpianjidexingqu。shuojushizaihua,danpianjiyuqishuoshixuechulaide,haiburushuoshizuoshiyanlianchulaide,hekuangzuoshiyanbenshenyeshiyizhongxuexiguocheng。yincibianxuebianliandexuexifangfa,xiaoguotebiehao。
2 .合理安排時間持之以恒
學習單片機不能 “ 三天打魚、兩天曬網 ” ,要有持之以恒的毅力與決 4 心xin。學xue習xi完wan幾ji條tiao指zhi令ling後hou,就jiu應ying及ji時shi做zuo實shi驗yan,融rong彙hui貫guan通tong,而er不bu要yao等deng幾ji天tian或huo幾ji個ge星xing期qi之zhi後hou再zai做zuo實shi驗yan,這zhe樣yang效xiao果guo不bu好hao甚shen至zhi前qian學xue後hou忘wang。另ling外wai要yao有you打da “ 持久戰 ” 的心理準備,不要興趣來時學上幾天,無興趣時涼上幾星期。學習單片機很重要的一點就是持之以恒。
3 .遇到問題耐心檢查
danpianjiyouruanyingjianliangfangmiandeneirong,youshiyigechengxuzenmetiaodoubuchuxiaoguo,ranerconglilunfenxiqueyoushiduide,zheshijiuyaozaixizhaoyuanyinle,xuexidanpianjijingchangpengdaohenduowenti,youshiyiliangtiandoubunengjiejue,zheshijiuyaoyounaixin,congdicengzhaoqi,xiangxinmeizhaochuyigecuowudouhuiyouyigexindeshouhuo。qiebukeqingyanfangqi!!!
4 .對隻短暫學過一遍的知識,充其量隻比浮光掠影稍好。因此,較好的方法是過一段時間後 (1-2 個月 ) 再重新學一遍,學過的知識要經常運用,這樣反複循環幾次就能徹底弄懂消化,永不忘卻。
5 .要進行適當投資購買實驗器材及書籍資料
單(dan)片(pian)機(ji)技(ji)術(shu)含(han)金(jin)量(liang)高(gao),一(yi)旦(dan)學(xue)會(hui)後(hou),給(gei)你(ni)帶(dai)來(lai)的(de)效(xiao)益(yi)當(dang)然(ran)也(ye)高(gao),無(wu)論(lun)是(shi)應(ying)聘(pin)求(qiu)職(zhi)還(hai)是(shi)自(zi)起(qi)爐(lu)灶(zao)開(kai)廠(chang)辦(ban)公(gong)司(si),其(qi)前(qian)景(jing)都(dou)光(guang)明(ming)無(wu)限(xian)。因(yin)此(ci)在(zai)學(xue)習(xi)時(shi)要(yao)舍(she)得(de)適(shi)當(dang)投(tou)資(zi)購(gou)買(mai)必(bi)要(yao)的(de)學(xue)習(xi)、實驗器材。另外還要經常去科技圖書店看看,購買一些適合自己學習、提高的書籍。一本好的書籍真的很重要,可以隨時翻閱,隨時補充不懂或遺忘的知識。
學習使用單片機就是理解單片機硬件結構,以及內部資源的應用,在彙編或C語言中學會各種功能的初始化設置,以及實現各種功能的程序編製。
第一步:數字I/O的使用
使用按鈕輸入信號,發光二極管顯示輸出電平,就可以學習引腳的數字I/Ogongneng,zaianxiamougeanniuhou,moufaguangerjiguanfaliang,zhejiushishuzidianluzhongzuheluojidegongneng,suiranhenjiandan,danshikeyixuexiyibandedanpianjibianchengsixiang,liru,bixushezhihenduojicunqiduiyinjiaojinxingchushihuachuli,cainengshiyinjiaojubeiyoushuzishuruheshuchushuchugongneng。meishiyongdanpianjideyigegongneng,jiuyaoduikongzhigaigongnengdejicunqijinxingshezhi,zhejiushidanpianjibianchengdetedian,qianwanbuyaopamafan,suoyoudedanpianjidoushizheyang。
第二步:定時器的使用
學會定時器的使用,就可以用單片機實現時序電路,時序電路的功能是強大的,在工業、家用電氣設備的控製中有很多應用,例如,可以用單片機實現一個具有一個按鈕的樓道燈開關,該開關在按鈕按下一次後,燈亮3分鍾後自動滅,當按鈕連續按下兩次後,燈常亮不滅,當按鈕按下時間超過2s,則燈滅。數字集成電路可以實現時序電路,可編程邏輯器件(PLD)可以實現時序電路,可編程控製器(PLC)也可以實現時序電路,但是隻有單片機實現起來最簡單,成本最低。
定時器的使用是非常重要的,邏輯加時間控製是單片機使用的基礎。
第三步:中斷
單dan片pian機ji的de特te點dian是shi一yi段duan程cheng序xu反fan複fu執zhi行xing,程cheng序xu中zhong的de每mei個ge指zhi令ling的de執zhi行xing都dou需xu要yao一yi定ding的de執zhi行xing時shi間jian,如ru果guo程cheng序xu沒mei有you執zhi行xing到dao某mou指zhi令ling,則ze該gai指zhi令ling的de動dong作zuo就jiu不bu會hui發fa生sheng,這zhe樣yang就jiu會hui耽dan誤wu很hen多duo快kuai速su發fa生sheng的de事shi情qing,例li如ru,按an鈕niu按an下xia時shi的de下xia降jiang沿yan。要yao使shi單dan片pian機ji在zai程cheng序xu正zheng常chang運yun行xing過guo程cheng中zhong,對dui快kuai速su動dong作zuo做zuo出chu反fan應ying,就jiu必bi須xu使shi用yong單dan片pian機ji的de中zhong斷duan功gong能neng,該gai功gong能neng就jiu是shi在zai快kuai速su動dong作zuo發fa生sheng後hou,單dan片pian機ji中zhong斷duan正zheng常chang運yun行xing的de程cheng序xu,處chu理li快kuai速su發fa生sheng的de動dong作zuo,處chu理li完wan成cheng後hou,在zai返fan回hui執zhi行xing正zheng常chang的de程cheng序xu。中zhong斷duan功gong能neng使shi用yong中zhong的de困kun難nan是shi需xu要yao精jing確que地di知zhi道dao什shen麼me時shi候hou不bu允yun許xu中zhong斷duan發fa生sheng(屏蔽中斷)、什麼時候允許中斷發生(開中斷),需要設置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應該幹什麼,中斷完成後,程序應該幹什麼等等。
中(zhong)斷(duan)學(xue)會(hui)後(hou),就(jiu)可(ke)以(yi)編(bian)製(zhi)更(geng)複(fu)雜(za)結(jie)構(gou)的(de)程(cheng)序(xu),這(zhe)樣(yang)的(de)程(cheng)序(xu)可(ke)以(yi)幹(gan)著(zhe)一(yi)件(jian)事(shi),監(jian)視(shi)著(zhe)一(yi)件(jian)事(shi),一(yi)旦(dan)監(jian)視(shi)的(de)事(shi)情(qing)發(fa)生(sheng),就(jiu)中(zhong)斷(duan)正(zheng)在(zai)幹(gan)的(de)事(shi)情(qing),處(chu)理(li)監(jian)視(shi)的(de)事(shi)情(qing),當(dang)然(ran)也(ye)可(ke)以(yi)監(jian)視(shi)多(duo)個(ge)事(shi)情(qing),形(xing)象(xiang)的(de)比(bi)喻(yu),中(zhong)斷(duan)功(gong)能(neng)使(shi)單(dan)片(pian)機(ji)具(ju)有(you)吃(chi)著(zhe)碗(wan)裏(li)的(de),看(kan)著(zhe)鍋(guo)裏(li)的(de)功(gong)能(neng)。
以上三步學會,就相當於降龍十八掌武功,會了三掌了,可以勉強護身。
第四步:與PC機進行RS232通信
單片機都有USART接口,特別是MSP430係列中很多型號,都具有兩個USART接口。USART接口不能直接與PC機的RS232接口連接,它們之間的邏輯電平不同,需要使用一個MAX3232芯片進行電平轉換。
USART接口的使用是非常重要的,通過該接口,可以使單片機與PC機之間交換信息,雖然RS232通信並不先進,但是對於接口的學習是非常重要的。正確使用USART接口,需要學習通信協議,PC機的RS232接口編程等等知識。試想,單片機實驗板上的數據顯示在PC機監視器上,而PC機的鍵盤信號可以在單片機實驗板上得到顯示,將是多麼有意思的事情啊!
第五步:學會A/D轉換
MAP430單片機帶有多通道12位A/D轉換器,通過這些A/D轉換器可以使單片機操作模擬量,顯示和檢測電壓、電流等信號。學習時注意模擬地與數字地、參考電壓、采樣時間,轉換速率,轉換誤差等概念。
使用A/D轉換功能的簡單的例子是設計一個電壓表。
第六步:學會PCI、I2C接口和液晶顯示器接口
這些接口的使用可以使單片機更容易連接外部設備,在擴展單片機功能方麵非常重要。
第七步:學會比較、捕捉、PWM功能
這些功能可以使單片機能夠控製電機,檢測轉速信號,實現電機調速器等控製起功能。
如果以上七步都學會,就可以設計一般的應用係統,相當於學會十招降龍十八掌,可以出手攻擊了。
第八步:學習USB接口、TCP/IP接口、各種工業總線的硬件與軟件設計學習USB接口、TCP/IP接口、各種工業總線的硬件與軟件設計是非常重要的,因為這是當前產品開發的發展方向。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 三星上演罕見對峙:工會集會討薪,股東隔街抗議
- 摩爾線程實現DeepSeek-V4“Day-0”支持,國產GPU適配再提速
- 築牢安全防線:智能駕駛邁向規模化應用的關鍵挑戰與破局之道
- GPT-Image 2:99%文字準確率,AI生圖告別“鬼畫符”
- 機器人馬拉鬆的勝負手:藏在主板角落裏的“時鍾戰爭”
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
鑒頻器
江蘇商絡
交流電機
腳踏開關
接觸器接線
接近開關
接口IC
介質電容
介質諧振器
金屬膜電阻
晶體濾波器
晶體諧振器
晶體振蕩器
晶閘管
精密電阻
精密工具
景佑能源
聚合物電容
君耀電子
開發工具
開關
開關電源
開關電源電路
開關二極管
開關三極管
科通
可變電容
可調電感
可控矽
空心線圈

