片機的學習經(jīng)驗附學習總結(jié)_第1頁
片機的學習經(jīng)驗附學習總結(jié)_第2頁
片機的學習經(jīng)驗附學習總結(jié)_第3頁
片機的學習經(jīng)驗附學習總結(jié)_第4頁
片機的學習經(jīng)驗附學習總結(jié)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

20/2051單片機的學習經(jīng)驗(附學習總結(jié))OFweek\o"工控網(wǎng)"工控網(wǎng)訊:作為一名電子技術(shù)從業(yè)人員,你學過單片機嗎?你會運用單片機嗎?我想你一定學過,但不一定會運用。因為學習單片機比學習其他學科需要付出更多的努力和代價,不僅要學習理論知識還要練習實際操作,而且主要是在實際操作中才能真正學到單片機技術(shù)。此外,學習單片機還需要投入一定的學習成本,隨著你學習知識的擴展成本還會增加。單片機作為一種簡單的控制器在生活中有這廣泛的應用,當然在工業(yè)型單片機在生產(chǎn)中也扮演著很重要的角色,所以對于一個學習\o"自動化"自動化的\o"工控"工控人來說,學習單片機是非常有必要的。單片機的學習經(jīng)驗1、學習電子技術(shù)基礎知識,如電路、模擬電路和數(shù)字電路。這是學習電類相關(guān)專業(yè)的基礎。2、學習計算機硬件知識,如計算機的簡單組成原理(只需要了解),當然要知道CPU是什么?總線是什么?一些相關(guān)概念。3、程序編寫的相關(guān)知識,主要是匯編語言和C語言。了解結(jié)構(gòu)化語言的程序設計方法,也就是三種結(jié)構(gòu)(順序結(jié)構(gòu)、分支結(jié)構(gòu)(或稱選擇結(jié)構(gòu))、循環(huán)結(jié)構(gòu)),會一些常用的算法。4、以上是基礎,有了這些基礎,學習51單片機就只要花幾周的時間就能上手。但學習單片機時,主要從單片機的存儲器開始,其中特殊功能寄存器是重點,學會之后,就可以學習單片機的基礎部分了,主要是四個部分:51單片機I/O口的使用、中斷的使用、定時器的使用、外部器件的擴展。這些部分都可以用軟件仿真(可以用proteus軟件)。5、可以買一兩塊廉價的單片機開發(fā)板,用廉價的方法(可以用熱轉(zhuǎn)印法做PCB板)仿制一些更簡單的實驗功能板,開始做板時千萬不做得太復雜,我?guī)н^的很多學生中,有少部分人總是覺得太簡單了,做個復雜的,結(jié)果做了個把星期,沒有成功,最后只有放棄。還有一點很重要,就是用PROTEUS仿真時,最好只做單一功能的仿真,否則可能與實際在硬件上做的結(jié)果不一樣。6、從網(wǎng)上下載一些實例進行研究學習,不斷提高。學習單片機的步驟學習單片機的動機不外乎有四種:一是為興趣愛好而學,二是為專業(yè)而學;三是為飯碗而學;四是在工作中被逼而學。不管是哪種動機,因主修專業(yè)的不同以及電子基礎的深淺不同,對于不同的人可能采用不同的學習方法,根據(jù)筆者的親身學習經(jīng)驗和教授徒弟學習的感受,提出筆者的學習方法和步驟。第一步:基礎理論知識學習基礎理論知識包括模擬電路、數(shù)字電路和C語言知識。模擬電路和數(shù)字電路屬于抽象學科,要把它學好還得費點精神。在你學習單片機之前,覺得模擬電路和數(shù)字電路基礎不好的話,不要急著學習單片機,應該先回顧所學過的模擬電路和數(shù)字電路知識,為學習單片機加強基礎。否則,你的單片機學習之路不僅會很艱難和漫長,還可能半途而廢。筆者始終認為,扎實的電子技術(shù)基礎是學好單片機的關(guān)鍵,直接影響單片機學習入門的快慢。有些同學覺得單片機很難,越學越復雜,最后學不下去了。有的同學看書時似乎明白了,可是動起手來卻一塌糊涂,究其原因就是電子技術(shù)基礎沒有打好,首先被表面知識給困惑了。單片機屬于數(shù)字電路,其概念、術(shù)語、硬件結(jié)構(gòu)和原理都源自數(shù)字電路,如果數(shù)字電路基礎扎實,對復雜的單片機硬件結(jié)構(gòu)和原理就能容易理解,就能輕松地邁開學習的第一步,自信心也會樹立起來。相反,基礎不好,這個看不懂那個也弄不明白,越學問題越多,越學越?jīng)]有信心。如果你覺得單片機很難,那就應該先放下單片機教材,去重溫數(shù)字電路,搞清楚觸發(fā)器、寄存器、門電路、COMS電路、時序邏輯和時序圖、進制轉(zhuǎn)換等理論知識。理解了這些知識之后再去看看單片機的結(jié)構(gòu)和原理,我想你會大徹大悟,信心倍增。模擬電路是電子技術(shù)最基礎的學科,她讓你知道什么是電阻、電容、電感、二極管、三極管、場效應管、放大器等等以及它們的工作原理和在電路中的作用,這是學習電子技術(shù)必須掌握的基礎知識。一般是先學習模擬電路再去學習數(shù)字電路。扎實的模擬電路基礎不僅讓你容易看懂別人設計的電路,而且讓你的設計的電路更可靠,提高產(chǎn)品質(zhì)量。C語言知識并不難,沒有任何編程基礎的人都可以學,在我看來,初中生、高中生、中專生、大學生都能學會。當然,數(shù)學基礎好、邏輯思維好的人學起來相對輕松一些。C語言需要掌握的知識就那么3個條件判斷語句、3個循環(huán)語句、3個跳轉(zhuǎn)語句和1個開關(guān)語句。別小看這10個語句,用他們組合形成的邏輯要多復雜有多復雜。學習時要一條語句一條語句的學,學一條活用一條,全部學過用過這些關(guān)鍵語句后,相信你的C基礎建立了。當基礎打好以后,你會感覺到單片機不再難學了,而且越學越起勁。當單片機乖乖的依照你的邏輯思維和算法去執(zhí)行指令,實現(xiàn)預期控制效果的時候,成就感會讓你信心十足、夜以續(xù)日、廢寢忘食的投入到單片機的世界里??梢赃@么說,扎實的電子技術(shù)基礎和C語言基礎能增強學習單片機信心,較快掌握單片機技術(shù)。第二步:單片機實踐這是真正學習單片機的過程,既讓人興奮又讓人疲憊,既讓人無奈又讓人不服,既讓人孤獨又讓人充實,既讓人氣憤又讓人欣慰,既有失落感又有成就感。。。其中的酸甜苦辣只有學過的人深有體會。思想上要有刻苦學習的決心,硬件上要有一套完整的學習開發(fā)工具,軟件上要注重理論和實踐相結(jié)合。1.有刻苦學習的決心首先,明確學習目的。先認真回答兩個問題:我學單片機來做什么?需要多長時間把它學會?這是你學單片機的動力。沒有動力,我想你堅持不了多久。其次,端正學習心態(tài)。單片機學習過程是枯燥乏味、孤獨寂寞的過程。要知道,學習知識沒有捷徑,只有循序漸進,腳踏實地,一步一個腳印,才能學到真功夫。再次,要多動腦勤動手。單片機的學習具有很強的實踐性,是一門很注重實際動手操作的技術(shù)學科。不動手實踐你是學不會單片機的。最后,虛心交流。在單片機學習過程中每個人都會遇到無數(shù)不能解決的問題,需要你向有經(jīng)驗的過來人虛心求教,否則,一味的自己埋頭摸索會走許多彎路,浪費很多時間。2.有一套完整的學習開發(fā)工具學習單片機是需要成本的。必須有一臺電腦、一塊單片機開發(fā)板(如果開發(fā)板不能直接下載程序代碼的話還得需要一個編程器)、一套視頻教程、一本單片機教材和一本C語言教材。電腦是用來編寫和編譯程序,并將程序代碼下載到單片機上;開發(fā)板用來運行單片機程序,驗證實際效果;視頻教程就是手把手教你單片機開發(fā)環(huán)境的使用、單片機編程和調(diào)試。對于單片機初學者來說,視頻教程必須看,要不然,哪怕把教材看了幾遍,還是不知道如何下手,尤其是院校里的單片機教材,學了之后,面對真正的單片機時可能還是束手無策;單片機教材和C語言教材是理論學習資料,備忘備查。不要為了節(jié)約成本不用開發(fā)板而光用Protur軟件仿真調(diào)試,這和紙上談兵沒什么區(qū)別。3.要注重理論和實踐相結(jié)合單片機C語言編程理論知識并不深奧,光看書不動手也能明白。但在實際編程的時候就沒那么簡單了。一個程序的形成不僅需要有C語言知識,更多需要融入你個人的編程思路和算法。編程思路和算法決定一個程序的優(yōu)劣,是單片機編程的大問題,只有在實際動手編寫的時候才會有深切的感悟。一個程序能否按照你的意愿正常運行就要看你的思路和算法是否正確、合理。如果程序不正常則要反復調(diào)試(檢查、修改思路和算法),直到成功。這個過程耗時、費腦、疲精神,意志不堅強者往往被絆倒在這里半途而廢。學習編寫程序應該按照以下過程學習,效果會更好??吹嚼填}目先試著構(gòu)思自己的編程思路,然后再看教材或視頻教程里的代碼,研究人家的編程思路,注意與自己思路的差異;接下來就照搬人家的思路親自動手編寫這個程序,領會其中每一條語句的作用;對有疑問的地方試著按照自己的思路修改程序,比較程序運行效果,領會其中的奧妙。每一個例程都堅持按照這個過程學習,你很快會找到編程的感覺,取其精華去其糟粕,久而久之會形成你獨特的編程思想。當然,剛開始,看別人的程序源代碼就像看天書一樣,只要硬著頭皮看,看到不懂的關(guān)鍵字和語句就翻書查閱、對照。只要能堅持下來,學習收獲會事半功倍。在實踐過程中不僅要學會別人的例程,還要在別人的程序上改進和拓展,讓程序產(chǎn)生更強大的功能。同時,還要懂得通過查閱芯片數(shù)據(jù)手冊(DATASHEET)里有關(guān)芯片命令和數(shù)據(jù)的讀寫時序來核對別人例程的可靠性,如果你覺得例程不可靠就把它修改過來,成為是你自己的程序。不僅如此,自己應該經(jīng)常找些項目來做,以鞏固所學的知識和積累更多的經(jīng)驗。第三步:單片機硬件設計當編寫自己的程序信手拈來、閱讀別人的程序能夠發(fā)現(xiàn)問題的時候,說明你的單片機編程水平相當不錯了。接下來就應該研究的硬件了。硬件設計包括電路原理設計和PCB板設計。學習做硬件要比學習做軟件麻煩,成本更高,周期更長。但是,學習單片機的最終目的是做產(chǎn)品開發(fā)軟件和硬件相結(jié)合形成完整的\o"控制系統(tǒng)"控制系統(tǒng)。所以,做硬件也是學習單片機技術(shù)的一個必學內(nèi)容。電路原理設計涉及到各種芯片的應用,而這些芯片外圍電路的設計、典型應用電路和與單片機的連接等在芯片數(shù)據(jù)手冊(DATASHEET)都能找到答案,前提是要看得懂全英文的數(shù)據(jù)手冊。否則,照搬別人的設計永遠落在別人的后面,你做的產(chǎn)品就沒有創(chuàng)意。電子技術(shù)領域的第一手資料(DATASHEET)都是英文,從第一手資料里你所獲得的知識可能是在教科書、網(wǎng)絡文檔和課外讀物等所沒有的知識。雖然有些資料也都是在DATASHEET的基礎上撰寫的,但內(nèi)容不全面,甚至存在翻譯上的遺漏和錯誤。當然,閱讀DATASHEET需要具備一定的英文閱讀能力,這也是阻礙單片機學習者晉級的絆腳石。良好的英文閱讀能力能讓你在單片機技術(shù)知識的海洋里自由遨游。做PCB板就比較簡單了。只要懂得使用Protel軟件或AltimDesigner軟件就沒問題了。但要想做的板子布局美觀、布線合理還得費一番功夫了。嫻熟的單片機C語言編程、會使用Protel軟件或AltimDesigner軟件設計PCB板和具備一定的英文閱讀能力,你就是一個遇強則強的單片機高手了。學習單片機的內(nèi)容第一步:數(shù)字I/O的使用使用按鈕輸入信號,發(fā)光二極管顯示輸出電平,就可以學習引腳的數(shù)字I/O功能,在按下某個按鈕后,某發(fā)光二極管發(fā)亮,這就是數(shù)字電路中組合邏輯的功能,雖然很簡單,但是可以學習一般的單片機編程思想,例如,必須設置很多寄存器對引腳進行初始化處理,才能使引腳具備有數(shù)字輸入和輸出輸出功能。每使用單片機的一個功能,就要對控制該功能的寄存器進行設置,這就是單片機編程的特點,千萬不要怕麻煩,所有的單片機都是這樣。IO口的使用,最簡單的就是點亮流水燈啦~Comeon!為了讓沒有單片機的同學也能順利學習,我們可以用仿真軟件來做,有視頻喔,學習更簡單,麻麻再也不用擔心了,哈哈。請看:帖子鏈接第二步:定時器和按鍵的使用學會定時器的使用,就可以用單片機實現(xiàn)時序電路,時序電路的功能是強大的,在工業(yè)、家用電氣設備的控制中有很多應用,例如,可以用單片機實現(xiàn)一個具有一個按鈕的樓道燈開關(guān),該開關(guān)在按鈕按下一次后,燈亮3分鐘后自動滅,當按鈕連續(xù)按下兩次后,燈常亮不滅,當按鈕按下時間超過2s,則燈滅。數(shù)字集成電路可以實現(xiàn)時序電路,可編程邏輯器件(PLD)可以實現(xiàn)時序電路,可編程控制器(\o"PLC"PLC)也可以實現(xiàn)時序電路,但是只有單片機實現(xiàn)起來最簡單,成本最低。定時器的使用是非常重要的,邏輯加時間控制是單片機使用的基礎。按鍵,就不用說了吧,應用很廣泛的,不多說,參見帖子,注意,按鍵掃描程序是用if還是while喔~最近在某論壇發(fā)現(xiàn)了一種新型按鍵識別思路(利用AD),也可以看看~第三步:中斷單片機的特點是一段程序反復執(zhí)行,程序中的每個指令的執(zhí)行都需要一定的執(zhí)行時間,如果程序沒有執(zhí)行到某指令,則該指令的動作就不會發(fā)生,這樣就會耽誤很多快速發(fā)生的事情,例如,按鈕按下時的下降沿。要使單片機在程序正常運行過程中,對快速動作做出反應,就必須使用單片機的中斷功能,該功能就是在快速動作發(fā)生后,單片機中斷正常運行的程序,處理快速發(fā)生的動作,處理完成后,在返回執(zhí)行正常的程序。中斷功能使用中的困難是需要精確地知道什么時候不允許中斷發(fā)生(屏蔽中斷)、什么時候允許中斷發(fā)生(開中斷),需要設置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應該干什么,中斷完成后,程序應該干什么等等。中斷學會后,就可以編制更復雜結(jié)構(gòu)的程序,這樣的程序可以干著一件事,監(jiān)視著一件事,一旦監(jiān)視的事情發(fā)生,就中斷正在干的事情,處理監(jiān)視的事情,當然也可以監(jiān)視多個事情,形象的比喻,中斷功能使單片機具有吃著碗里的,看著鍋里的功能。以上三步學會,就相當于降龍十八掌武功,會了三掌了,可以勉強護身。第四步:與PC機進行RS232通信單片機都有USART接口,特別是MSP430系列中很多型號,都具有兩個USART接口。USART接口不能直接與PC機的RS232接口連接,它們之間的邏輯電平不同,需要使用一個MAX3232芯片進行電平轉(zhuǎn)換。USART接口的使用是非常重要的,通過該接口,可以使單片機與PC機之間交換信息,雖然RS232通信并不先進,但是對于接口的學習是非常重要的。正確使用USART接口,需要學習通信協(xié)議,PC機的RS232接口編程等等知識。試想,單片機實驗板上的數(shù)據(jù)顯示在PC機監(jiān)視器上,而PC機的鍵盤信號可以在單片機實驗板上得到顯示,將是多么有意思的事情啊!第五步:學會A/D與D/ASTC12C5A60S2單片機帶有多通道10位A/D轉(zhuǎn)換器,通過這些A/D轉(zhuǎn)換器可以使單片機操作模擬量,顯示和檢測電壓、電流等信號。學習時注意模擬地與數(shù)字地、參考電壓、采樣時間,轉(zhuǎn)換速率,轉(zhuǎn)換誤差等概念。使用A/D轉(zhuǎn)換功能的簡單的例子是設計一個電壓表。DA的芯片承建的有,DAC8032,DAC8032請看:Proteus仿真鏈接第六步:學會PCI、I2C接口和液晶顯示器接口這些接口的使用可以使單片機更容易連接外部設備,在擴展單片機功能方面非常重要。那我們來看一下如何實現(xiàn)LCD1602的顯示吧:帖子鏈接+仿真鏈接第七步:學會比較、捕捉、PWM功能這些功能可以使單片機能夠控制\o"電機"電機,檢測轉(zhuǎn)速信號,實現(xiàn)電機調(diào)速器等控制起功能。如果以上七步都學會,就可以設計一般的應用系統(tǒng),相當于學會十招降龍十八掌,可以出手攻擊了。第八步:學習USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設計學習USB接口、TCP/IP接口、各種工業(yè)總線(CAN總線、SPI總線)的硬件與軟件設計是非常重要的,因為這是當前產(chǎn)品開發(fā)的發(fā)展方向。到此為止,相當于學會15招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機大蝦了。第九步:學習無線傳輸?shù)挠布c軟件設計PT2262/PT2272是臺灣普城公司生產(chǎn)的一種CMOS工藝制造的低功耗低價位通用編解碼電路,PT2262/PT2272最多可有12位(A0-A11)三態(tài)地址端管腳(懸空,接高電平,接低電平),任意組合可提供531441地址碼,PT2262最多可有6位(D0-D5)數(shù)據(jù)端管腳,設定的地址碼和數(shù)據(jù)碼從17腳串行輸出,可用于無線遙控發(fā)射電路。編碼芯片PT2262發(fā)出的編碼信號由:地址碼、數(shù)據(jù)碼、同步碼組成一個完整的碼字,解碼芯片PT2272接收到信號后,其地址碼經(jīng)過兩次比較核對后,VT腳才輸出高電平,與此同時相應的數(shù)據(jù)腳也輸出高電平,如果發(fā)送端一直按住按鍵,編碼芯片也會連續(xù)發(fā)射。當發(fā)射機沒有按鍵按下時,PT2262不接通電源,其17腳為低電平,所以315MHz的高頻發(fā)射電路不工作,當有按鍵按下時,PT2262得電工作,其第17腳輸出經(jīng)調(diào)制的串行數(shù)據(jù)信號,當17腳為高電平期間315MHz的高頻發(fā)射電路起振并發(fā)射等幅高頻信號,當17腳為低平期間315MHz的高頻發(fā)射電路停止振蕩,所以高頻發(fā)射電路完全受控于PT2262的17腳輸出的數(shù)字信號,從而對高頻電路完成幅度鍵控(ASK調(diào)制)相當于調(diào)制度為100%的調(diào)幅。51單片機學習總結(jié)1、什么是單片機在一片集成電路芯片上集成微處理器、存儲器、I/O接口電路,從而構(gòu)成了單芯片微型計算機,即單片機。Intel公司推出了MCS-51系列單片機:集成8位CPU、4K字節(jié)ROM、128字節(jié)RAM、4個8位并口、1個全雙工串行口、2個16位定時/計數(shù)器。尋址范圍64K,并有控制功能較強的布爾處理器。2、單片機的作用用到單片機的項目經(jīng)驗介紹手持糧庫溫度尋檢設備畢設答辯打分器電話臺燈自動感應水龍頭凡是與控制或簡單計算有關(guān)的電子設備都可以用單片機來實現(xiàn),再根據(jù)具體實際情況選擇不同性能的單片機,如:atmel,stc,pic,avr,凌陽,80C51,arm等工業(yè)\o"自動化"自動化:數(shù)據(jù)采集、測控技術(shù)。智能儀器儀表:數(shù)字示波器、數(shù)字信號源、數(shù)字萬用表、感應電流表等。消費類電子產(chǎn)品:洗衣機、電冰箱、空調(diào)機、電視機、微波爐、手機、IC卡、汽車電子設備等。通訊方面:調(diào)制解調(diào)器、程控交換技術(shù)、手機、小靈通等。武器裝備:飛機、軍艦、坦克、導彈、航天飛機、魚雷制導、智能武器等。等等…..3、學習單片機之前預備知識(1)數(shù)字電路中只有兩種電平:高和低定義單片機為TTL電平:高+5V低0V(2)RS232電平:計算機的串口高-12V低+12V所以計算機與單片機之間通訊時需要加電平轉(zhuǎn)換芯片(3)進制轉(zhuǎn)換與邏輯、算術(shù)運算(4)C語言基礎(5)80C51了解80C51是MCS-51系列中的一個典型品種;其它廠商以8051為基核開發(fā)出的CMOS工藝單片機產(chǎn)品統(tǒng)稱為80C51系列。(6)總線(BUS)是計算機各部件之間傳送信息的公共通道。微機中有內(nèi)部總線和外部總線兩類。內(nèi)部總線是CPU內(nèi)部之間的連線。外部總線是指CPU與其它部件之間的連線。外部總線有三種:數(shù)據(jù)總線DB(DataBus),地址總線AB(AddressBus)和控制總線CBControlBus)。(7)CPU:由運算和控制邏輯組成,同時還包括中斷系統(tǒng)和部分外部特殊功能寄存器;RAM:用以存放可以讀寫的數(shù)據(jù),如運算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù);ROM:用以存放程序、一些原始數(shù)據(jù)和表格;I/O口:四個8位并行I/O口,既可用作輸入,也可用作輸出;T/C:兩個定時/記數(shù)器,既可以工作在定時模式,也可以工作在記數(shù)模式;五個中斷源的中斷\o"控制系統(tǒng)"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論