單片機學(xué)習(xí)總結(jié)(匯總21篇)

格式:DOC 上傳日期:2023-11-27 13:45:11
單片機學(xué)習(xí)總結(jié)(匯總21篇)
時間:2023-11-27 13:45:11     小編:GZ才子

在寫總結(jié)時,我們可以對自己的表現(xiàn)進行客觀的評價和分析,發(fā)現(xiàn)問題并提出改進的措施。在寫總結(jié)之前,可以先整理出要總結(jié)的內(nèi)容和要點,以確保思路清晰。請大家閱讀以下范文,并思考其中的觀點和寫作技巧。

單片機學(xué)習(xí)總結(jié)篇一

優(yōu)秀作文推薦:《單片機》這門課程我已經(jīng)學(xué)了一個學(xué)期了,在這一個學(xué)期的學(xué)習(xí)過程中,我一開始不怎么懂得編程,但慢慢的我現(xiàn)在已經(jīng)不僅會讀程序還會寫程序了。真為自己一個學(xué)期來努力學(xué)到的單片機知識只是而感到高興。

怎么學(xué)單片機?也??吹接腥苏f學(xué)了好幾個月可就是沒有什么進展。當(dāng)然,受限于每個人受到的教育水平不同和個人理解能力的差異,學(xué)習(xí)起來會有快慢之分,但我感覺最重的就是學(xué)習(xí)方法。一個好的學(xué)習(xí)方法,能讓你事半功倍,這里說說我學(xué)習(xí)單片機的經(jīng)歷和方法。

我覺得學(xué)習(xí)單片機首先要懂得c語言,因為單片機大多說都是靠程序來實現(xiàn)的,如果看不懂程序或則不懂的編程是很難學(xué)會單片機的。學(xué)習(xí)單片機首先要明白一個程序是怎么走的,要完全懂得程序每一個步驟的意思。其次要懂得每一條指令的意思,不能盲目地去靠背指令,這是記得不牢靠的,最主要的還是靠了解。學(xué)習(xí)單片機最主要的對89c51芯片內(nèi)部結(jié)構(gòu)有全方面的,只要了解了89c51才能知道單片機實現(xiàn)什么樣的功能和作用,才能對單片機有更深一步的了解。通過一個學(xué)期《單片機》這門課程的學(xué)習(xí),我也從中有了不少心得和體會想和大家分享一下。

萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,不要說單片機的程序全是英文,自己看不懂。遇到困難要一件件攻克,不懂指令就要勤奮看書,不懂程序就先學(xué)它,這方面網(wǎng)上教程很多,隨便找找看一下,做幾次就懂了。然后可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養(yǎng)一下自己的感覺,知道寫程序是怎么一回事,無論寫大程序還是小程序,要做的工序不會差多少。然后建個程序,加入項目中,再寫代碼、編譯、運行。必須熟悉這一套工序。個人認(rèn)為,一塊學(xué)習(xí)板還是必要的,寫好程序在上面運行一下看結(jié)果,學(xué)習(xí)效果會好很多,仿真器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學(xué)不會的。

知識點用到才學(xué),不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學(xué)了后面的,前面的估計也快忘光了,所以,最好結(jié)合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學(xué)好就是了,這是把整本書化整為零,一小點一小點的啃。程序不要光看不寫,一定要自己寫一次。最開始的時候,什么都不懂,可以抄人家的程序過來,看看每一句是干什么用的,達(dá)到什么目的,運行后有什么后果??疵靼琢酥?,就要自己寫一次,你會發(fā)現(xiàn),原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距。當(dāng)你自己能寫出來的.時候,說明你就真的懂了。

必須學(xué)會掌握調(diào)試程序的方法。不少人寫程序,把代碼寫好了,然后一運行,不是自己想要的結(jié)果,就暈了,然后跑到論壇上發(fā)個帖子,把程序一貼,問:為什么我的程序不能正常運行?然后就等別人來給自己分析。這是一種很不好的行為,應(yīng)該自己學(xué)會發(fā)現(xiàn)問題和學(xué)會如何解決問題。這就需要學(xué)習(xí)調(diào)試程序的方法,比如keil里,可以下斷點啦,查看寄存器內(nèi)容等等,這些都是調(diào)試程序的手段,當(dāng)你發(fā)現(xiàn)你寫的程序運行結(jié)果和你想象中不一樣的時候,你可以單步,也可以下斷點,然后跟蹤,查看各相關(guān)寄存器內(nèi)容,看看程序運行過中是不是有什么偏差,找出影響結(jié)果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學(xué)到的知識是書上得不到的。

找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達(dá)到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結(jié)果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學(xué)會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復(fù)制到自己的程序中,可以說,這不是一種學(xué)習(xí)的態(tài)度,無助于你編程水平的提高。

我?guī)缀醪辉趺纯慈思业拇a,多數(shù)時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以。要從代碼中看出別人處理問題的思路,是相當(dāng)困難的,特別是大型的程序,看起來是非常的累人。所以現(xiàn)在我也明白了,以前讀書時說的程序流程圖很重要,現(xiàn)在算是知道了。當(dāng)你知道一個問題怎么去解決了,那么剩下的只是你安排代碼去完成,這就已經(jīng)不是什么問題了。

開動腦筋,運用多種方法,不斷優(yōu)化自己的程序。想想用各種不同方法來實現(xiàn)同一功能。這是一個練習(xí)和提高的過程,一個問題,你解決了,那么你再想想,能不能換種寫法,也可以實現(xiàn)同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執(zhí)行效率更高,這個過程,就是一個進步的過程。很多知識和經(jīng)驗的獲得,并不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經(jīng)驗才能得到積累,編程水平才能有所提高。

看別人的程序,學(xué)習(xí)人家的思路。這個在學(xué)習(xí)初期是很有用,通過看別人的程序,特別是老師寫出的具有一定水平的程序,可以使自己編程水平得到迅速的提高。同時,也可以結(jié)合別人的編程手法,與自己的想法融合在一起,寫出更高水平的程序,從中得到進步。但要注意,切忌將學(xué)習(xí)變成抄襲,更不是抄襲完了就認(rèn)為自己學(xué)會了,這樣做只會使你退步。

嘗試編寫一下綜合應(yīng)用的程序。從流水燈學(xué)起,到動態(tài)掃描,再到中斷,那么,你可以試試寫一下時鐘這種綜合性應(yīng)用的程序,不要小看時鐘,要寫好它不是一件容易的事情,它包括了單片機大部分的知識,比如有按鍵(io讀?。討B(tài)掃描(io輸出)、中斷等,如何協(xié)調(diào)好各功能模塊正常工作,才是編程者需要學(xué)習(xí)的地方,當(dāng)你單獨寫一個功能的時候,比如按鍵讀取,你可能感覺很容易,因為你的程序什么也不做,只是讀按鍵。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數(shù)碼管既能顯示,又要去處理按鍵讀取,怎么使這兩部分都正常工作,這就是一個協(xié)調(diào)過程。當(dāng)你有了這個處理協(xié)調(diào)能力,你就算是入門了。

著重于培養(yǎng)解決問題的能力,而不是具體看自己編寫了多少程序或者做過什么。“學(xué)單片機重點在于學(xué)習(xí)解決問題的思路,而不是局限于具體的芯片類型和語言”這一直是我的座右銘,是我學(xué)單片機學(xué)習(xí)單片機之后感悟出來的。真正的能力不是你曾經(jīng)編寫過多少個可以實現(xiàn)的程序,而應(yīng)該是:“遇到?jīng)]有解決過的問題,能利用自己已學(xué)的知識,迅速找到解決問題的方法。”這個才是能力。

面對一個新程序時,多自己開動腦筋,不要急于找別人的程序。

有不少人面對一個新程序時,第一步想到的就是網(wǎng)上找別人寫過的程序,然后抄一段,自己再寫幾句,湊在一起就完成任務(wù),這雖然可能是省時間,但絕對不利你的學(xué)習(xí)。當(dāng)你接到一個程序時,應(yīng)該先自己構(gòu)思一下整個程序的架構(gòu),想想如何來完成。有可能的話,畫一個流程圖,簡單的可以畫在腦子里,對程序中用到的數(shù)據(jù)、變量有一個初步的安排,然后自己動手去寫,遇到實在沒辦法解決的地方,再去請教老師或同學(xué),或看別人是怎么處理的,這樣首先起碼你自己動過腦想過,自己有自己的思路。如果你一開始就看別人的程序,你的思維就會受限在別人的思維里,自己想再創(chuàng)新就更難了,這樣你自己永遠(yuǎn)也沒辦法提高,因為你是走在別人的影子里。

學(xué)會提問題。一般來說,學(xué)習(xí)過程中,你遇上的問題,多數(shù)人也有遇上的,所以如果有什么不懂,你可以去問老師。我覺得學(xué)習(xí)單片機最主要的要多提問,對于一個自己不是太懂的程序,自己一定要多提問幾遍,這樣不但有利于加深自己的印象還能從中學(xué)到不少別人的方法。

經(jīng)過一個學(xué)期我對《單片機》這門課程的學(xué)習(xí),不僅讓我懂得了很多程序的編寫,還讓我學(xué)到了很多對自己有用的學(xué)習(xí)方法??偨Y(jié)這個學(xué)期來的我自己的學(xué)習(xí)情況,我覺得自己對編程進步了不少,懂得運用正確的學(xué)習(xí)方法學(xué)習(xí)單片機程序,不再去死記硬背指令了。所以我覺得學(xué)習(xí)要不斷總結(jié)學(xué)習(xí)方法,才能讓自己學(xué)習(xí)不斷進步。

交通信號燈設(shè)計報告。

實驗?zāi)康模簆1口的使用方法,延時程序的編寫。

實驗要求:在一個十字路口分為東西南北走向,信號等按以下的狀態(tài)順序工作:

(1)初始狀態(tài)0,東西、南北紅燈全亮。延時一定時間;

(2)狀態(tài)1,南北綠燈亮通車,東西紅燈,延時一定時間;

(3)狀態(tài)2,南北綠燈閃爍幾次轉(zhuǎn)黃燈,東西仍然紅燈,延時一定。

時間;

(4)狀態(tài)3,南北紅燈,東西綠燈通車,延時一定時間;

(5)狀態(tài)4,南北仍然紅燈,東西綠燈閃爍幾次轉(zhuǎn)黃燈,延時一定。

時間;

(6)循環(huán)至狀態(tài)1,繼續(xù)。

實驗電路和流程框架圖:

(1)硬件電路。

交通燈實訓(xùn)設(shè)備用最小系統(tǒng)板和信號燈組合而成。

2、軟件編程。

若各路口燈亮滅的時間間隔為2s鐘,燈光閃爍時間間隔為0.5s。用軟件延時的方法,晶振頻率12mhz時,一個機器周期為1us。

編寫交通信號燈程序:

編寫主程序,由r7做主程序的計數(shù)器,確定調(diào)用延時時間為0.5s,從而獲得交通燈的亮滅時間。

單片機學(xué)習(xí)總結(jié)篇二

從剛開始接觸單片機,到現(xiàn)在已經(jīng)有4年的時間了,在這期間學(xué)習(xí)和使用了51單片機、飛思卡爾單片機,lpc2138,pic16f887等系列的單片機,每接觸一款單片機,都會經(jīng)歷熟悉其基本開發(fā),然后將其用于項目中的過程,對于如何學(xué)習(xí)一款單片機,自己做了如下的總結(jié)。

大家都知道,51單片機是最容易入門的,不僅因為其編程簡單,更重要的是網(wǎng)上的資料非常豐富。所以一般學(xué)習(xí)單片機開發(fā)的都將51單片機作為入門開發(fā)的首選。我學(xué)習(xí)51單片機的時候是采用這樣的一個步驟進行學(xué)習(xí)的:

第一步(熟悉的過程):買了一款51單片機開發(fā)板,然后就開始了我的學(xué)習(xí)之旅,剛開始的時候沒有去看視頻教程,而是對著一本實驗教材進行學(xué)習(xí),那本實驗教材的名字記不清楚了,但是其內(nèi)容就是圍繞單片機的led燈進行控制,將51單片機內(nèi)部的各個功能部件全部都使用到了,這樣就能使我在很短的時間內(nèi),通過控制led燈的亮、滅熟悉了51單片機的內(nèi)部的各種資源,這時對51單片機也就沒有感到陌生了。所以,個人覺得,學(xué)習(xí)單片機,要從實驗入手,先熟悉單片機再說,開發(fā)語言開始使用的是c語言。

第二步(進階的過程):有了第一步的基礎(chǔ)之后,接下來的便是進階的過程,當(dāng)時,我看的是郭天祥十天學(xué)會單片機的視頻教程,因為這個教程從基礎(chǔ)到復(fù)雜的編程慢慢深入,講的比較的全面,而且也生動,所以那一階段,也是我學(xué)習(xí)單片機進步最快的階段,每次聽課的時候,按照上面的實驗,以及課堂上面調(diào)試程序時出現(xiàn)的一些問題,自己認(rèn)真的在電腦上進行調(diào)試,并分析產(chǎn)生故障的原因,讓我有了一定的開發(fā)基礎(chǔ)。在看完了視頻教程之后,后面又對基礎(chǔ)的知識進行了下補習(xí),主要是看單片機原理性的教材,因為有些細(xì)節(jié)性的東西還是要從教材上面獲得。

第三步(項目實戰(zhàn)的階段):學(xué)習(xí)單片機的時候,雖然也編寫了一些程序,但是那些都是一些很小的模塊程序,并沒有起到綜合應(yīng)用的目的,所以在這之后,我和另外一個學(xué)習(xí)硬件的同學(xué)一起組成了一個小的團隊,進行項目實踐開發(fā),那時候,實驗室的條件比價好,有很多的器件可以自己使用。所以,我們就設(shè)計了我們的第一個作品,基于單片機的液體點滴監(jiān)控系統(tǒng)。做這個系統(tǒng)時,就將以前單片機所學(xué)的知識,做了一個綜合的應(yīng)用,包括有l(wèi)cd1602控制,串口的控制等。

經(jīng)過以上三個步驟的學(xué)習(xí)之后,對于51單片機的開發(fā)基本上就算入門了。而對于其他類型的單片機,如飛思卡爾單片機,lpc2148arm7單片機,pic16f887等,雖然每個系列的功能不一樣,但是最基本的編程思想還是一樣的,不同的可能就是編譯器,程序下載的軟件等差別,所以有了51單片機的開發(fā)基礎(chǔ)之后,學(xué)習(xí)其他單片機所采用的方法就是一個差異化的學(xué)習(xí),學(xué)習(xí)各種單片機不同的地方,這樣,就能很快的熟悉一款新的型號的單片機。

如在學(xué)習(xí)pic16f887這個系列的單片機時,我首先做的工作不是去閱讀數(shù)據(jù)手冊,而是先拿著demo代碼,在編譯軟件中編譯、鏈接、生成hex文件,然后將其下載到開發(fā)板中跑起來,這個過程主要就是學(xué)習(xí)其軟件的基本操作,有了這個基礎(chǔ)之后,就能自己進行編程、測試。之后就是熟悉其編程的模式,所謂其編程模式,就是寄存器的控制,中斷程序的編寫,熟悉了這個操作,也就能控制其他的功能模塊了,如串口的控制、i2c硬件控制器的控制。這些基本的開發(fā)熟悉了之后,接下來便是學(xué)習(xí)差異的'部分,例如pic單片機c語言中,其堆棧深度不能超過8級,超過了之后,將會使得程序出現(xiàn)跑飛的現(xiàn)象。而且內(nèi)存的分配完全要靠自己來控制,分成了4個bank的數(shù)據(jù),bank0,bank1,bank2,bank3等。這些就是每個系列單片機所獨有的一些東西,這些東西需要詳細(xì)的了解,因為它們可能為你的編程帶來很大的便利。

以上就是我學(xué)習(xí)單片機的總結(jié),如果大家有更好的學(xué)習(xí)方法,希望大家能夠提出來,一起討論,共同進步。

人的一生是一個不斷學(xué)習(xí)、不斷成長的過程。轉(zhuǎn)眼間,研究生的學(xué)習(xí)生涯結(jié)束了,走上新的工作崗位。回頭看看,發(fā)現(xiàn)自己不知不覺已經(jīng)走過了五年的單片機學(xué)習(xí)之旅。

在20xx年最初接觸單片機的時候,在我心中覺得51就是單片機,單片機就是51,根本不知道還有其他單片機的存在。那時候老師只教會了我們匯編語言,根本不知道用c語言也可以進行單片機開發(fā)。幸運的是,我加入了單片機興趣小組,在老師的指導(dǎo)下,做了一系列實驗,有“基于ds18b20的溫度采集系統(tǒng)”、“有基于164的移位寄存器的燈光控制系統(tǒng)”、“有步進電機和直流電機的控制系統(tǒng)”。這時候我才發(fā)現(xiàn),這是學(xué)習(xí)單片機的一個最好途徑——在實踐中領(lǐng)悟理論,用理論指導(dǎo)實踐。在上課的整整一個學(xué)期中,雖然老師講得很詳細(xì),但是大部分概念都是到了實際動手做東西的時候才弄明白的。而且在經(jīng)歷了迷惑之后再搞清楚,印象就特別深刻。直到現(xiàn)在我對那些概念和接口都非常清晰。其實我也很慶幸學(xué)習(xí)和使用了兩年多的匯編語言。由于有這些鍛煉,我對單片機底層結(jié)構(gòu)和接口時序就弄得很清楚。在使用c語言開發(fā)的時候,優(yōu)化代碼和處理中斷也就不會太費勁。我覺得,雖然現(xiàn)在絕大部分單片機開發(fā)都使用c語言,甚至有些公司還推出了圖形化編程的工具,這樣對于項目的開展從時間上快了很多,在管理上也規(guī)范了不少,但是從學(xué)習(xí)和想深入掌握單片機精髓的角度來說,還是需要熟練掌握匯編語言的使用。

機會總是青睞于有準(zhǔn)備的人。也許有了前面一段時間的理論和實踐的積累,我才慢慢得到了一些參加科技競賽和參與科研項目的機會。在參加第一屆浙江省機械設(shè)計競賽的時候,我們設(shè)計的由多單片機系統(tǒng)協(xié)調(diào)控制的“月球車”機器人奪得了唯一的一個特等獎。這個競賽給我最大的收獲是我對單片機的認(rèn)識改變了,它不再僅僅是一門學(xué)科了,它是一個可以讓你的創(chuàng)意得到充分發(fā)揮的平臺。后來參與了“基于視頻分劃技術(shù)的鋼卷尺自動切零位機”、“電能表渦杠渦輪嚙合深度檢測系統(tǒng)”、“基于公共電話網(wǎng)的水表集抄數(shù)據(jù)路由器”、“高精度電感微位移測量系統(tǒng)”等一些實際的項目。在這些過程中,我發(fā)現(xiàn)只是精通單片機技術(shù)還不能很好的解決問題。體會最深的是,單片機只有融合到各種應(yīng)用領(lǐng)域中,才能展現(xiàn)它的最大活力。然而單片機僅僅是一個工具而已,要做好單片機系統(tǒng)還需要各種應(yīng)用領(lǐng)域的專業(yè)知識的支持。例如,在“基于視頻分劃技術(shù)的鋼卷尺自動切零位機”中,就需要搞清楚全電視信號的時序,弄明白鋼卷尺切零位機的工作原理,懂得怎么利用疊加在視頻信號中的橫豎線來進行刻度的瞄準(zhǔn)等。沒有這些專業(yè)知識,就算單片機技術(shù)再厲害也不可能做好這個項目。脫離應(yīng)用背景的單片機開發(fā),就像一個沒有靈魂的軀體一樣。

隨著arm的出現(xiàn),我曾經(jīng)認(rèn)為,8位單片機可能在32位單片機的沖擊下就此走進歷史,可是很快就認(rèn)識到我是錯誤的。隨著技術(shù)的革新和時間的推移,各大單片機公司紛紛將單片機朝著片上系統(tǒng)這個方向發(fā)展,集成了現(xiàn)在各種流行的技術(shù)和常用的模塊。我相信,在當(dāng)前國內(nèi)和國外的這個市場中,8位單片機應(yīng)用的市場仍然是充滿生機,活力無限。在市場的不斷變化和技術(shù)的不斷更新過程中,8位單片機也會順應(yīng)潮流不斷革新。

從我五年走過的路來看,單片機學(xué)習(xí)的過程應(yīng)該是一個循序漸進、不斷學(xué)習(xí)、不斷積累的過程,可以分為三個階段。

第一階段:掌握開發(fā)單片機的必備基礎(chǔ)知識。首先是熟練掌握單片機的基本原理,其實各家各門的單片機其基本結(jié)構(gòu)和原理都差不多,特別是共有的知識需要好好理解和掌握。例如,內(nèi)核結(jié)構(gòu)、內(nèi)存分配、中斷處理、定時計數(shù)、串行通信、端口復(fù)用等一些最基本的概念和原理。除此之外,我們還需要具備模擬電子、數(shù)字電子、c語言程序開發(fā)知識以及原理圖和pcb設(shè)計等一些技能。在進行系統(tǒng)開發(fā)的時候,進行原理設(shè)計、pcb布板、程序編寫、系統(tǒng)聯(lián)調(diào)這些工作都是在所難免的。

第二階段:在掌握好一款單片機原理和應(yīng)用的基礎(chǔ)上,開始學(xué)習(xí)其他各家單片機的獨有技術(shù),學(xué)不了那么多也要多了解了解。同時盡可能多地掌握單片機的一些外圍器件和常用電路,以備不時之需。有時候客戶要求低成本,那我們只好選用合鈦、義隆、華邦等這類那個島芯片;如果客戶要求工業(yè)級的性能,那么我們就得從pic、nec、飛思卡爾、nxp等這些歐美和日式單片機中選擇;若要進行功耗的開發(fā),選用msp430系列應(yīng)該有一定優(yōu)勢;在進行測量儀器設(shè)計的時候,c8051和aduc842這類數(shù)?;旌闲酒惋@得比較方便。所以說最好每個類型的單片機都會一兩款,在實際項目選型中可以更加靈活。另外,要注意平時的技術(shù)積累。比如,在項目開發(fā)過程中將一些常用的接口程序和控制算法整理成模塊或者函數(shù),在其他的項目開發(fā)中,有同樣或者接近的需求時馬上就可以使用,又快又好。

第三階段:在實際的項目開發(fā)過程中,不斷深化單片機應(yīng)用技術(shù),不斷積累應(yīng)用行業(yè)的專業(yè)知識。例如,我完成了“高精度電感微位移測量系統(tǒng)”,就會對電感傳感器的測量機理和信號特性、測量電路的設(shè)計、電磁兼容處理、誤差修正和非線性處理等測控方面的專業(yè)技術(shù)有很深的認(rèn)識。以后碰到類似的項目時,很多東西就可以直接利用了。有了扎實的單片機應(yīng)用相關(guān)的基礎(chǔ)知識,并且熟悉掌握了幾款不同類型單片機的開發(fā)方法,再結(jié)合實際的應(yīng)用背景,那么就可以隨心所欲,設(shè)計出性能最優(yōu)、結(jié)構(gòu)最合理的單片機應(yīng)用系統(tǒng)。這是我最大的奮斗目標(biāo),我覺得這也應(yīng)該是單片機應(yīng)用的最高境界吧。

在這五年的學(xué)習(xí)中,有感慨、有遺憾、有憧憬、有希望,更重要的是我對單片機應(yīng)用這個領(lǐng)域充滿熱情。由于才疏學(xué)淺、涉世未深,希望能與行業(yè)里的各位老師多多交流,不斷學(xué)習(xí),不斷成長。

基于本人學(xué)習(xí)單片機的痛苦經(jīng)歷,特編寫本教程,以此獻給廣大的單片機初學(xué)者,希望您能從中受益。

拿到這本教程您首先就會想,什么是iap教學(xué)法?是不是一種什么全新的教學(xué)方法?當(dāng)然不是,我可沒有那么大的本事,其實這只是我杜撰的一個新名詞,意思就是inapplicationsprogram(在應(yīng)用中編程),當(dāng)然這只是針對單片機教學(xué),說法是否正確,還得您說了算。

至于為什么要提這種說法,那我倒想說幾句。大家都知道,學(xué)習(xí)電子技術(shù)是一件非常無聊和枯燥的事情,為什么會有這種想法,就是因為我們傳統(tǒng)的教學(xué)方法只重理論而忽略了實踐,要一個人記住那些空洞而有無聊的理論知識實在不是一件容易的事,好在我們總算熬過來了,不管如何,也多多少少的學(xué)習(xí)了一些電子基礎(chǔ)知識。

很少涉及單片機的基礎(chǔ)知識如果按照此種學(xué)習(xí)方法想便說一點:很多書中的實例都是有錯誤的)。

它全部掌握了再去做產(chǎn)品開發(fā)(當(dāng)然天才就例外了*_*)。

基于以上原因,本人想嘗試一種全新的單片機教學(xué)方法,打破傳統(tǒng)的循序漸進式的教學(xué)方法,以單片機的應(yīng)用為藍(lán)本,結(jié)合基本的工業(yè)控制系統(tǒng)和實踐工作中的具體應(yīng)用,不分先后順序,將各條指令貫串于一個又一個的實驗中,通過所見即所得的實驗來講解各種指令的編程方法,順便講解相關(guān)的基本概念,使您盡快地熟悉單片機應(yīng)用的基本步驟,掌握軟件編程的基本方法。

如果您學(xué)完了就能成為單片機的入門者,完全可以進行一般產(chǎn)品的開發(fā);下冊部分是單片機應(yīng)用的提高部分,主要學(xué)習(xí)單片機的系統(tǒng)擴展(比如:rom和ram存儲器的擴展,并行口的擴展,串行口的擴展,a/d和d/a與單片機的接口)以及相關(guān)開發(fā)工具和軟件的使用(包括kellc51的應(yīng)用與調(diào)試技巧,硬件仿真器的使用)等等,如果您學(xué)完了下冊部分,那就得恭喜您成為了單片機開發(fā)的高手了,不過單片機的技術(shù)是在不斷的發(fā)展和提高的,您也不要太驕傲哦!

為了盡量把最新的單片機知識和應(yīng)用成果收錄進我們的教程,希望您能不吝賜教,共同來努力把我們的教程不斷的改進和完善。還是那句題外話,技術(shù)是靠不斷的積累和交流才會進步的,固封自守只會更加落后。

由于時間和精力的限制,我還是希望在您學(xué)習(xí)本教程之前,自己先熟悉一點相關(guān)的電子技術(shù)知識,特別是數(shù)字電路基礎(chǔ),這對您學(xué)習(xí)中碰到的相關(guān)概念會有很大的幫助。

單片機學(xué)習(xí)總結(jié)篇三

經(jīng)過單片機課程的學(xué)習(xí),我們深刻理解到,有所求的學(xué)習(xí)才是最高效的學(xué)習(xí)。這應(yīng)該是調(diào)動積極性最好的方法了吧。所以,“課程設(shè)計”這一特殊作業(yè)一定是要堅持下去的。不過考慮我們在課程設(shè)計過程中遇到的問題,我們發(fā)現(xiàn)我們不能及時與學(xué)長分享課程學(xué)習(xí)中的心得體會,不能分享前輩在電子設(shè)計過程中的經(jīng)驗教訓(xùn)。所以最好是可以有一個平臺,使大家能及時得到有用的信息。

單片機學(xué)習(xí)總結(jié)篇四

通過單片機課上的系統(tǒng)設(shè)計項目,作為一個三人組成的團隊,我們在團隊管理方面都深有體會。

首先一個團隊的每個成員必須同心協(xié)力,共同努力完成任務(wù)。團隊每個成員都要有責(zé)任感,因為我們團隊只有三個人,所以大家都可以做到相互督促,相互鼓勵,每個人對整個項目也都有很整體的把握。一個人遇到難以克服的困難,三個人團結(jié)協(xié)作一起解決。

同時也要注意分工的問題,責(zé)任分配一定要明確,困難是大家的,責(zé)任卻是個人的。小團隊里不需要專門的問責(zé)制,但是我們團隊每個成員都很自覺的承擔(dān)起各自的責(zé)任。一定要注重效率,避免重復(fù)工作。這又向我們提出了經(jīng)常交流的要求。只有多交流,搜集到的資源才能充分共享,每個人都知道其他人的想法,清楚項目的進程。

最后還要注意團隊精神狀態(tài)的保持。團隊成員應(yīng)始終對單片機應(yīng)用有充足的興趣,不會因為困難而輕易退縮。將最初的熱情保持到最后才能取得成功。隊長應(yīng)始終保持樂觀態(tài)度,適時調(diào)動團隊情緒,使得整個團隊的精神保持在良好的狀態(tài)。

我們在項目的設(shè)計制作過程中遇到了各種各樣的問題,比如超聲波接收電路換過兩次,仍然不能成功接收超聲波;lcd顯示屏只能仿真成功,下載到單片機上卻總是不能工作。我們灰心過,但是到最后還是在努力試圖完成我們的項目。

單片機學(xué)習(xí)總結(jié)篇五

我看到書上講:單片機能夠用兩種語言編寫,一種是c語言,另外一種是匯編語言。匯編語言是一種機器語言,且代碼繁瑣,不易記憶。需要掌握單片機的內(nèi)部結(jié)構(gòu)和邏輯結(jié)構(gòu),透過看了幾本書讓我了解認(rèn)識到匯編確實太繁瑣,但是我學(xué)習(xí)過c語言,也參加了全國計算機二級考試,覺得自己在一方面具有優(yōu)勢,能很快學(xué)好它。

但是在學(xué)習(xí)中,我才發(fā)現(xiàn)學(xué)習(xí)單片機不僅僅僅需要軟件的知識,還需要硬件的知識。我買了一個單片機在實踐中就是一個活生生的例子,沒有相應(yīng)的硬件知識,我連單片機怎樣和電腦相連都不明白,我為我當(dāng)初的想法感到羞愧。單片機是一門很好的學(xué)問,需要我去鉆研它。

時光飛逝,一轉(zhuǎn)眼,一個學(xué)期又進尾聲了,本學(xué)期的單片機綜合課程設(shè)計也在一周內(nèi)完成了。

俗話說“好的開始是成功的一半”。說起課程設(shè)計,我認(rèn)為最重要的就是做好設(shè)計的預(yù)習(xí),認(rèn)真的研究老師給的題目,選一個自己有興趣的題目,其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設(shè)計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設(shè)計,到頭來一點收獲也沒有。最后,要重視程序的模塊化,修改的方便,也要注重程序的調(diào)試,掌握其方法。

雖然這次的課程設(shè)計算起來在實驗室的時間只有三天,但是因為我們都有自己的實驗板,所以在宿舍里做實驗的時間必須不止三天。

硬件的設(shè)計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調(diào)試,最終一個能完成課程設(shè)計的勞動成果出來了,很高興它能按著設(shè)計的思想與要求運動起來。

當(dāng)然,這其中也有很多問題,第一、不夠細(xì)心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導(dǎo)致編程出現(xiàn)錯誤。第二,是在學(xué)習(xí)態(tài)度上,這次課設(shè)是對我的學(xué)習(xí)態(tài)度的一次檢驗。對于這次單片機綜合課程實習(xí),我的第一大心得體會就是作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對就應(yīng)是嚴(yán)謹(jǐn)。我們這次實習(xí)所遇到的多半問題多數(shù)都是由于我們不夠嚴(yán)謹(jǐn)。第三,在做人上,我認(rèn)識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的。

單片機學(xué)習(xí)總結(jié)篇六

單片機是一門實用技術(shù),我們學(xué)習(xí)它已經(jīng)不是為了應(yīng)付考試了,我給大家總結(jié)了單片機的學(xué)習(xí)方法是:一個要領(lǐng),四個步驟。

學(xué)習(xí)單片機的要領(lǐng)就是:在實踐中成長,indoingwelearn!

學(xué)射箭,你得去拉弓,整天只擺造型肯定不行;學(xué)游泳,你得下水撲騰,整天在岸上做模仿活動不行;學(xué)開車,你得坐車上去開,坐沙發(fā)上肯定學(xué)不會。同樣的道理,學(xué)單片機,整天盯著單片機書看肯定不行,你也必須得親自動手去練。

沒有不下水就學(xué)會游泳成為游泳健將的,沒有不到車上練就能成為賽車手的,這點大家都清楚,可為什么那么多人學(xué)單片機的時候,總是只抱著一本書看呢。第一,我們小學(xué)中學(xué)甚至大學(xué)的學(xué)習(xí)模式都是如此,學(xué)什么東西主要都是靠看書,應(yīng)付書面考試;第二,很多人想實踐卻不太清楚該怎么去實踐。

遇到問題查下書比直接看書的效果要好過百倍。不是不讓大家看書,而是。

單片機學(xué)習(xí)總結(jié)篇七

剛出生的孩子叫“爸爸”“媽媽”的時候,他甚至不知道“爸爸”“媽媽”是什么意思,更不會理解這些聲音是什么意思,但是我們帶著孩子見到他爸爸就讓他喊“爸爸”,見到媽媽就讓他喊“媽媽”,見到爺爺就喊“爺爺”??慢慢的你會發(fā)現(xiàn),次數(shù)多了,孩子就知道誰是爸爸,誰是媽媽,誰是爺爺,誰是奶奶了。

大家剛開始接觸單片機的時候,也屬于單片機行業(yè)的新生兒。單片機的樣子,單片機外圍的各種器件,單片機內(nèi)部的各種結(jié)構(gòu),單片機使用c語言的編程方法,初學(xué)者可能都沒有見過,腦子里全無概念。沒關(guān)系,有些概念和方法你不理解也沒有關(guān)系,甚至不需要你去理解,你只需要跟著我去鸚鵡學(xué)舌式的學(xué)習(xí),第一遍學(xué)習(xí)某一節(jié)課的內(nèi)容時,對于程序,大家就可以完全跟著抄下來,甚至抄兩三遍,過一段你會發(fā)現(xiàn),好多東西你也認(rèn)識了,好多概念你也慢慢的理解清楚了,你也能大概看懂別人的小程序了,切忌覺得自己看會了,而簡單復(fù)制粘貼。

2)照葫蘆畫瓢。

很多同學(xué)學(xué)習(xí)的時候喜歡看,看我做的視頻,看我寫的程序,甚至看別人的程序,都能看懂,覺得自己就會了,等到自己寫程序的時候,感覺就是老鼠啃天,不知道從哪里下手了,這是初學(xué)者很容易犯的“眼高手低”的毛病,所以第二步的內(nèi)容就非常重要了。

我的要求是,每一位同學(xué),在學(xué)完了當(dāng)前課的內(nèi)容,把第一步順利完成以后,然后關(guān)掉視頻教程,關(guān)掉源代碼,自己通過看電路圖和查找非源代碼的其他任何資料,把當(dāng)節(jié)課我寫的程序代碼重新默寫出來,邊寫邊多少理解那么一點點,不是純粹的背誦,應(yīng)該說是背誦加理解的結(jié)合體。甚至學(xué)過幾節(jié)課以后,可以回頭把前邊曾經(jīng)這樣實現(xiàn)過的課程,再按照這種方法做一遍。千萬不要認(rèn)為這一步?jīng)]必要,這一步是你能否真正學(xué)會單片機的一個關(guān)鍵,在學(xué)完本教程之前,每一課內(nèi)容都要這樣做,如果每一個程序你都能夠完美的完成,那么可以說,當(dāng)節(jié)課的內(nèi)容,百分之七八十你已經(jīng)掌握了。

3)他山之石,可以攻玉。

單片機技術(shù)的最大特點就是可以通過修改程序來實現(xiàn)不同的功能,因此舉一反三的能力就必不可少了。每一節(jié)課的例程后邊,我一般都會布置幾個作業(yè),大家盡量去獨立完成這個作業(yè)。在完成這個作業(yè)的過程中,都可以參考我的程序思路,在這個基礎(chǔ)上通過動腦思考去構(gòu)建你自己的程序框架,最終將程序完成。

在我們工程師實際產(chǎn)品研發(fā)的時候,很多種情況下也是如此。比如一個產(chǎn)品,我們?nèi)绻麖牧闫鸩降脑?,可能會走很多彎路,遭遇很多前人已曾遭遇過的挫折,所以我們通常的做法是尋找購買幾款同類產(chǎn)品,然后先研究他們的各自優(yōu)缺點,學(xué)習(xí)他們的長處,然后在同類產(chǎn)品基礎(chǔ)上再來設(shè)計我們自己的產(chǎn)品,這就是“他山之石,可以攻玉”。

初學(xué)者在學(xué)習(xí)的時候,往往遇到的問題很多,你應(yīng)該想到,你遇到的問題,可能前輩們早就遇到過了,所以遇到問題后,不要慌張,首先利用谷歌或者百度這些搜索引擎在網(wǎng)上搜一下,要做什么新東西,先去網(wǎng)上找相關(guān)資料了解一下,不管是編程還是硬件設(shè)計,多多參考別人的東西,只要把別人的東西分析明白了,自己用起來了,也就成為自己的知識了。

4)理論實踐結(jié)合,溫故知新。

當(dāng)大家把所有的課程都按照前邊三步完成后,這個時候不妨再把書打開,再看看書,經(jīng)過了自己的實戰(zhàn)經(jīng)歷,再看書的時候,對很多知識點會有一種恍然大悟的感覺。甚至視頻教程、書籍都可以反復(fù)看幾遍,可能有的知識點當(dāng)時學(xué)習(xí)的時候不明白,過了一段時間,回過頭來再學(xué)習(xí)的時候,一下就明白了。

單片機學(xué)習(xí)總結(jié)篇八

熟悉單片機的人都明白,要學(xué)好單片機可不是一件容易的事,倒不是因為單片機很難學(xué),而是很難找到一本專為單片機入門者而編寫的教材。翻一下身邊的單片機教材,都好像是為已經(jīng)懂單片機的人而寫的,一般先介紹單片機的硬件結(jié)構(gòu)和指令系統(tǒng),再是系統(tǒng)擴展和外圍器件,順便講一些應(yīng)用設(shè)計(隨便說一下,很多書中的電路設(shè)計已經(jīng)過時,并且有些程序還是錯誤的)。如果按照此種學(xué)習(xí)方法,想進行產(chǎn)品開發(fā),就務(wù)必先把所有的知識全部掌握了才能夠進行實際應(yīng)用。學(xué)習(xí)使用單片機只能靠循序漸進的積累,下面就本人學(xué)習(xí)單片機的過程和經(jīng)驗做簡要介紹。

首先,學(xué)習(xí)單片機要有必須的基礎(chǔ):電子技術(shù)方面要有數(shù)字電路和模擬電路等方面的理論基礎(chǔ),個性是數(shù)字電路;編程語言要求匯編語言或c語言。要想成為單片機高手,推薦初學(xué)者首先學(xué)習(xí)匯編語言,學(xué)的差不多的時候,轉(zhuǎn)入c語言學(xué)習(xí)。盡管匯編語言屬于低級語言,編程效率低,但是較c語言具有目標(biāo)代碼簡短,占用內(nèi)存少,執(zhí)行速度快等優(yōu)點,更重要的是能使初學(xué)者盡快熟悉單片機的內(nèi)部結(jié)構(gòu),并能對其進行精確的控制。匯編語言在單片機教材里面都會涉及,不需要單獨購買教材和學(xué)習(xí)。c語言是一門學(xué)問,有很多專業(yè)書籍來講解,并且對我們今后的編程生涯有絕對的好處,因此要深入學(xué)習(xí),千萬不要自以為看了某某的視頻教程就以為掌握了c語言,那只是c語言的一部分。在那里給大家推薦一本單片機c語言程序設(shè)計參考書,馬忠梅等著,北京航空航天大學(xué)出版社出版的《單片機的c語言應(yīng)用程序設(shè)計》,要求c語言基礎(chǔ)。如果沒學(xué)過c語言,推薦學(xué)習(xí)清華大學(xué)譚浩強編寫的c語言程序設(shè)計,這本書寫的不錯,通俗易懂。

其次,是單片機教材選取。單片機是一門十分重視實踐的技術(shù),不能總是看書,但要學(xué)習(xí)它首先應(yīng)看書,對單片機引腳、內(nèi)部結(jié)構(gòu)、寄存器和原理有必須地了解和感官認(rèn)識,它的是怎樣工作的,能干些什么?剛開始時,也許你看不明白,但這并不要緊,因為你還缺乏實踐經(jīng)驗。此刻單片機應(yīng)用廣泛,因此各個廠家分別推出了自己的單片機,按內(nèi)部結(jié)構(gòu)體系派系分:51系列、pic系列、avr系列、摩托羅拉等等……我們沒必要每樣都學(xué)!因為他們的編程方法和調(diào)試過程以及內(nèi)部指令結(jié)構(gòu)有必須的相似,只要學(xué)精通一款就ok了!尤其是用c語言編程,就幾乎不用分什么派系,但是我們要選取一款有代表性的知識范圍廣,并且入門容易,書籍多。一般來說,mcs-51系列單片機已經(jīng)得到廣泛的普及和應(yīng)用,市場上它的資料也比較多,用的人也很多。給大家推薦一些參考書,學(xué)習(xí)時只需要一本就足夠拉。書名:《新編mcs-51單片機應(yīng)用設(shè)計》,哈爾濱工業(yè)大學(xué)出版,作者:張毅剛;書名:《單片機原理及應(yīng)用》,高等教育出版社,作者:張毅剛等;書名:《單片機高級教程:應(yīng)用與設(shè)計》,北京航空航天大學(xué)出版社,作者:何立民。相關(guān)教材還有很多,在這不一一列舉。

定某個實驗,就恭維的告訴你一聲”恭喜你,學(xué)會了”自己學(xué)會了單片機,這有點可笑,這只能說明你算過關(guān)了,對單片機有了必須了解和會使用它了。但是單片機能完成的功能太多了,尤其是對外圍器件的控制,綜合起來能設(shè)計出許多意想不到的產(chǎn)品.因此除了入門外,精通可千萬別輕易說出口。

最后,在熟練掌握和應(yīng)用后,那能夠說對于單片機方面的硬件你已經(jīng)入門了,剩下的就是自己練習(xí)設(shè)計電路,不斷的積累經(jīng)驗。最終,自己完全設(shè)計具有個人風(fēng)格的電路,產(chǎn)品,這樣你就是單片機高手拉。只要過了第一關(guān),后面的路就好走多了,萬事開頭難,大家可能都聽過。時下多家電子類的報刊雜志如:《電子制作》《無線電》《電子報》《電子世界》都開設(shè)了詳細(xì)的單片機教程專欄,對于想學(xué)習(xí)單片機的朋友來說幫忙很大,能夠說此刻的單片機教程環(huán)境是最好的,有網(wǎng)絡(luò),有書籍,有報刊雜志,還有視頻教程,元件的采購方面也十分充足,相關(guān)的器材又多有便宜。如果每一天能抽出兩小時的時間去學(xué)習(xí),快的一個月,慢的三個月就入門拉。

以下是一些經(jīng)驗:

(1)學(xué)習(xí)單片機沒有捷徑,別指望兩三天就學(xué)會,要堅持不懈,重在積累。

(2)別崇拜高手,別相信天才,大部分人都不是天才(相信你也不是)!

(3)單片機是一門應(yīng)用性和實踐性很強的學(xué)科,要多動手,多做實驗。

(4)要學(xué)會參考別人的程序,減少自己琢磨的時間,迅速提高自己的編程潛力。

(5)碰到問題能夠借助網(wǎng)絡(luò)來搜尋答案和對自己有幫忙的問題,能夠大大減少你的開發(fā)時間。

(6)要多交一些朋友,多交流。技術(shù)是靠不斷的積累和交流才會進步的,封閉自守只會更加落后。

期望大家多上網(wǎng)看看前輩的經(jīng)驗,能夠少走很多彎路。最后,祝愿大家早日成為單片機高手。

單片機學(xué)習(xí)總結(jié)篇九

一直想寫一個帖子,將自己學(xué)習(xí)單片機的經(jīng)歷、經(jīng)驗和方法總結(jié)一下,今天終于動手寫了,呵呵,這是我學(xué)習(xí)單片機的經(jīng)驗、心得、方法。希望對大家學(xué)習(xí)單片機有所幫助。

經(jīng)常在群、論壇里看到有人問:怎么學(xué)單片機?也??吹接腥苏f學(xué)了好幾個月可就是沒有什么進展。當(dāng)然,受限于每個人受到的教育水平不同和個人理解能力的差異,學(xué)習(xí)起來會有快慢之分,但我感覺最重的就是學(xué)習(xí)方法。一個好的學(xué)習(xí)方法,能讓你事半功倍,這里說說我學(xué)習(xí)單片機的經(jīng)歷和方法。

的時候,因為制作fm發(fā)射電路采用了bh1415的芯片,需要用到單片機控制,所以開始接觸使用單片機,雖然以前讀書時作為一門功課學(xué)過,不過也快丟荒了了,基本上都忘光了,也算是從頭學(xué)起了吧。我當(dāng)時是買了一塊實驗板,很簡單的功能,比論壇實驗板還要少功能,還有一個仿真器,也是比較簡單的,sst芯片的。然后開始從大家都知道的流水燈寫起,萬事開頭難,第一個程序基本上就抄人家的,翻查了一份快速入門的學(xué)習(xí)資料,()寫下第一個程序。然后,在仿真機是單步的看運行結(jié)果,從每一步執(zhí)行,都硬件上反應(yīng)出來的效果,很快,對單片機的運作有了一個非常感性的認(rèn)識,這跟只看書然后自己想象運行是完全兩碼事。然后,是進一步的其它程序?qū)W習(xí),一個月時間,基本上已經(jīng)熟悉了51的各種硬件資源。把流水燈,數(shù)碼管動態(tài)掃描,中斷等等的學(xué)習(xí)了,然后就是寫綜合性的程序,也就是我發(fā)在論壇里的時鐘。通過這個程序的編寫,使自己的編程水平有了很大的飛躍。之后,就是逐步學(xué)習(xí)編寫更多的程序,各種外圍器件的控制等等,通過編寫程序使自己不斷的提高。在學(xué)過匯編之后,我又轉(zhuǎn)到了c語言學(xué)習(xí),因為以前沒有學(xué)習(xí)過c語言,一切都很陌生,所以自己沿用了學(xué)習(xí)匯編的方法,大約花了3天功夫基本就對c語言有了初步的了解,然后就是嘗試寫上面所說的時鐘,以匯編程序的思路作為參考,以c語言來編寫,花了幾天功夫完成了這一程序,也實現(xiàn)了從匯編編程為主到c編程為主的轉(zhuǎn)變。然后,就是以c語言編寫外圍器件的控制程序,以此來熟悉c的編程風(fēng)格,一直到現(xiàn)在,基本上就是c語言編程,匯編已經(jīng)是作為調(diào)試程序的輔助。

下面我概括了幾點我的學(xué)習(xí)經(jīng)驗和心得體會:

1、萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,說keil不會建項目啦、沒有實驗板啦之類的。遇到困難要一件件攻克,不會建項目,就先學(xué)它,這方面網(wǎng)上教程很多,隨便找找看一下,做幾次就懂了。然后可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養(yǎng)一下自己的感覺,知道寫程序是怎么一回事,無論寫大程序還是小程序,要做的工序不會差多少,總得建個項目,再配置一下項目,然后建個程序,加入項目中,再寫代碼、編譯、生成hex,刷進單片機中、運行。必須熟悉這一套工序。個人認(rèn)為,一塊學(xué)習(xí)板還是必要的,寫好程序在上面運行一下看結(jié)果,學(xué)習(xí)效果會好很多,仿真器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學(xué)不會的。

2、知識點用到才學(xué),不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學(xué)了后面的,前面的估計也快忘光了,所以,最好結(jié)合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學(xué)好就是了,這是把整本書化整為零,一小點一小點的啃。

3、程序不要光看不寫,一定要自己寫一次。最開始的時候,啥都不懂,可以抄人家的程序過來,看看每一句是干什么用的,達(dá)到什么目的,運行后有什么后果,看明白了之后,就要自己寫一次,你會發(fā)現(xiàn),原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距……當(dāng)你自己能寫出來的時候,說明你就真的懂了。

4、必須學(xué)會掌握調(diào)試程序的方法。不少人寫程序,把代碼寫好了,然后一運行,不是自己想要的結(jié)果,就暈了,然后跑到論壇上發(fā)個帖子,把程序一貼,問:為什么我的程序不能正常運行?然后就等別人來給自己分析。這是一種很不好的行為,應(yīng)該自己學(xué)會發(fā)現(xiàn)問題和學(xué)會如何解決問題。這就需要學(xué)習(xí)調(diào)試程序的方法,比如keil里,可以下斷點啦,查看寄存器內(nèi)容等等,這些都是調(diào)試程序的手段,當(dāng)你發(fā)現(xiàn)你寫的程序運行結(jié)果和你想象中不一樣的時候,你可以單步,也可以下斷點,然后跟蹤,查看各相關(guān)寄存器內(nèi)容,看看程序運行過中是不是有什么偏差,找出影響結(jié)果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學(xué)到的知識是書上得不到的。

5、找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達(dá)到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結(jié)果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學(xué)會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復(fù)制到自己的程序中,可以說,這不是一種學(xué)習(xí)的態(tài)度,無助于你編程水平的提高。我?guī)缀醪辉趺纯慈思业拇a,多數(shù)時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以,要從代碼中看出別人處理問題的思路,是相當(dāng)困難的,特別是大型的程序,看起來是非常的累人,所以現(xiàn)在我也明白了,以前讀書時說的程序流程圖很重要,現(xiàn)在算是知道了。當(dāng)你知道一個問題怎么去解決了,那么剩下的只是你安排代碼去完成,這就已經(jīng)不是什么問題了。舉個例子:數(shù)碼管動態(tài)掃描,沒寫過的初學(xué)者可能搞不清是怎么回事,其實,就是分時讓每一時間段時只控制一只數(shù)碼管顯示數(shù)字,幾只數(shù)碼管輪流顯示,由于速度很快,人眼的看起來是全部數(shù)碼管都亮的。明白是這么一回事,事情就好辦了,剩下的事情,無非是你安排讓一只只數(shù)碼管輪流顯示出相應(yīng)的數(shù)值。顯示數(shù)字,然后延時一下,再下一只顯示數(shù)字,延時,知道是這樣,我們實際程序上只要做到這樣就可以:往段口送段碼,然后打開位選顯示一只,延時一下,再關(guān)閉位選,再送出段碼,再打開另一只位選僅此而已。有了解決問題的思路,我們就能問題拆分開來,然后逐一的解決,如果動態(tài)掃描的原理都沒懂,不知道如何做,那么這個程序是怎么也寫不出來的。

6、開動腦筋,運用多種方法,不斷優(yōu)化自己的程序。想想用各種不同方法來實現(xiàn)同一功能。這是一個練習(xí)和提高的過程,一個問題,你解決了,那么你再想想,能不能換種寫法,也可以實現(xiàn)同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執(zhí)行效率更高,這個過程,就是一個進步的過程。很多知識和經(jīng)驗的獲得,并不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經(jīng)驗才能得到積累,編程水平才能有所提高。

7、看別人的代碼,學(xué)習(xí)人家的思路。這個在學(xué)習(xí)初期是很有用,通過看別人的代碼,特別是有多年編程經(jīng)驗的人寫出的具有一定水平的代碼,可以使自己編程水平得到迅速的提高,同時,也可以結(jié)合別人的編程手法,與自己的想法融合在一起,寫出更高水平的代碼,從中得到進步。但要注意,切忌將學(xué)習(xí)變成抄襲,更不是抄襲完了就認(rèn)為自己學(xué)會了,這樣做只會使你退步。

8、嘗試編寫一下綜合應(yīng)用的程序。從流水燈學(xué)起,到動態(tài)掃描,再到中斷,那么,你可以試試寫一下時鐘這種綜合性應(yīng)用的程序,不要小看時鐘,要寫好它不是一件容易的事情,它包括了單片機大部分的知識,比如有按鍵(io讀?。討B(tài)掃描(io輸出)、中斷等,如何協(xié)調(diào)好各功能模塊正常工作,才是編程者需要學(xué)習(xí)的地方,當(dāng)你單獨寫一個功能的時候,比如按鍵讀取,你可能感覺很容易,因為你的程序啥也不做,只是讀按鍵。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數(shù)碼管既能顯示,又要去處理按鍵讀取,怎么使這兩部分都正常工作,這就是一個協(xié)調(diào)過程。當(dāng)你有了這個處理協(xié)調(diào)能力,你就算是入門了。

9、著重于培養(yǎng)解決問題的能力,而不是具體看自己編寫了多少代碼或者做過什么?!皩W(xué)單片機重點在于學(xué)習(xí)解決問題的思路,而不是局限于具體的芯片類型和語言”這一直是我的座右銘,是我學(xué)單片機多年來感悟出來的。經(jīng)??吹接腥苏f“你會驅(qū)動xx芯片,真牛啊”“你搞過xx項目,真厲害”之類的話,其實這是非常片面的,搞過xx芯片,搞過xx項目,只能說明你做過這一項目,它只是你的業(yè)績,并不是代表能力就一定高。真正的能力應(yīng)該是:“遇到?jīng)]有解決過的問題或器件,能利用自己已學(xué)的知識,迅速找到解決問題的方法。”這個才是能力。寫程序的過程就是一個創(chuàng)造的過程,幾乎沒有完全一樣的項目,每次你遇上的幾乎都不相同,所以你擁有的必須是你面對新項目時的創(chuàng)造能力,而不是標(biāo)榜著你以往做過多少項目。當(dāng)然,業(yè)績也能從另一側(cè)面反映你的經(jīng)驗和水平。

10、如果有可能,多學(xué)習(xí)計算機專業(yè)的知識,比如數(shù)據(jù)結(jié)構(gòu)等。這些是你解決問題的基礎(chǔ)知識,你把這些知識應(yīng)用得越好,就會發(fā)現(xiàn)越容易找到解決問題的方法,這就是為什么一個學(xué)計算機專業(yè)的人編的程序和一個非計算機專業(yè)的人編的程序有差異的原因。也是一個菜鳥進軍到高手所要配備的知識。如果我們把編程分為宏觀編程和微觀編程,那么微觀編程就是寫具體的代碼,比如控制某某器件的語句;而宏觀編程就是如何對整個程序進行布局、安排,使功能模塊以你想要的方式去運行,得出你想要的結(jié)果。如前所說“會控制xx器件”這些只能算是微觀編程,能做到這一步還只能算是菜鳥級別,如果面對一個新的器件,你心里沒底,沒把握去寫這個控制程序,那說明你還是一個初級的菜鳥。當(dāng)你有了一定的編程經(jīng)驗,控制過相當(dāng)數(shù)量的器件之后,你就會發(fā)現(xiàn),控制器件這些工作都是相似的、重復(fù)的工作,體現(xiàn)不出編程的水平,最多也是寫得好與不好的差別,只能算是一些小技巧的應(yīng)用。而對整個程序進行布局、安排這些才是最頭痛的事情,能達(dá)到宏觀編程和微觀編程都做好才是真正的高手。對于規(guī)模越大的程序,越能體現(xiàn)出這一點。

11、面對一個新項目時,多自己開動腦筋,不要急于找別人的程序。有不少人面對一個新項目時,第一步想到的就是網(wǎng)上找別人寫過的代碼,然后抄一段,自己再寫幾句,湊在一起就完成任務(wù),這雖然可能是省時間,但絕對不利你的學(xué)習(xí)。當(dāng)你接到一個新項目時,應(yīng)該先自己構(gòu)思一下整個程序的架構(gòu),想想如何來完成,有可能的話,畫一個流程圖,簡單的可以畫在腦子里,對程序中用到的數(shù)據(jù)、變量有一個初步的安排,然后自己動手去寫,遇到實在沒辦法解決的地方,再去請教別人,或看別人是怎么處理的,這樣首先起碼你自己動過腦想過,自己有自己的`思路,如果你一開始就看別人的程序,你的思維就會受限在別人的思維里,自己想再創(chuàng)新就更難了,這樣你自己永遠(yuǎn)也沒辦法提高,因為你是走在別人的影子里。

12、多利用網(wǎng)絡(luò)的搜索,學(xué)會提問題。一般來說,學(xué)習(xí)過程中,你遇上的問題,前人們多數(shù)也有遇上的,所以如果有什么不懂,在自己解決不了的時候,最好先到網(wǎng)上搜索一下,看能不能找到答案,找不到再到論壇里發(fā)問,發(fā)問也要有目的性,盡量簡單明了的描述問題,讓幫助你的人可以用最少的時間就看懂你說什么,畢竟人家?guī)椭闶敲赓M的,時間也是有限的。

以上就是我學(xué)習(xí)單片機的經(jīng)歷和心得體會,希望對大家會有幫助,說得有不好或不對的地方歡迎大家批評指正。

時光飛逝,一轉(zhuǎn)眼,一個學(xué)期又進尾聲了,本學(xué)期的單片機綜合課程設(shè)計也在一周內(nèi)完成了。

俗話說“好的開始是成功的一半”。說起課程設(shè)計,我認(rèn)為最重要的就是做好設(shè)計的預(yù)習(xí),認(rèn)真的研究老師給的題目,選一個自己有興趣的題目。其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設(shè)計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設(shè)計,到頭來一點收獲也沒有。最后,要重視程序的模塊化,修改的方便,也要注重程序的調(diào)試,掌握其方法。

雖然這次的課程設(shè)計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。

硬件的設(shè)計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調(diào)試,最終一個能完成課程設(shè)計的勞動成果出來了,很高興它能按著設(shè)計的思想與要求運動起來。

當(dāng)然,這其中也有很多問題,第一、不夠細(xì)心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導(dǎo)致編程出現(xiàn)錯誤。()第二,是在學(xué)習(xí)態(tài)度上,這次課設(shè)是對我的學(xué)習(xí)態(tài)度的一次檢驗。對于這次單片機綜合課程實習(xí),我的第一大心得體會就是作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對應(yīng)該是嚴(yán)謹(jǐn)。我們這次實習(xí)所遇到的多半問題多數(shù)都是由于我們不夠嚴(yán)謹(jǐn)。第三,在做人上,我認(rèn)識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的。

在這次難得的課程設(shè)計過程中我鍛煉了自己的思考能力和動手能力。通過題目選擇和設(shè)計電路的過程中,加強了我思考問題的完整性和實際生活聯(lián)系的可行性。在方案設(shè)計選擇和芯片的選擇上,培養(yǎng)了我們綜合應(yīng)用單片機的能力,對單片機的各個管腳的功能也有了進一步的認(rèn)識。還鍛煉我們個人的查閱技術(shù)資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。并且我們熟練掌握了有關(guān)器件的性能及測試方法。

再次感謝老師的輔導(dǎo)以及同學(xué)的幫助,是他們讓我有了一個更好的認(rèn)識,無論是學(xué)習(xí)還是生活,生活是實在的,要踏實走路。課程設(shè)計時間雖然很短,但我學(xué)習(xí)了很多的東西,使我眼界打開,感受頗深。

單片機學(xué)習(xí)總結(jié)篇十

我從大二起,就去實驗室去學(xué)習(xí)。在那里與老師和一些電子設(shè)計愛好者的交流中,我學(xué)到了更多的專業(yè)知識。我從此走上了學(xué)習(xí)嵌入式的道路。這豐富了我的大學(xué)生活,是我在大學(xué)的最大收獲。

我是從學(xué)習(xí)單片機開始我的嵌入式學(xué)習(xí)的。

我接觸單片機的方式是在圖書館看書,我看了很多本書,但是大多數(shù)書寫的大同小異。書里面講解的單片機的寄存器我看了很多遍也沒有看懂。我都不明白改怎樣學(xué)習(xí)它了。慢慢的我悟出了一個道理:電子的學(xué)習(xí)實踐是最重要的,這樣,我在大二的時候就買了一塊學(xué)習(xí)板,我一邊看視頻一邊仿照視頻的程序,自己編寫程序,在很短的時間里,我的單片機有了很大的提高。那些難懂的寄存器透過編寫程序,我慢慢的弄懂了它們,此刻回頭看去,原先它還是很簡單的。

用哪種編程語言最適合我們。

我看過的單片機的書籍,大部分的程序都是匯編寫的。它是一種基于機器硬件的低級語言,對于我們這些只學(xué)習(xí)過c語言的人來說,十分難懂。我認(rèn)為剛開始學(xué)習(xí)單片機沒有必要必須要從學(xué)習(xí)匯編編程開始。我學(xué)習(xí)單片機就是用c語言編程的,我并不會匯編語言,也沒有妨礙我把單片機學(xué)好。

很多人說,學(xué)單片機最好先學(xué)匯編語言,以我的經(jīng)驗告訴大家,絕對沒有這個必要,初學(xué)者一開始就直接用c語言為單片機編程,既省時間,學(xué)起來又容易,進步速度會很快。在剛開始學(xué)單片機的時候,千萬不要為了解單片機內(nèi)部結(jié)構(gòu)而浪費時間,這樣只能打擊你的信心,當(dāng)你學(xué)會編程后,自然一步步就掌握其內(nèi)部結(jié)構(gòu)了。

單片機提高重在實踐,想要學(xué)好單片機,軟件編程必不可少。但是熟悉硬件對于學(xué)好單片機的也是十分重要的。如何學(xué)習(xí)好硬件,動手實踐是必不可少的。我們能夠透過自己動手做一個自己的電子制作,透過完成它,以提高我的對一些芯片的了解和熟練運用它。這樣我們就能夠多一些了解芯片的結(jié)構(gòu)。我相信,你完成了一個屬于自己的電子制作,你的單片機水平就會有一個質(zhì)的提高。

這就是我學(xué)習(xí)單片機的心得體會,期望給單片機的愛好者學(xué)好單片機有所幫忙。

單片機學(xué)習(xí)總結(jié)篇十一

單片機是一門實用技術(shù),我們學(xué)習(xí)它已經(jīng)不是為了應(yīng)付考試了,我給大家總結(jié)了單片機的學(xué)習(xí)方法是:一個要領(lǐng),四個步驟。

學(xué)習(xí)單片機的要領(lǐng)就是:在實踐中成長,indoingwelearn!

學(xué)射箭,你得去拉弓,整天只擺造型肯定不行;學(xué)游泳,你得下水撲騰,整天在岸上做模仿活動不行;學(xué)開車,你得坐車上去開,坐沙發(fā)上肯定學(xué)不會。同樣的道理,學(xué)單片機,整天盯著單片機書看肯定不行,你也必須得親自動手去練。

沒有不下水就學(xué)會游泳成為游泳健將的,沒有不到車上練就能成為賽車手的,這點大家都清楚,可為什么那么多人學(xué)單片機的時候,總是只抱著一本書看呢。第一,我們小學(xué)中學(xué)甚至大學(xué)的學(xué)習(xí)模式都是如此,學(xué)什么東西主要都是靠看書,應(yīng)付書面考試;第二,很多人想實踐卻不太清楚該怎么去實踐。

遇到問題查下書比直接看書的效果要好過百倍。不是不讓大家看書,而是看了一點以后,要馬上去實踐驗證,然后再回頭結(jié)合實踐的結(jié)果,理解書上的內(nèi)容。從這個地方,大家要得出一個結(jié)論來,就是在學(xué)實際技術(shù)的過程中,和應(yīng)付考試不同,書上的內(nèi)容不需要你去硬性記憶,書是用來查的,不是用來背的。

單片機學(xué)習(xí)總結(jié)篇十二

在學(xué)校學(xué)習(xí)期間我有幸的參加了學(xué)校的單片機學(xué)習(xí)小組,在小組里我了解了什么是單片機,單片機有哪些用途,利用單片機可以實現(xiàn)哪些功能來方便人們的生活如交通燈,時鐘,還有手機中,電子玩具等等,它們里面都有單片機的存在來實現(xiàn)某種功能。通過在單片機小組里的學(xué)習(xí)我簡單總結(jié)了幾點心得和體會:

第一:萬事開頭難,要勇敢的邁出第一步,不要總找借口說沒有學(xué)習(xí)過就總推脫。凡事都有第一步可以先可簡單的來,然后可以逐步的向深層次學(xué)習(xí)??梢詮慕椖块_始,然后可以找一個簡單的小程序先把它敲進單片機內(nèi)然他運行起來,感覺一下單片機的運行,讓自己了解單片機整個運行。

第二:對于知識點,學(xué)過的要掌握牢固,對于沒有學(xué)的和暫時用不到的先不用學(xué)習(xí)。比如:小燈得點亮就沒有用到中斷可以先不用看。這樣可以避免知識過多記不住的麻煩。對于程序這里的知識點不能只停留在理論層次上,一定要結(jié)合著程序進行學(xué)習(xí)這樣才能掌握的很牢靠,當(dāng)用到哪里的知識點不記得了可以去看書,對于用不到的可以不去看。

第三:程序不要只是看別人得,一定要自己寫過才是自己的。開始不懂可以參考別人的,看看每一句代表著什么意思,能夠?qū)崿F(xiàn)什么現(xiàn)象。明白之后自己再重新寫一遍,你會發(fā)現(xiàn)看別人的能懂到自己寫的時候很困難。當(dāng)你自己能寫出來的時候說明你真懂了。

第四:一定要學(xué)會程序調(diào)試的方法。有時候把程序?qū)懲炅巳缓筮\行時不能實現(xiàn)理想的現(xiàn)象。這時有人就暈了不知該怎么辦,然后就去問別人。當(dāng)別人找出問題出在哪里時就會恍然大悟。其實當(dāng)遇到問題一定要自己嘗試著解決,不能遇到問題就去問別人。自己一定要掌握解決問的方法和思路。

一起完成任務(wù),雖然省時間但不利你的學(xué)習(xí)。當(dāng)你遇到一新項目時你應(yīng)該先想一下程序的構(gòu)架,想想如何來完成。然后自己動手去寫,當(dāng)你遇到實在是沒辦法解決的問題時再去請教別人,看他是怎么處理的,學(xué)習(xí)他的方法。這樣起碼你自己想過了,有自己的思路不會受到別人的影響,這樣更容易提高自己。

在單片機的學(xué)習(xí)開始時感覺很吃力,在不斷的學(xué)習(xí)過程中慢慢的對單片機產(chǎn)生了些好感,而且在編寫程序過程中吃力的感覺慢慢的淡了。在這其中基礎(chǔ)知識掌握牢固是非常重要的,然后在學(xué)習(xí)過程中要學(xué)會提問題和自己解決問題,慢慢的對于學(xué)習(xí)單片機你也會產(chǎn)興趣。雖然在開始學(xué)習(xí)單片機時感覺很青澀,但只要堅定自己的學(xué)習(xí)信心,在付出持之以恒的努力,我相信自己能進一步加深對單片機的了解,在單片機的學(xué)習(xí)道路上走得更遠(yuǎn)!

單片機學(xué)習(xí)總結(jié)篇十三

經(jīng)常在群、論壇里看到有人問:怎么學(xué)單片機?也??吹接腥苏f學(xué)了好幾個月可就是沒有什么進展。當(dāng)然,受限于每個人受到的教育水平不同和個人理解能力的差異,學(xué)習(xí)起來會有快慢之分,但我感覺最重的就是學(xué)習(xí)方法。一個好的學(xué)習(xí)方法,能讓你事半功倍,這里說說我學(xué)習(xí)單片機的經(jīng)歷和方法。

05年的時候,因為制作fm發(fā)射電路采用了bh1415的芯片,需要用到單片機控制,所以開始接觸使用單片機,雖然以前讀書時作為一門功課學(xué)過,不過也快丟荒了10年了,基本上都忘光了,也算是從頭學(xué)起了吧。我當(dāng)時是買了一塊實驗板,很簡單的功能,比論壇實驗板還要少功能,還有一個仿真器,也是比較簡單的,sst芯片的。然后開始從大家都知道的流水燈寫起,萬事開頭難,第一個程序基本上就抄人家的,翻查了一份快速入門的學(xué)習(xí)資料,寫下第一個程序。然后,在仿真機是單步的看運行結(jié)果,從每一步執(zhí)行,都硬件上反應(yīng)出來的效果,很快,對單片機的運作有了一個非常感性的認(rèn)識,這跟只看書然后自己想象運行是完全兩碼事。然后,是進一步的其它程序?qū)W習(xí),一個月時間,基本上已經(jīng)熟悉了51的各種硬件資源。把流水燈,數(shù)碼管動態(tài)掃描,中斷等等的學(xué)習(xí)了,然后就是寫綜合性的程序,也就是我發(fā)在論壇里的時鐘。通過這個程序的編寫,使自己的編程水平有了很大的飛躍。之后,就是逐步學(xué)習(xí)編寫更多的程序,各種外圍器件的控制等等,通過編寫程序使自己不斷的提高。在學(xué)過匯編之后,我又轉(zhuǎn)到了c語言學(xué)習(xí),因為以前沒有學(xué)習(xí)過c語言,一切都很陌生,所以自己沿用了學(xué)習(xí)匯編的方法,大約花了3天功夫基本就對c語言有了初步的了解,然后就是嘗試寫上面所說的時鐘,以匯編程序的思路作為參考,以c語言來編寫,花了幾天功夫完成了這一程序,也實現(xiàn)了從匯編編程為主到c編程為主的轉(zhuǎn)變。然后,就是以c語言編寫外圍器件的控制程序,以此來熟悉c的編程風(fēng)格,一直到現(xiàn)在,基本上就是c語言編程,匯編已經(jīng)是作為調(diào)試程序的'輔助。

下面我概括了幾點我的學(xué)習(xí)經(jīng)驗和心得體會:

1、萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,說keil不會建項目啦、沒有實驗板啦之類的。遇到困難要一件件攻克,不會建項目,就先學(xué)它,這方面網(wǎng)上教程很多,隨便找找看一下,做幾次就懂了。然后可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養(yǎng)一下自己的感覺,知道寫程序是怎么一回事,無論寫大程序還是小程序,要做的工序不會差多少,總得建個項目,再配置一下項目,然后建個程序,加入項目中,再寫代碼、編譯、生成hex,刷進單片機中、運行。必須熟悉這一套工序。個人認(rèn)為,一塊學(xué)習(xí)板還是必要的,寫好程序在上面運行一下看結(jié)果,學(xué)習(xí)效果會好很多,仿真器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學(xué)不會的。

2、知識點用到才學(xué),不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學(xué)了后面的,前面的估計也快忘光了,所以,最好結(jié)合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學(xué)好就是了,這是把整本書化整為零,一小點一小點的啃。

3、程序不要光看不寫,一定要自己寫一次。最開始的時候,啥都不懂,可以抄人家的程序過來,看看每一句是干什么用的,達(dá)到什么目的,運行后有什么后果,看明白了之后,就要自己寫一次,你會發(fā)現(xiàn),原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距……當(dāng)你自己能寫出來的時候,說明你就真的懂了。

4、必須學(xué)會掌握調(diào)試程序的方法。不少人寫程序,把代碼寫好了,然后一運行,不是自己想要的結(jié)果,就暈了,然后跑到論壇上發(fā)個帖子,把程序一貼,問:為什么我的程序不能正常運行?然后就等別人來給自己分析。這是一種很不好的行為,應(yīng)該自己學(xué)會發(fā)現(xiàn)問題和學(xué)會如何解決問題。這就需要學(xué)習(xí)調(diào)試程序的方法,比如keil里,可以下斷點啦,查看寄存器內(nèi)容等等,這些都是調(diào)試程序的手段,當(dāng)你發(fā)現(xiàn)你寫的程序運行結(jié)果和你想象中不一樣的時候,你可以單步,也可以下斷點,然后跟蹤,查看各相關(guān)寄存器內(nèi)容,看看程序運行過中是不是有什么偏差,找出影響結(jié)果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學(xué)到的知識是書上得不到的。

5、找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達(dá)到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結(jié)果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學(xué)會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復(fù)制到自己的程序中,可以說,這不是一種學(xué)習(xí)的態(tài)度,無助于你編程水平的提高。我?guī)缀醪辉趺纯慈思业拇a,多數(shù)時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以,要從代碼中看出別人處理問題的思路,是相當(dāng)困難的,特別是大型的程序,看起來是非常的累人,所以現(xiàn)在我也明白了,以前讀書時說的程序流程圖很重要,現(xiàn)在算是知道了。當(dāng)你知道一個問題怎么去解決了,那么剩下的只是你安排代碼去完成,這就已經(jīng)不是什么問題了。舉個例子:數(shù)碼管動態(tài)掃描,沒寫過的初學(xué)者可能搞不清是怎么回事,其實,就是分時讓每一時間段時只控制一只數(shù)碼管顯示數(shù)字,幾只數(shù)碼管輪流顯示,由于速度很快,人眼的看起來是全部數(shù)碼管都亮的。明白是這么一回事,事情就好辦了,剩下的事情,無非是你安排讓一只只數(shù)碼管輪流顯示出相應(yīng)的數(shù)值。顯示數(shù)字,然后延時一下,再下一只顯示數(shù)字,延時,知道是這樣,我們實際程序上只要做到這樣就可以:往段口送段碼,然后打開位選顯示一只,延時一下,再關(guān)閉位選,再送出段碼,再打開另一只位選僅此而已。有了解決問題的思路,我們就能問題拆分開來,然后逐一的解決,如果動態(tài)掃描的原理都沒懂,不知道如何做,那么這個程序是怎么也寫不出來的。

6、開動腦筋,運用多種方法,不斷優(yōu)化自己的程序。想想用各種不同方法來實現(xiàn)同一功能。這是一個練習(xí)和提高的過程,一個問題,你解決了,那么你再想想,能不能換種寫法,也可以實現(xiàn)同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執(zhí)行效率更高,這個過程,就是一個進步的過程。很多知識和經(jīng)驗的獲得,并不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經(jīng)驗才能得到積累,編程水平才能有所提高。

7、看別人的代碼,學(xué)習(xí)人家的思路。這個在學(xué)習(xí)初期是很有用,通過看別人的代碼,特別是有多年編程經(jīng)驗的人寫出的具有一定水平的代碼,可以使自己編程水平得到迅速的提高,同時,也可以結(jié)合別人的編程手法,與自己的想法融合在一起,寫出更高水平的代碼,從中得到進步。但要注意,切忌將學(xué)習(xí)變成抄襲,更不是抄襲完了就認(rèn)為自己學(xué)會了,這樣做只會使你退步。

8、嘗試編寫一下綜合應(yīng)用的程序。從流水燈學(xué)起,到動態(tài)掃描,再到中斷,那么,你可以試試寫一下時鐘這種綜合性應(yīng)用的程序,不要小看時鐘,要寫好它不是一件容易的事情,它包括了單片機大部分的知識,比如有按鍵(io讀?。?、動態(tài)掃描(io輸出)、中斷等,如何協(xié)調(diào)好各功能模塊正常工作,才是編程者需要學(xué)習(xí)的地方,當(dāng)你單獨寫一個功能的時候,比如按鍵讀取,你可能感覺很容易,因為你的程序啥也不做,只是讀按鍵。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數(shù)碼管既能顯示,又要去處理按鍵讀取,怎么使這兩部分都正常工作,這就是一個協(xié)調(diào)過程。當(dāng)你有了這個處理協(xié)調(diào)能力,你就算是入門了。

9、著重于培養(yǎng)解決問題的能力,而不是具體看自己編寫了多少代碼或者做過什么?!皩W(xué)單片機重點在于學(xué)習(xí)解決問題的思路,而不是局限于具體的芯片類型和語言”這一直是我的座右銘,是我學(xué)單片機多年來感悟出來的。經(jīng)??吹接腥苏f“你會驅(qū)動xx芯片,真牛啊”“你搞過xx項目,真厲害”之類的話,其實這是非常片面的,搞過xx芯片,搞過xx項目,只能說明你做過這一項目,它只是你的業(yè)績,并不是代表能力就一定高。真正的能力應(yīng)該是:“遇到?jīng)]有解決過的問題或器件,能利用自己已學(xué)的知識,迅速找到解決問題的方法?!边@個才是能力。寫程序的過程就是一個創(chuàng)造的過程,幾乎沒有完全一樣的項目,每次你遇上的幾乎都不相同,所以你擁有的必須是你面對新項目時的創(chuàng)造能力,而不是標(biāo)榜著你以往做過多少項目。當(dāng)然,業(yè)績也能從另一側(cè)面反映你的經(jīng)驗和水平。

10、如果有可能,多學(xué)習(xí)計算機專業(yè)的知識,比如數(shù)據(jù)結(jié)構(gòu)等。這些是你解決問題的基礎(chǔ)知識,你把這些知識應(yīng)用得越好,就會發(fā)現(xiàn)越容易找到解決問題的方法,這就是為什么一個學(xué)計算機專業(yè)的人編的程序和一個非計算機專業(yè)的人編的程序有差異的原因。也是一個菜鳥進軍到高手所要配備的知識。如果我們把編程分為宏觀編程和微觀編程,那么微觀編程就是寫具體的代碼,比如控制某某器件的語句;而宏觀編程就是如何對整個程序進行布局、安排,使功能模塊以你想要的方式去運行,得出你想要的結(jié)果。如前所說“會控制xx器件”這些只能算是微觀編程,能做到這一步還只能算是菜鳥級別,如果面對一個新的器件,你心里沒底,沒把握去寫這個控制程序,那說明你還是一個初級的菜鳥。當(dāng)你有了一定的編程經(jīng)驗,控制過相當(dāng)數(shù)量的器件之后,你就會發(fā)現(xiàn),控制器件這些工作都是相似的、重復(fù)的工作,體現(xiàn)不出編程的水平,最多也是寫得好與不好的差別,只能算是一些小技巧的應(yīng)用。而對整個程序進行布局、安排這些才是最頭痛的事情,能達(dá)到宏觀編程和微觀編程都做好才是真正的高手。對于規(guī)模越大的程序,越能體現(xiàn)出這一點。

11、面對一個新項目時,多自己開動腦筋,不要急于找別人的程序。有不少人面對一個新項目時,第一步想到的就是網(wǎng)上找別人寫過的代碼,然后抄一段,自己再寫幾句,湊在一起就完成任務(wù),這雖然可能是省時間,但絕對不利你的學(xué)習(xí)。當(dāng)你接到一個新項目時,應(yīng)該先自己構(gòu)思一下整個程序的架構(gòu),想想如何來完成,有可能的話,畫一個流程圖,簡單的可以畫在腦子里,對程序中用到的數(shù)據(jù)、變量有一個初步的安排,然后自己動手去寫,遇到實在沒辦法解決的地方,再去請教別人,或看別人是怎么處理的,這樣首先起碼你自己動過腦想過,自己有自己的思路,如果你一開始就看別人的程序,你的思維就會受限在別人的思維里,自己想再創(chuàng)新就更難了,這樣你自己永遠(yuǎn)也沒辦法提高,因為你是走在別人的影子里。

12、多利用網(wǎng)絡(luò)的搜索,學(xué)會提問題。一般來說,學(xué)習(xí)過程中,你遇上的問題,前人們多數(shù)也有遇上的,所以如果有什么不懂,在自己解決不了的時候,最好先到網(wǎng)上搜索一下,看能不能找到答案,找不到再到論壇里發(fā)問,發(fā)問也要有目的性,盡量簡單明了的描述問題,讓幫助你的人可以用最少的時間就看懂你說什么,畢竟人家?guī)椭闶敲赓M的,時間也是有限的。

單片機學(xué)習(xí)總結(jié)篇十四

一直想寫一個帖子,將自己學(xué)習(xí)單片機的經(jīng)歷、經(jīng)驗和方法一下,今天終于動手寫了,呵呵,這是我學(xué)習(xí)單片機的經(jīng)驗、心得、方法。希望對大家學(xué)習(xí)單片機有所幫助。

經(jīng)常在群、論壇里看到有人問:怎么學(xué)單片機?也常看到有人說學(xué)了好幾個月可就是沒有什么進展。當(dāng)然,受限于每個人受到的教育水平不同和個人理解能力的差異,學(xué)習(xí)起來會有快慢之分,但我感覺最重的就是學(xué)習(xí)方法。一個好的學(xué)習(xí)方法,能讓你事半功倍,這里說說我學(xué)習(xí)單片機的經(jīng)歷和方法。

的時候,因為制作fm發(fā)射電路采用了bh1415的芯片,需要用到單片機控制,所以開始接觸使用單片機,雖然以前讀書時作為一門功課學(xué)過,不過也快丟荒了了,基本上都忘光了,也算是從頭學(xué)起了吧。我當(dāng)時是買了一塊實驗板,很簡單的功能,比論壇實驗板還要少功能,還有一個仿真器,也是比較簡單的,sst芯片的。然后開始從大家都知道的流水燈寫起,萬事開頭難,第一個程序基本上就抄人家的,翻查了一份快速入門的學(xué)習(xí)資料,()寫下第一個程序。然后,在仿真機是單步的看運行結(jié)果,從每一步執(zhí)行,都硬件上反應(yīng)出來的效果,很快,對單片機的運作有了一個非常感性的認(rèn)識,這跟只看書然后自己想象運行是完全兩碼事。然后,是進一步的其它程序?qū)W習(xí),一個月時間,基本上已經(jīng)熟悉了51的各種硬件資源。把流水燈,數(shù)碼管動態(tài)掃描,中斷等等的學(xué)習(xí)了,然后就是寫綜合性的程序,也就是我發(fā)在論壇里的時鐘。通過這個程序的編寫,使自己的編程水平有了很大的飛躍。之后,就是逐步學(xué)習(xí)編寫更多的程序,各種外圍器件的控制等等,通過編寫程序使自己不斷的提高。在學(xué)過匯編之后,我又轉(zhuǎn)到了c語言學(xué)習(xí),因為以前沒有學(xué)習(xí)過c語言,一切都很陌生,所以自己沿用了學(xué)習(xí)匯編的方法,大約花了3天功夫基本就對c語言有了初步的了解,然后就是嘗試寫上面所說的時鐘,以匯編程序的思路作為參考,以c語言來編寫,花了幾天功夫完成了這一程序,也實現(xiàn)了從匯編編程為主到c編程為主的轉(zhuǎn)變。然后,就是以c語言編寫外圍器件的控制程序,以此來熟悉c的編程風(fēng)格,一直到現(xiàn)在,基本上就是c語言編程,匯編已經(jīng)是作為調(diào)試程序的輔助。

下面我概括了幾點我的學(xué)習(xí)經(jīng)驗和:

1、萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,說keil不會建項目啦、沒有實驗板啦之類的。遇到困難要一件件攻克,不會建項目,就先學(xué)它,這方面網(wǎng)上教程很多,隨便找找看一下,做幾次就懂了。然后可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養(yǎng)一下自己的感覺,知道寫程序是怎么一回事,無論寫大程序還是小程序,要做的工序不會差多少,總得建個項目,再配置一下項目,然后建個程序,加入項目中,再寫代碼、編譯、生成hex,刷進單片機中、運行。必須熟悉這一套工序。個人認(rèn)為,一塊學(xué)習(xí)板還是必要的,寫好程序在上面運行一下看結(jié)果,學(xué)習(xí)效果會好很多,仿真器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學(xué)不會的。

2、知識點用到才學(xué),不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學(xué)了后面的,前面的估計也快忘光了,所以,最好結(jié)合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學(xué)好就是了,這是把整本書化整為零,一小點一小點的啃。

3、程序不要光看不寫,一定要自己寫一次。最開始的時候,啥都不懂,可以抄人家的程序過來,看看每一句是干什么用的,達(dá)到什么目的,運行后有什么后果,看明白了之后,就要自己寫一次,你會發(fā)現(xiàn),原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距……當(dāng)你自己能寫出來的時候,說明你就真的懂了。

4、必須學(xué)會掌握調(diào)試程序的方法。不少人寫程序,把代碼寫好了,然后一運行,不是自己想要的結(jié)果,就暈了,然后跑到論壇上發(fā)個帖子,把程序一貼,問:為什么我的程序不能正常運行?然后就等別人來給自己分析。這是一種很不好的行為,應(yīng)該自己學(xué)會發(fā)現(xiàn)問題和學(xué)會如何解決問題。這就需要學(xué)習(xí)調(diào)試程序的方法,比如keil里,可以下斷點啦,查看寄存器內(nèi)容等等,這些都是調(diào)試程序的手段,當(dāng)你發(fā)現(xiàn)你寫的程序運行結(jié)果和你想象中不一樣的時候,你可以單步,也可以下斷點,然后跟蹤,查看各相關(guān)寄存器內(nèi)容,看看程序運行過中是不是有什么偏差,找出影響結(jié)果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學(xué)到的知識是書上得不到的。

5、找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達(dá)到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結(jié)果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學(xué)會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復(fù)制到自己的程序中,可以說,這不是一種學(xué)習(xí)的態(tài)度,無助于你編程水平的提高。我?guī)缀醪辉趺纯慈思业拇a,多數(shù)時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以,要從代碼中看出別人處理問題的思路,是相當(dāng)困難的,特別是大型的程序,看起來是非常的累人,所以現(xiàn)在我也明白了,以前讀書時說的程序流程圖很重要,現(xiàn)在算是知道了。當(dāng)你知道一個問題怎么去解決了,那么剩下的只是你安排代碼去完成,這就已經(jīng)不是什么問題了。舉個例子:數(shù)碼管動態(tài)掃描,沒寫過的初學(xué)者可能搞不清是怎么回事,其實,就是分時讓每一時間段時只控制一只數(shù)碼管顯示數(shù)字,幾只數(shù)碼管輪流顯示,由于速度很快,人眼的看起來是全部數(shù)碼管都亮的。明白是這么一回事,事情就好辦了,剩下的事情,無非是你安排讓一只只數(shù)碼管輪流顯示出相應(yīng)的數(shù)值。顯示數(shù)字,然后延時一下,再下一只顯示數(shù)字,延時,知道是這樣,我們實際程序上只要做到這樣就可以:往段口送段碼,然后打開位選顯示一只,延時一下,再關(guān)閉位選,再送出段碼,再打開另一只位選僅此而已。有了解決問題的思路,我們就能問題拆分開來,然后逐一的解決,如果動態(tài)掃描的原理都沒懂,不知道如何做,那么這個程序是怎么也寫不出來的。

6、開動腦筋,運用多種方法,不斷優(yōu)化自己的程序。想想用各種不同方法來實現(xiàn)同一功能。這是一個練習(xí)和提高的過程,一個問題,你解決了,那么你再想想,能不能換種寫法,也可以實現(xiàn)同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執(zhí)行效率更高,這個過程,就是一個進步的過程。很多知識和經(jīng)驗的獲得,并不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經(jīng)驗才能得到積累,編程水平才能有所提高。

7、看別人的代碼,學(xué)習(xí)人家的思路。這個在學(xué)習(xí)初期是很有用,通過看別人的代碼,特別是有多年編程經(jīng)驗的人寫出的具有一定水平的代碼,可以使自己編程水平得到迅速的提高,同時,也可以結(jié)合別人的編程手法,與自己的想法融合在一起,寫出更高水平的代碼,從中得到進步。但要注意,切忌將學(xué)習(xí)變成抄襲,更不是抄襲完了就認(rèn)為自己學(xué)會了,這樣做只會使你退步。

8、嘗試編寫一下綜合應(yīng)用的程序。從流水燈學(xué)起,到動態(tài)掃描,再到中斷,那么,你可以試試寫一下時鐘這種綜合性應(yīng)用的程序,不要小看時鐘,要寫好它不是一件容易的事情,它包括了單片機大部分的知識,比如有按鍵(io讀?。討B(tài)掃描(io輸出)、中斷等,如何協(xié)調(diào)好各功能模塊正常工作,才是編程者需要學(xué)習(xí)的地方,當(dāng)你單獨寫一個功能的時候,比如按鍵讀取,你可能感覺很容易,因為你的程序啥也不做,只是讀按鍵。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數(shù)碼管既能顯示,又要去處理按鍵讀取,怎么使這兩部分都正常工作,這就是一個協(xié)調(diào)過程。當(dāng)你有了這個處理協(xié)調(diào)能力,你就算是入門了。

9、著重于培養(yǎng)解決問題的能力,而不是具體看自己編寫了多少代碼或者做過什么?!皩W(xué)單片機重點在于學(xué)習(xí)解決問題的思路,而不是局限于具體的芯片類型和語言”這一直是我的座右銘,是我學(xué)單片機多年來感悟出來的。經(jīng)??吹接腥苏f“你會驅(qū)動xx芯片,真牛啊”“你搞過xx項目,真厲害”之類的話,其實這是非常片面的,搞過xx芯片,搞過xx項目,只能說明你做過這一項目,它只是你的業(yè)績,并不是代表能力就一定高。真正的能力應(yīng)該是:“遇到?jīng)]有解決過的問題或器件,能利用自己已學(xué)的知識,迅速找到解決問題的方法?!边@個才是能力。寫程序的過程就是一個創(chuàng)造的過程,幾乎沒有完全一樣的項目,每次你遇上的幾乎都不相同,所以你擁有的必須是你面對新項目時的創(chuàng)造能力,而不是標(biāo)榜著你以往做過多少項目。當(dāng)然,業(yè)績也能從另一側(cè)面反映你的經(jīng)驗和水平。

10、如果有可能,多學(xué)習(xí)計算機專業(yè)的知識,比如數(shù)據(jù)結(jié)構(gòu)等。這些是你解決問題的基礎(chǔ)知識,你把這些知識應(yīng)用得越好,就會發(fā)現(xiàn)越容易找到解決問題的方法,這就是為什么一個學(xué)計算機專業(yè)的人編的程序和一個非計算機專業(yè)的人編的程序有差異的原因。也是一個菜鳥進軍到高手所要配備的知識。如果我們把編程分為宏觀編程和微觀編程,那么微觀編程就是寫具體的代碼,比如控制某某器件的語句;而宏觀編程就是如何對整個程序進行布局、安排,使功能模塊以你想要的方式去運行,得出你想要的結(jié)果。如前所說“會控制xx器件”這些只能算是微觀編程,能做到這一步還只能算是菜鳥級別,如果面對一個新的器件,你心里沒底,沒把握去寫這個控制程序,那說明你還是一個初級的菜鳥。當(dāng)你有了一定的編程經(jīng)驗,控制過相當(dāng)數(shù)量的器件之后,你就會發(fā)現(xiàn),控制器件這些工作都是相似的、重復(fù)的工作,體現(xiàn)不出編程的水平,最多也是寫得好與不好的差別,只能算是一些小技巧的應(yīng)用。而對整個程序進行布局、安排這些才是最頭痛的事情,能達(dá)到宏觀編程和微觀編程都做好才是真正的高手。對于規(guī)模越大的程序,越能體現(xiàn)出這一點。

11、面對一個新項目時,多自己開動腦筋,不要急于找別人的程序。有不少人面對一個新項目時,第一步想到的就是網(wǎng)上找別人寫過的代碼,然后抄一段,自己再寫幾句,湊在一起就完成任務(wù),這雖然可能是省時間,但絕對不利你的學(xué)習(xí)。當(dāng)你接到一個新項目時,應(yīng)該先自己構(gòu)思一下整個程序的架構(gòu),想想如何來完成,有可能的話,畫一個流程圖,簡單的可以畫在腦子里,對程序中用到的數(shù)據(jù)、變量有一個初步的安排,然后自己動手去寫,遇到實在沒辦法解決的地方,再去請教別人,或看別人是怎么處理的,這樣首先起碼你自己動過腦想過,自己有自己的`思路,如果你一開始就看別人的程序,你的思維就會受限在別人的思維里,自己想再創(chuàng)新就更難了,這樣你自己永遠(yuǎn)也沒辦法提高,因為你是走在別人的影子里。

12、多利用網(wǎng)絡(luò)的搜索,學(xué)會提問題。一般來說,學(xué)習(xí)過程中,你遇上的問題,前人們多數(shù)也有遇上的,所以如果有什么不懂,在自己解決不了的時候,最好先到網(wǎng)上搜索一下,看能不能找到答案,找不到再到論壇里發(fā)問,發(fā)問也要有目的性,盡量簡單明了的描述問題,讓幫助你的人可以用最少的時間就看懂你說什么,畢竟人家?guī)椭闶敲赓M的,時間也是有限的。

以上就是我學(xué)習(xí)單片機的經(jīng)歷和心得體會,希望對大家會有幫助,說得有不好或不對的地方歡迎大家批評指正。

時光飛逝,一轉(zhuǎn)眼,一個學(xué)期又進尾聲了,本學(xué)期的單片機綜合課程設(shè)計也在一周內(nèi)完成了。

俗話說“好的開始是成功的一半”。說起課程設(shè)計,我認(rèn)為最重要的就是做好設(shè)計的預(yù)習(xí),認(rèn)真的研究老師給的題目,選一個自己有興趣的題目。其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設(shè)計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設(shè)計,到頭來一點收獲也沒有。最后,要重視程序的模塊化,修改的方便,也要注重程序的調(diào)試,掌握其方法。

雖然這次的課程設(shè)計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。

硬件的設(shè)計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調(diào)試,最終一個能完成課程設(shè)計的勞動成果出來了,很高興它能按著設(shè)計的思想與要求運動起來。

當(dāng)然,這其中也有很多問題,第一、不夠細(xì)心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導(dǎo)致編程出現(xiàn)錯誤。()第二,是在學(xué)習(xí)態(tài)度上,這次課設(shè)是對我的學(xué)習(xí)態(tài)度的一次檢驗。對于這次單片機綜合課程實習(xí),我的第一大心得體會就是作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對應(yīng)該是嚴(yán)謹(jǐn)。我們這次實習(xí)所遇到的多半問題多數(shù)都是由于我們不夠嚴(yán)謹(jǐn)。第三,在做人上,我認(rèn)識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的。

在這次難得的課程設(shè)計過程中我鍛煉了自己的思考能力和動手能力。通過題目選擇和設(shè)計電路的過程中,加強了我思考問題的完整性和實際生活聯(lián)系的可行性。在方案設(shè)計選擇和芯片的選擇上,培養(yǎng)了我們綜合應(yīng)用單片機的能力,對單片機的各個管腳的功能也有了進一步的認(rèn)識。還鍛煉我們個人的查閱技術(shù)資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。并且我們熟練掌握了有關(guān)器件的性能及測試方法。

再次感謝老師的輔導(dǎo)以及同學(xué)的幫助,是他們讓我有了一個更好的認(rèn)識,無論是學(xué)習(xí)還是生活,生活是實在的,要踏實走路。課程設(shè)計時間雖然很短,但我學(xué)習(xí)了很多的東西,使我眼界打開,感受頗深。

單片機學(xué)習(xí)總結(jié)篇十五

一直想寫一個帖子,將自己學(xué)習(xí)單片機的經(jīng)歷、經(jīng)驗和方法總結(jié)一下,今天終于動手寫了,呵呵,這是我學(xué)習(xí)單片機的經(jīng)驗、心得、方法。希望對大家學(xué)習(xí)單片機有所幫助。

經(jīng)常在群、論壇里看到有人問:怎么學(xué)單片機?也??吹接腥苏f學(xué)了好幾個月可就是沒有什么進展。當(dāng)然,受限于每個人受到的教育水平不同和個人理解能力的差異,學(xué)習(xí)起來會有快慢之分,但我感覺最重的就是學(xué)習(xí)方法。一個好的學(xué)習(xí)方法,能讓你事半功倍,這里說說我學(xué)習(xí)單片機的經(jīng)歷和方法。

05年的時候,因為制作fm發(fā)射電路采用了bh1415的芯片,需要用到單片機控制,所以開始接觸使用單片機,雖然以前讀書時作為一門功課學(xué)過,不過也快丟荒了10年了,基本上都忘光了,也算是從頭學(xué)起了吧。我當(dāng)時是買了一塊實驗板,很簡單的功能,比論壇實驗板還要少功能,還有一個仿真器,也是比較簡單的,sst芯片的。然后開始從大家都知道的流水燈寫起,萬事開頭難,第一個程序基本上就抄人家的,翻查了一份快速入門的學(xué)習(xí)資料,寫下第一個程序。然后,在仿真機是單步的看運行結(jié)果,從每一步執(zhí)行,都硬件上反應(yīng)出來的效果,很快,對單片機的運作有了一個非常感性的認(rèn)識,這跟只看書然后自己想象運行是完全兩碼事。然后,是進一步的其它程序?qū)W習(xí),一個月時間,基本上已經(jīng)熟悉了51的各種硬件資源。把流水燈,數(shù)碼管動態(tài)掃描,中斷等等的學(xué)習(xí)了,然后就是寫綜合性的程序,也就是我發(fā)在論壇里的時鐘。通過這個程序的編寫,使自己的編程水平有了很大的飛躍。之后,就是逐步學(xué)習(xí)編寫更多的程序,各種外圍器件的控制等等,通過編寫程序使自己不斷的提高。在學(xué)過匯編之后,我又轉(zhuǎn)到了c語言學(xué)習(xí),因為以前沒有學(xué)習(xí)過c語言,一切都很陌生,所以自己沿用了學(xué)習(xí)匯編的方法,大約花了3天功夫基本就對c語言有了初步的了解,然后就是嘗試寫上面所說的時鐘,以匯編程序的思路作為參考,以c語言來編寫,花了幾天功夫完成了這一程序,也實現(xiàn)了從匯編編程為主到c編程為主的轉(zhuǎn)變。然后,就是以c語言編寫外圍器件的控制程序,以此來熟悉c的編程風(fēng)格,一直到現(xiàn)在,基本上就是c語言編程,匯編已經(jīng)是作為調(diào)試程序的輔助。

下面我概括了幾點我的學(xué)習(xí)經(jīng)驗和心得體會:

1、萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,說keil不會建項目啦、沒有實驗板啦之類的。遇到困難要一件件攻克,不會建項目,就先學(xué)它,這方面網(wǎng)上教程很多,隨便找找看一下,做幾次就懂了。然后可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養(yǎng)一下自己的感覺,知道寫程序是怎么一回事,無論寫大程序還是小程序,要做的工序不會差多少,總得建個項目,再配置一下項目,然后建個程序,加入項目中,再寫代碼、編譯、生成hex,刷進單片機中、運行。必須熟悉這一套工序。個人認(rèn)為,一塊學(xué)習(xí)板還是必要的,寫好程序在上面運行一下看結(jié)果,學(xué)習(xí)效果會好很多,仿真器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學(xué)不會的。

2、知識點用到才學(xué),不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學(xué)了后面的,前面的估計也快忘光了,所以,最好結(jié)合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學(xué)好就是了,這是把整本書化整為零,一小點一小點的啃。

3、程序不要光看不寫,一定要自己寫一次。最開始的時候,啥都不懂,可以抄人家的程序過來,看看每一句是干什么用的,達(dá)到什么目的,運行后有什么后果,看明白了之后,就要自己寫一次,你會發(fā)現(xiàn),原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距……當(dāng)你自己能寫出來的時候,說明你就真的懂了。

4、必須學(xué)會掌握調(diào)試程序的方法。不少人寫程序,把代碼寫好了,然后一運行,不是自己想要的結(jié)果,就暈了,然后跑到論壇上發(fā)個帖子,把程序一貼,問:為什么我的程序不能正常運行?然后就等別人來給自己分析。這是一種很不好的行為,應(yīng)該自己學(xué)會發(fā)現(xiàn)問題和學(xué)會如何解決問題。這就需要學(xué)習(xí)調(diào)試程序的方法,比如keil里,可以下斷點啦,查看寄存器內(nèi)容等等,這些都是調(diào)試程序的手段,當(dāng)你發(fā)現(xiàn)你寫的程序運行結(jié)果和你想象中不一樣的時候,你可以單步,也可以下斷點,然后跟蹤,查看各相關(guān)寄存器內(nèi)容,看看程序運行過中是不是有什么偏差,找出影響結(jié)果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學(xué)到的知識是書上得不到的。

5、找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達(dá)到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結(jié)果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學(xué)會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復(fù)制到自己的程序中,可以說,這不是一種學(xué)習(xí)的態(tài)度,無助于你編程水平的提高。我?guī)缀醪辉趺纯慈思业拇a,多數(shù)時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以,要從代碼中看出別人處理問題的思路,是相當(dāng)困難的,特別是大型的程序,看起來是非常的累人,所以現(xiàn)在我也明白了,以前讀書時說的程序流程圖很重要,現(xiàn)在算是知道了。當(dāng)你知道一個問題怎么去解決了,那么剩下的只是你安排代碼去完成,這就已經(jīng)不是什么問題了。舉個例子:數(shù)碼管動態(tài)掃描,沒寫過的初學(xué)者可能搞不清是怎么回事,其實,就是分時讓每一時間段時只控制一只數(shù)碼管顯示數(shù)字,幾只數(shù)碼管輪流顯示,由于速度很快,人眼的看起來是全部數(shù)碼管都亮的。明白是這么一回事,事情就好辦了,剩下的事情,無非是你安排讓一只只數(shù)碼管輪流顯示出相應(yīng)的數(shù)值。顯示數(shù)字,然后延時一下,再下一只顯示數(shù)字,延時,知道是這樣,我們實際程序上只要做到這樣就可以:往段口送段碼,然后打開位選顯示一只,延時一下,再關(guān)閉位選,再送出段碼,再打開另一只位選僅此而已。有了解決問題的思路,我們就能問題拆分開來,然后逐一的解決,如果動態(tài)掃描的原理都沒懂,不知道如何做,那么這個程序是怎么也寫不出來的。

6、開動腦筋,運用多種方法,不斷優(yōu)化自己的程序。想想用各種不同方法來實現(xiàn)同一功能。這是一個練習(xí)和提高的過程,一個問題,你解決了,那么你再想想,能不能換種寫法,也可以實現(xiàn)同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執(zhí)行效率更高,這個過程,就是一個進步的過程。很多知識和經(jīng)驗的獲得,并不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經(jīng)驗才能得到積累,編程水平才能有所提高。

覺,先建個項目,再配置一下項目,然后建個程序,加入項目中,再寫代碼、編譯、生成hex,刷進單片機中、運行。其實當(dāng)遇到問題一定要自己嘗試著解決,不能遇到問題就去問別人,自己一定要掌握解決問的方法和思路。對一個新項目時,自己一定要多想想,不要急著去看別人是怎么寫的。應(yīng)該先想一下程序的構(gòu)架,想想如何來完成。然后自己動手去寫,理清自己的思路這樣更容易提高自己。

熟悉單片機的人都知道,要學(xué)好單片機可不是一件容易的事,倒不是因為單片機很難學(xué),而是很難找到一本專為單片機入門者而編寫的教材。翻一下身邊的單片機教材,都好像是為已經(jīng)懂單片機的人而寫的,一般先介紹單片機的硬件結(jié)構(gòu)和指令系統(tǒng),再是系統(tǒng)擴展和外圍器件,順便講一些應(yīng)用設(shè)計(隨便說一下,很多書中的電路設(shè)計已經(jīng)過時,并且有些程序還是錯誤的)。如果按照此種學(xué)習(xí)方法,想進行產(chǎn)品開發(fā),就必須先把所有的知識全部掌握了才可以進行實際應(yīng)用。學(xué)習(xí)使用單片機只能靠循序漸進的積累,雖然單片機的課程只上了幾節(jié)就去上班了,但在學(xué)習(xí)的過程中有了一定的了解。下面就本人學(xué)習(xí)單片機的過程和經(jīng)驗做簡要介紹。

首先,學(xué)習(xí)單片機要有一定的基礎(chǔ):電子技術(shù)方面要有數(shù)字電路和模擬電路等方面的理論基礎(chǔ),特別是數(shù)字電路;編程語言要求匯編語言或c語言。要想成為單片機高手,建議初學(xué)者首先學(xué)習(xí)匯編語言,學(xué)的差不多的時候,轉(zhuǎn)入c語言學(xué)習(xí)。盡管匯編語言屬于低級語言,編程效率低,但是較c語言具有目標(biāo)代碼簡短,占用內(nèi)存少,執(zhí)行速度快等優(yōu)點,更重要的是能使初學(xué)者盡快熟悉單片機的內(nèi)部結(jié)構(gòu),并能對其進行精確的控制。匯編語言在單片機教材里面都會涉及,不需要單獨購買教材和學(xué)習(xí)。c語言是一門學(xué)問,有很多專業(yè)書籍來講解,并且對我們今后的編程生涯有絕對的好處,因此要深入學(xué)習(xí),千萬不要自以為看了某某的視頻教程就以為掌握了c語言,那只是c語言的一部分。在這里給大家推薦一本單片機c語言程序設(shè)計參考書,馬忠梅等著,北京航空航天大學(xué)出版社出版的《單片機的c語言應(yīng)用程序設(shè)計》,要求c語言基礎(chǔ)。如果沒學(xué)過c語言,建議學(xué)習(xí)清華大學(xué)譚浩強編寫的c語言程序設(shè)計,這本書寫的不錯,通俗易懂。

但這并不要緊,因為你還缺乏實踐經(jīng)驗。現(xiàn)在單片機應(yīng)用廣泛,因此各個廠家分別推出了自己的單片機,我們沒必要每樣都學(xué)!因為他們的編程方法和調(diào)試過程以及內(nèi)部指令結(jié)構(gòu)有一定的相似,只要學(xué)精通一款就ok了!尤其是用c語言編程,就幾乎不用分什么派系,但是我們要選擇一款有代表性的知識范圍廣,并且入門容易,書籍多。一般來說,mcs-51系列單片機已經(jīng)得到廣泛的普及和應(yīng)用,市場上它的資料也比較多,用的人也很多。給大家推薦一些參考書,學(xué)習(xí)時只需要一本就足夠拉。書名:《新編mcs-51單片機應(yīng)用設(shè)計》,哈爾濱工業(yè)大學(xué)出版,作者:張毅剛;書名:《單片機原理及應(yīng)用》,高等教育出版社,作者:張毅剛等;書名:《單片機高級教程:應(yīng)用與設(shè)計》,北京航空航天大學(xué)出版社,作者:何立民。相關(guān)教材還有很多,在這不一一列舉。

然后,是開發(fā)工具和開發(fā)環(huán)境的選擇。選擇一塊合適的學(xué)習(xí)板,對于初學(xué)者來說一般無力接受,如果經(jīng)濟條件允許、本人又對單片機很感興趣、有從事相關(guān)工作意向的話,鼓勵大家購買。隨便說一句,學(xué)習(xí)板功能要求太全,具有流水燈、數(shù)碼管、獨立鍵盤、矩陣鍵盤、ad或da、液晶、蜂鳴器等就差不多啦,畢竟,功能齊全的價格比較高。仿真器對單片機初學(xué)者來說既是那么耳熟,同時又有些陌生,這主要是因為市場上傳統(tǒng)的仿真器價格都在千元以上,對經(jīng)濟不是非常寬裕的人來說是不小的開支。同時仿真器是用來提高調(diào)試程序效率的,也不是非需不可的,如果你沒有仿真器,遇到程序出錯的時候,只好苦思冥想,反復(fù)燒寫調(diào)試。隨便推薦一下,學(xué)林電子的51tracer仿真器,有興趣的朋友可關(guān)注一下。有了單片機教程板以后,先看下指導(dǎo)說明書,熟悉一下學(xué)習(xí)板,開卷有益。以后就得靠自己多練習(xí)了,將學(xué)習(xí)板與電腦連接好,先學(xué)會開發(fā)軟件的使用,然后從最簡單的流水燈實驗做起,按照你自己的意愿控制流水燈,當(dāng)你完成時,你會發(fā)現(xiàn)這是多么愜意的事情。太好玩了,你會覺得這不是在學(xué)習(xí),而是在玩,當(dāng)你發(fā)現(xiàn),單片機能夠按照你編寫的程序工作時,你會覺得非常興奮,比做什么事情都開心,這樣你會慢慢迷上單片機,真的。不少網(wǎng)站上說搞定某個實驗,就恭維的告訴你一聲”恭喜你,學(xué)會了”自己學(xué)會了單片機,這有點可笑,這只能說明你算過關(guān)了,對單片機有了一定了解和會使用它了。但是單片機能完成的功能太多了,尤其是對外圍器件的控制,綜合起來能設(shè)計出許多意想不到的產(chǎn)品.因此除了入門外,精通可千萬別輕易說出口。

最后,在熟練掌握和應(yīng)用后,那可以說對于單片機方面的硬件你已經(jīng)入門了,剩下的就是自己練習(xí)設(shè)計開發(fā)各種課題,不斷的積累經(jīng)驗。最終,自己完全設(shè)計具有個人風(fēng)格的課題,產(chǎn)品,這樣你就是單片機高手拉。只要過了第一關(guān),后面的路就好走多了,萬事開頭難,這大家可能都聽過。

有時候單片機的學(xué)習(xí)很單調(diào),有些知識學(xué)起來很抽象,不容易理解,只能慢慢適應(yīng),一邊學(xué)習(xí)理論知識,一邊編寫程序,將程序刷入單片機進行調(diào)試,通過這種方式才能更快速的學(xué)習(xí)單片機。要堅定自己的學(xué)習(xí)信心,在付出持之以恒的努力,我相信自己能進一步加深對單片機的了解,在單片機的學(xué)習(xí)道路上走得更遠(yuǎn)!

單片機學(xué)習(xí)總結(jié)篇十六

說這次實習(xí),我認(rèn)為最重要的就是做好程序調(diào)試,認(rèn)真的研究教師給的題目。其次,教師對實驗的講解要一絲不茍的去聽去想,因為僅有都明白了,做起產(chǎn)品就會事半功倍,如果沒弄明白,就迷迷糊糊的去做,到頭來一點收獲也沒有。最終,要重視程序的模塊化,修改的方便,也要注重程序的調(diào)試,掌握其方法。

雖然這次的實習(xí)算起來在實驗室的時間僅有幾天,可是因為我們都有自我的實驗板,所以在宿舍里做實驗的時間必須不止三天。硬件的設(shè)計跟焊接都要我們自我動手去焊,軟件的編程也要我們不斷的調(diào)試,最終一個能完成課程設(shè)計的勞動成果出來了,很高興它能按著設(shè)計的思想與要求運動起來。

當(dāng)然,這其中也有很多問題,第一、不夠細(xì)心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導(dǎo)致編程出現(xiàn)錯誤。第二,是在學(xué)習(xí)態(tài)度上,這次課設(shè)是對我的學(xué)習(xí)態(tài)度的一次檢驗。對于這次單片機綜合課程實習(xí),我的第一大心得體會就是作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對應(yīng)當(dāng)是嚴(yán)謹(jǐn)。我們這次實習(xí)所遇到的多半問題多數(shù)都是由于我們不夠嚴(yán)謹(jǐn)。第三,在做人上,我認(rèn)識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的。

經(jīng)過這次單片機實習(xí),我不僅僅加深了對單片機理論的理解,將理論很好地應(yīng)用到實際當(dāng)中去,并且我還學(xué)會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自我,超越自我。創(chuàng)新能夠是在原有的基礎(chǔ)上進行改善,使之功能不斷完善,成為真己的東西。

這個設(shè)計過程中,我們經(jīng)過在原有的計數(shù)器系統(tǒng)進行了改善,使之增添了暫停、計數(shù)、清零等的三個控制功能,使之成為一個更加適用,功能更加完備的屬于自我的一個系統(tǒng)。設(shè)計結(jié)果能夠貼合題意,成功完成了此次實習(xí)要求,我們不只在乎這一結(jié)果,更加在乎的,是這個過程。這個過程中,我們花費了很多的時間和精力,更重要的是,我們在學(xué)會創(chuàng)新的基礎(chǔ)上,同時還懂得合作精神的重要性,學(xué)會了與他人合作。作為一名自動化專業(yè)的快大三學(xué)生,我覺得做單片機實習(xí)是十分必要的。在已度過的大學(xué)時間里,我們大多數(shù)接觸的是專業(yè)課。我們在課堂上掌握的僅僅是專業(yè)課的理論知識,如何去鍛煉我們的實踐本事?如何把我們所學(xué)的專業(yè)基礎(chǔ)課理論知識運用到實踐中去呢?我想做類似實習(xí)就為我們供給了良好的實踐平臺。

首先在做本次實習(xí)的過程中,我感觸最深的當(dāng)屬查閱很多的設(shè)計資料了。為了讓自我的設(shè)計更加完善,查閱這方面的設(shè)計資料是十分必要的,同時也是必不可少的。我們是在做單片機實習(xí),但我們不是藝術(shù)家,他們能夠拋開實際盡情在幻想的世界里翱翔,而我們一切都要有據(jù)可依,有理可尋,不切實際的構(gòu)想永遠(yuǎn)只能是構(gòu)想,永遠(yuǎn)無法升級為設(shè)計。

其次,在這次課程設(shè)計中,我們運用到了以前所學(xué)的專業(yè)課知識,如:c語言、模擬和數(shù)字電路知識等。雖然過去從未獨立應(yīng)用過它們,但在學(xué)習(xí)的過程中帶著問題去學(xué)我發(fā)現(xiàn)效率很高,這是我做這次課程設(shè)計的又一收獲。

最終,在實習(xí)之前,我們要對所用單片機的內(nèi)部結(jié)構(gòu)有一個系統(tǒng)的了解,明白該單片機內(nèi)有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設(shè)計程序時,不能妄想一次就將整個程序設(shè)計好,反復(fù)修改、不斷改善是程序設(shè)計的必經(jīng)之路;要養(yǎng)成注釋程序的好習(xí)慣,一個程序的完美與否不僅僅是實現(xiàn)功能,而應(yīng)當(dāng)讓人一看就能明白你的思路,這樣也為資料的保存和交流供給了方便;在實習(xí)過程中遇到問題是很正常的,但我們應(yīng)當(dāng)將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。

單片機學(xué)習(xí)總結(jié)篇十七

學(xué)習(xí)單片機最終要的是當(dāng)然是練,我所說的學(xué)習(xí)跟課堂上的單片機學(xué)習(xí)不同,我以前也看過一些單片機教材,有些教材講的是單片機的工作原理和內(nèi)部結(jié)構(gòu),這些東西對于我們暫時并不需要,等以后開課的時候在學(xué)習(xí)好了。現(xiàn)在要學(xué)習(xí)的是暫時拋開內(nèi)部結(jié)構(gòu)原理不談,如何能用單片機寫一些簡單的小程序,是從實用性的角度出發(fā),網(wǎng)上有一種說法稱之為先實踐后理論的學(xué)習(xí)方法。

因此我的觀點如下,單片機的硬件結(jié)構(gòu)首先要有一個基本的了解,最起碼要知道各引腳的功能、區(qū)別,能自己動手搭一個單片機的最小系統(tǒng),然后就可以直接從程序入手,程序最好還是用c語言編程,從簡單的跑馬燈做起,逐漸深入,陸續(xù)可以做一些數(shù)碼管、液晶、ds1302、ds18b20等電子元器件的應(yīng)用,在深入就可以結(jié)合一些具體實例擴展一些中斷、串口通訊等功能。還有一點要聲明的是單片機里用到的c語言其實很有限,課堂上學(xué)習(xí)c++的很大一部分內(nèi)容在初期單片機編程中都用不到,因此沒必要因為覺的自己的c語言基礎(chǔ)不是很好而對單片機望而止步!

單片機學(xué)習(xí)總結(jié)篇十八

單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)量輕、價格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時,學(xué)習(xí)使用單片機是了解計算機原理與結(jié)構(gòu)的最佳選擇。單片機在學(xué)習(xí)和講解時可以和學(xué)生已比較熟悉的微機的結(jié)構(gòu)進行對比,因為單片機內(nèi)部也用和微機功能類似的模塊,比如cpu、內(nèi)存、并行總線,還有和硬盤作用相同的存儲器件,在學(xué)習(xí)和講解中要著重強調(diào)單片機在以上相關(guān)芯片部件與微機的異同,應(yīng)用時的差別。突出講解單片機是一種在線式實時控制計算機的本質(zhì)特征,及有較強的抗干擾能力,較低的成本的特性,并且通過列舉在日常日常生活中的常見的家電產(chǎn)品如全自動滾筒洗衣機、排煙罩、vcd等等,讓學(xué)生對單片機的應(yīng)用產(chǎn)生直觀認(rèn)識,提高學(xué)生的學(xué)習(xí)興趣。

在進行單片機課程教學(xué)安排時,要遵循一定的次序,因為學(xué)習(xí)單片機知識需要有一定的基礎(chǔ)。例如要具備一定的電子技術(shù)方面(數(shù)字電路和模擬電路等方面)的理論基礎(chǔ),特別是數(shù)字電路;軟件設(shè)計方面要具備一定的編程語言學(xué)習(xí)基礎(chǔ)(如匯編語言或c語言)。引導(dǎo)學(xué)生要想成為單片機高手,建議學(xué)生首先學(xué)習(xí)匯編語言,學(xué)的差不多的時候,轉(zhuǎn)入c語言學(xué)習(xí)。盡管匯編語言屬于低級語言,編程效率低,但是較c語言具有目標(biāo)代碼簡短,占用內(nèi)存少,執(zhí)行速度快等優(yōu)點,更重要的是能使初學(xué)者盡快熟悉單片機的內(nèi)部結(jié)構(gòu),并能對其進行精確的控制。匯編語言在單片機教材里面都會涉及,不需要單獨購買教材和學(xué)習(xí)。c語言是一門學(xué)問,有很多專業(yè)書籍來講解,并且對學(xué)生今后的編程生涯有絕對的好處,因此要深入學(xué)習(xí),千萬不要自以為學(xué)習(xí)了學(xué)校的c語言課程就以為掌握了c語言,那只是c語言的一部分。在教學(xué)中給學(xué)生推薦單片機c語言程序設(shè)計參考書,例如馬忠梅等著,北京航空航天大學(xué)出版社出版的《單片機的c語言應(yīng)用程序設(shè)計》,要求c語言基礎(chǔ)。如果沒學(xué)過c語言,建議學(xué)習(xí)清華大學(xué)譚浩強編寫的c語言程序設(shè)計,這本書編寫得比較好,通俗易懂。

定地了解和感官認(rèn)識?,F(xiàn)在單片機應(yīng)用廣泛,因此各個廠家分別推出了自己的單片機,按內(nèi)部結(jié)構(gòu)體系派系分:51系列、pic系列、avr系列、摩托羅拉等等……教導(dǎo)學(xué)生沒必要每樣都學(xué)!因為上述單片機的編程方法和調(diào)試過程以及內(nèi)部指令結(jié)構(gòu)有一定的相似,只要學(xué)精通一款就可以了。一般來說,mcs-51系列單片機已經(jīng)得到廣泛的普及和應(yīng)用,市場上它的資料也比較多,用的人也很多。因此可以引導(dǎo)學(xué)生在教材之外選擇一款有代表性的知識范圍廣,并且入門容易的51參考書。

最后,任何硬件的應(yīng)用都離不開軟件的設(shè)計支撐,因此在講授單片機的課程中要強調(diào)編程的重要性,鼓勵學(xué)生從小程序的編寫設(shè)計開始,從模仿到獨創(chuàng),鍛煉編程能力。并且注意記住單片機的外部引腳,p3口的復(fù)用,相關(guān)寄存器,psw的設(shè)置,將軟硬件技術(shù)結(jié)合起來,把理論用于實踐中去,實現(xiàn)用單片機控制各個機構(gòu)去做想要實現(xiàn)的事情,把抽象的東西用計算機語言表達(dá)出來傳給單片機的最終任務(wù)。

單片機學(xué)習(xí)總結(jié)篇十九

1、學(xué)習(xí)單片機沒有捷徑,別指望兩三天就學(xué)會,要堅持不懈,重在積累。

2、別崇拜高手,別相信天才,大部分人都不是天才(相信你也不是)!

3、單片機是一門應(yīng)用性和實踐性很強的學(xué)科,要多動手,多做實驗。

4、要學(xué)會參考別人的程序,減少自我琢磨的時間,迅速提高自我的編程潛力。

5、碰到問題能夠借助網(wǎng)絡(luò)來搜尋答案和對自我有幫忙的問題,能夠大大減少你的開發(fā)時間。

6、要多交一些朋友,多交流。技術(shù)是靠不斷的積累和交流才會提高的,封閉自守只會更加落后。

單片機學(xué)習(xí)總結(jié)篇二十

我們將以一個小的測試電路開始.這個測試電路的目的僅僅是測試我們的開發(fā)環(huán)境.我們用它來編譯,下載以及測試一個小程序.這個測試程序僅僅是引起led閃爍.

我建議給這個單片機弄一個小的印刷電路板.以后你就可以在這塊電路板的區(qū)域做你自己的試驗.一個好辦法是用一個模擬板當(dāng)作這個.你無論如何也不能嘗試著把avr和它的4mhz晶震直接放在模擬板上.更好的辦法是用少量的短線把輸入和輸出腳與模擬板相連,因為這樣的模擬板不是為快速數(shù)字電路制作的.4mhz的晶震和電容器在物理上應(yīng)該非??拷鼏纹瑱C.

在我們這個例子里編程器的連接器電阻實際上是不必要的.只有在你打算把port-b輸入輸出腳用于其他目的時才需要.

單片機學(xué)習(xí)總結(jié)篇二十一

很多人說,學(xué)單片機最好先學(xué)匯編語言,以我的經(jīng)驗告訴大家,絕對沒有這個必要,初學(xué)者一開始就直接用c語言為單片機編程,既省時間,學(xué)起來又容易,提高速度會很快。在剛開始學(xué)單片機的時候,千萬不要為了解單片機內(nèi)部結(jié)構(gòu)而浪費時間,這樣只能打擊你的信心,當(dāng)你學(xué)會編程后,自然一步步就掌握其內(nèi)部結(jié)構(gòu)了。

單片機提高重在實踐,想要學(xué)好單片機,軟件編程必不可少??墒鞘煜び布τ趯W(xué)好單片機的也是十分重要的。如何學(xué)習(xí)好硬件,動手實踐是必不可少的。我們能夠經(jīng)過自我動手做一個自我的電子制作,經(jīng)過完成它,以提高我的對一些芯片的了解和熟練運用它。這樣我們就能夠多一些了解芯片的結(jié)構(gòu)。我相信,你完成了一個屬于自我的電子制作,你的單片機水平就會有一個質(zhì)的提高。

這就是我學(xué)習(xí)單片機的心得體會,期望給單片機的愛好者學(xué)好單片機有所幫忙。

使用按鈕輸入信號,發(fā)光二極管顯示輸出電平,就能夠?qū)W習(xí)引腳的數(shù)字io功能,在按下某個按鈕后,某發(fā)光二極管發(fā)亮,這就是數(shù)字電路中組合邏輯的功能,雖然很簡單,可是能夠?qū)W習(xí)一般的單片機編程思想,例如,必須設(shè)置很多寄存器對引腳進行初始化處理,才能使引腳具備有數(shù)字輸入和輸出輸出功能。每使用單片機的一個功能,就要對控制該功能的寄存器進行設(shè)置,這就是單片機編程的特點,千萬不要怕麻煩,所有的單片機都是這樣。

第二步:定時器的使用。

學(xué)會定時器的使用,就能夠用單片機實現(xiàn)時序電路,時序電路的功能是強大的,在工業(yè)、家用電氣設(shè)備的控制中有很多應(yīng)用,例如,能夠用單片機實現(xiàn)一個具有一個按鈕的樓道燈開關(guān),該開關(guān)在按鈕按下一次后,燈亮3分鐘后自動滅,當(dāng)按鈕連續(xù)按下兩次后,燈常亮不滅,當(dāng)按鈕按下時間超過2s,則燈滅。數(shù)字集成電路能夠?qū)崿F(xiàn)時序電路,可編程邏輯器件(pld)能夠?qū)崿F(xiàn)時序電路,可編程控制器(plc)也能夠?qū)崿F(xiàn)時序電路,可是僅有單片機實現(xiàn)起來最簡單,成本最低。定時器的使用是十分重要的,邏輯加時間控制是單片機使用的基礎(chǔ)。

第三步:中斷。

單片機的特點是一段程序反復(fù)執(zhí)行,程序中的每個指令的執(zhí)行都需要必須的執(zhí)行時間,如果程序沒有執(zhí)行到某指令,則該指令的動作就不會發(fā)生,這樣就會耽誤很多快速發(fā)生的事情,例如,按鈕按下時的下降沿。要使單片機在程序正常運行過程中,對快速動作做出反應(yīng),就必須使用單片機的中斷功能,該功能就是在快速動作發(fā)生后,單片機中斷正常運行的程序,處理快速發(fā)生的動作,處理完成后,在回到執(zhí)行正常的程序。中斷功能使用中的困難是需要精確地明白什么時候不允許中斷發(fā)生(屏蔽中斷)、什么時候允許中斷發(fā)生(開中斷),需要設(shè)置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應(yīng)當(dāng)干什么,中斷完成后,程序應(yīng)當(dāng)干什么等等。中斷學(xué)會后,就能夠編制更復(fù)雜結(jié)構(gòu)的程序,這樣的程序能夠干著一件事,監(jiān)視著一件事,一旦監(jiān)視的事情發(fā)生,就中斷正在干的事情,處理監(jiān)視的事情,當(dāng)然也能夠監(jiān)視多個事情,形象的比喻,中斷功能使單片機具有吃著碗里的,看著鍋里的功能。

以上三步學(xué)會,就相當(dāng)于降龍十八掌武功,會了三掌了,能夠勉強護身。

第四步:與pc機進行rs232通信。

單片機都有usart接口,異常是msp430系列中很多型號,都具有兩個usart接口。usart接口不能直接與pc機的rs232接口連接,它們之間的邏輯電平不一樣,需要使用一個max3232芯片進行電平轉(zhuǎn)換。

usart接口的使用是十分重要的,經(jīng)過該接口,能夠使單片機與pc機之間交換信息,雖然rs232通信并不先進,可是對于接口的學(xué)習(xí)是十分重要的。正確使用usart接口,需要學(xué)習(xí)通信協(xié)議,pc機的rs232接口編程等等知識。試想,單片機實驗板上的數(shù)據(jù)顯示在pc機監(jiān)視器上,而pc機的鍵盤信號能夠在單片機實驗板上得到顯示,將是多么有意思的事情啊!

第五步:學(xué)會ad轉(zhuǎn)換。

map430單片機帶有多通道12位ad轉(zhuǎn)換器,經(jīng)過這些ad轉(zhuǎn)換器能夠使單片機操作模擬量,顯示和檢測電壓、電流等信號。學(xué)習(xí)時注意模擬地與數(shù)字地、參考電壓、采樣時間,轉(zhuǎn)換速率,轉(zhuǎn)換誤差等概念。使用ad轉(zhuǎn)換功能的簡單的例子是設(shè)計一個電壓表。

第六步:學(xué)會pci、i2c接口和液晶顯示器接口。

這些接口的使用能夠使單片機更容易連接外部設(shè)備,在擴展單片機功能方面十分重要。

第七步:學(xué)會比較、捕捉、pwm功能。

這些功能能夠使單片機能夠控制電機,檢測轉(zhuǎn)速信號,實現(xiàn)電機調(diào)速器等控制起功能。如果以上七步都學(xué)會,就能夠設(shè)計一般的應(yīng)用系統(tǒng),相當(dāng)于學(xué)會十招降龍十八掌,能夠出手攻擊了。

第八步:學(xué)習(xí)usb接口、tcpip接口、各種工業(yè)總線的硬件與軟件設(shè)計。

學(xué)習(xí)usb接口、tcpip接口、各種工業(yè)總線的硬件與軟件設(shè)計是十分重要的,因為這是當(dāng)前產(chǎn)品開發(fā)的發(fā)展方向。

到此為止,相當(dāng)于學(xué)會15招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機大蝦了!

【本文地址:http://mlvmservice.com/zuowen/15666722.html】

全文閱讀已結(jié)束,如果需要下載本文請點擊

下載此文檔