當前位置:文範網 >

心得體會 >專題心得體會 >

單片機心得體會【多篇】

單片機心得體會【多篇】

單片機心得體會【多篇】

單片機學習心得體會 篇一

經常在羣、論壇裏看到有人問:怎麼學單片機?也常看到有人説學了好幾個月可就是沒有什麼進展。當然,受限於每個人受到的教育水平不同和個人理解能力的差異,學習起來會有快慢之分,但我感覺最重的就是學習方法。一個好的學習方法,能讓你事半功倍,這裏説説我學習單片機的經歷和方法。

20xx年的時候,因為製作FM發射電路採用了BH1415的芯片,需要用到單片機控制,所以開始接觸使用單片機,雖然以前讀書時作為一門功課學過,不過也快丟荒了10年了,基本上都忘光了,也算是從頭學起了吧。我當時是買了一塊實驗板,很簡單的功能,比論壇實驗板還要少功能,還有一個仿真器,也是比較簡單的,SST芯片的。然後開始從大家都知道的流水燈寫起,萬事開頭難,第一個程序基本上就抄人家的,翻查了一份快速入門的學習資料,寫下第一個程序。然後,在仿真機是單步的看運行結果,從每一步執行,都硬件上反應出來的效果,很快,對單片機的運作有了一個非常感性的認識,這跟只看書然後自己想象運行是完全兩碼事。然後,是進一步的其它程序學習,一個月時間,基本上已經熟悉了51的各種硬件資源。把流水燈,數碼管動態掃描,中斷等等的學習了,然後就是寫綜合性的程序,也就是我發在論壇裏的時鐘。

通過這個程序的編寫,使自己的編程水平有了很大的飛躍。之後,就是逐步學習編寫更多的程序,各種外圍器件的控制等等,通過編寫程序使自己不斷的提高。在學過彙編之後,我又轉到了C語言學習,因為以前沒有學習過C語言,一切都很陌生,所以自己沿用了學習彙編的方法,大約花了3天功夫基本就對C語言有了初步的瞭解,然後就是嘗試寫上面所説的時鐘,以彙編程序的思路作為參考,以C語言來編寫,花了幾天功夫完成了這一程序,也實現了從彙編編程為主到C編程為主的轉變。然後,就是以C語言編寫外圍器件的控制程序,以此來熟悉C的編程風格,一直到現在,基本上就是C語言編程,彙編已經是作為調試程序的輔助。

下面我概括了幾點我的學習經驗和心得體會:

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

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

3、程序不要光看不寫,一定要自己寫一次。最開始的時候,啥都不懂,可以抄人家的程序過來,看看每一句是幹什麼用的,達到什麼目的,運行後有什麼後果,看明白了之後,就要自己寫一次,你會發現,原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距……當你自己能寫出來的時候,説明你就真的懂了。

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

5、找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接複製到自己的程序中,可以説,這不是一種學習的態度,無助於你編程水平的提高。我幾乎不怎麼看人家的代碼,多數時候是看別人的思路,有方框圖最好,沒有的話文字説明也可以,要從代碼中看出別人處理問題的思路,是相當困難的,特別是大型的程序,看起來是非常的累人,所以現在我也明白了,以前讀書時説的程序流程圖很重要,現在算是知道了。

當你知道一個問題怎麼去解決了,那麼剩下的只是你安排代碼去完成,這就已經不是什麼問題了。舉個例子:數碼管動態掃描,沒寫過的初學者可能搞不清是怎麼回事,其實,就是分時讓每一時間段時只控制一隻數碼管顯示數字,幾隻數碼管輪流顯示,由於速度很快,人眼的看起來是全部數碼管都亮的。明白是這麼一回事,事情就好辦了,剩下的事情,無非是你安排讓一隻只數碼管輪流顯示出相應的數值。顯示數字,然後延時一下,再下一隻顯示數字,延時,知道是這樣,我們實際程序上只要做到這樣就可以:往段口送段碼,然後打開位選顯示一隻,延時一下,再關閉位選,再送出段碼,再打開另一隻位選僅此而已。有了解決問題的思路,我們就能問題拆分開來,然後逐一的解決,如果動態掃描的原理都沒懂,不知道如何做,那麼這個程序是怎麼也寫不出來的。

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

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

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

9、着重於培養解決問題的能力,而不是具體看自己編寫了多少代碼或者做過什麼。“學單片機重點在於學習解決問題的思路,而不是侷限於具體的芯片類型和語言”這一直是我的座右銘,是我學單片機多年來感悟出來的。經常看到有人説“你會驅動XX芯片,真牛啊”“你搞過XX項目,真厲害”之類的話,其實這是非常片面的,搞過XX芯片,搞過XX項目,只能説明你做過這一項目,它只是你的業績,並不是代表能力就一定高。真正的能力應該是:“遇到沒有解決過的問題或器件,能利用自己已學的知識,迅速找到解決問題的方法。”這個才是能力。寫程序的過程就是一個創造的過程,幾乎沒有完全一樣的項目,每次你遇上的幾乎都不相同,所以你擁有的必須是你面對新項目時的創造能力,而不是標榜着你以往做過多少項目。當然,業績也能從另一側面反映你的經驗和水平。

10、如果有可能,多學習計算機專業的知識,比如數據結構等。這些是你解決問題的基礎知識,你把這些知識應用得越好,就會發現越容易找到解決問題的方法,這就是為什麼一個學計算機專業的人編的程序和一個非計算機專業的人編的程序有差異的原因。也是一個菜鳥進軍到高手所要配備的知識。如果我們把編程分為宏觀編程和微觀編程,那麼微觀編程就是寫具體的代碼,比如控制某某器件的語句;而宏觀編程就是如何對整個程序進行佈局、安排,使功能模塊以你想要的方式去運行,得出你想要的結果。如前所説“會控制XX器件”這些只能算是微觀編程,能做到這一步還只能算是菜鳥級別,如果面對一個新的器件,你心裏沒底,沒把握去寫這個控制程序,那説明你還是一個初級的菜鳥。當你有了一定的編程經驗,控制過相當數量的器件之後,你就會發現,控制器件這些工作都是相似的、重複的工作,體現不出編程的水平,最多也是寫得好與不好的差別,只能算是一些小技巧的應用。而對整個程序進行佈局、安排這些才是最頭痛的事情,能達到宏觀編程和微觀編程都做好才是真正的高手。對於規模越大的程序,越能體現出這一點。

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

12、多利用網絡的搜索,學會提問題。一般來説,學習過程中,你遇上的問題,前人們多數也有遇上的,所以如果有什麼不懂,在自己解決不了的時候,最好先到網上搜索一下,看能不能找到答案,找不到再到論壇裏發問,發問也要有目的性,儘量簡單明瞭的描述問題,讓幫助你的人可以用最少的時間就看懂你説什麼,畢竟人家幫助你是免費的,時間也是有限的。

以上就是我學習單片機的經歷和心得體會,希望對大家會有幫助,説得有不好或不對的地方歡迎大家批評指正。

單片機學習心得體會 篇二

很多人説,學單片機最好先學彙編語言,以我的經驗告訴大家,絕對沒有這個必要,初學者一開始就直接用C語言為單片機編程,既省時間,學起來又容易,提高速度會很快。在剛開始學單片機的時候,千萬不要為了解單片機內部結構而浪費時間,這樣只能打擊你的信心,當你學會編程後,自然一步步就掌握其內部結構了。

單片機的學習實踐。

單片機提高重在實踐,想要學好單片機,軟件編程必不可少。可是熟悉硬件對於學好單片機的也是十分重要的。如何學習好硬件,動手實踐是必不可少的。我們能夠經過自我動手做一個自我的電子製作,經過完成它,以提高我的對一些芯片的瞭解和熟練運用它。這樣我們就能夠多一些瞭解芯片的結構。我相信,你完成了一個屬於自我的電子製作,你的單片機水平就會有一個質的提高。

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

使用單片機就是理解單片機硬件結構,以及內部資源的應用,在彙編或C語言中學會各種功能的初始化設置,以及實現各種功能的程序編制。

第一步:數字IO的使用

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

第二步:定時器的使用

學會定時器的使用,就能夠用單片機實現時序電路,時序電路的功能是強大的,在工業、家用電氣設備的控制中有很多應用,例如,能夠用單片機實現一個具有一個按鈕的樓道燈開關,該開關在按鈕按下一次後,燈亮3分鐘後自動滅,當按鈕連續按下兩次後,燈常亮不滅,當按鈕按下時間超過2s,則燈滅。數字集成電路能夠實現時序電路,可編程邏輯器件(PLD)能夠實現時序電路,可編程控制器(PLC)也能夠實現時序電路,可是僅有單片機實現起來最簡單,成本最低。定時器的使用是十分重要的,邏輯加時間控制是單片機使用的基礎。

第三步:中斷

單片機的特點是一段程序反覆執行,程序中的每個指令的執行都需要必須的執行時間,如果程序沒有執行到某指令,則該指令的動作就不會發生,這樣就會耽誤很多快速發生的事情,例如,按鈕按下時的下降沿。要使單片機在程序正常運行過程中,對快速動作做出反應,就必須使用單片機的中斷功能,該功能就是在快速動作發生後,單片機中斷正常運行的程序,處理快速發生的動作,處理完成後,在回到執行正常的程序。中斷功能使用中的困難是需要精確地明白什麼時候不允許中斷髮生(屏蔽中斷)、什麼時候允許中斷髮生(開中斷),需要設置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應當幹什麼,中斷完成後,程序應當幹什麼等等。中斷學會後,就能夠編制更復雜結構的程序,這樣的程序能夠幹着一件事,監視着一件事,一旦監視的事情發生,就中斷正在乾的事情,處理監視的事情,當然也能夠監視多個事情,形象的比喻,中斷功能使單片機具有吃着碗裏的,看着鍋裏的功能。以上三步學會,就相當於降龍十八掌武功,會了三掌了,能夠勉強護身。

第四步:與PC機進行RS232通信

單片機都有USART接口,異常是MSP430系列中很多型號,都具有兩個USART接口。USART接口不能直接與PC機的RS232接口連接,它們之間的邏輯電平不一樣,需要使用一個MAX3232芯片進行電平轉換。

USART接口的使用是十分重要的,經過該接口,能夠使單片機與PC機之間交換信息,雖然RS232通信並不先進,可是對於接口的學習是十分重要的。正確使用USART接口,需要學習通信協議,PC機的RS232接口編程等等知識。試想,單片機實驗板上的數據顯示在PC機監視器上,而PC機的鍵盤信號能夠在單片機實驗板上得到顯示,將是多麼有意思的事情啊!

第五步:學會AD轉換

MAP430單片機帶有多通道12位AD轉換器,經過這些AD轉換器能夠使單片機操作模擬量,顯示和檢測電壓、電流等信號。學習時注意模擬地與數字地、參考電壓、採樣時間,轉換速率,轉換誤差等概念。使用AD轉換功能的簡單的例子是設計一個電壓表。

第六步:學會PCI、I2C接口和液晶顯示器接口

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

第七步:學會比較、捕捉、PWM功能

這些功能能夠使單片機能夠控制電機,檢測轉速信號,實現電機調速器等控制起功能。如果以上七步都學會,就能夠設計一般的應用系統,相當於學會十招降龍十八掌,能夠出手攻擊了。

第八步:學習USB接口、TCPIP接口、各種工業總線的硬件與軟件設計

學習USB接口、TCPIP接口、各種工業總線的硬件與軟件設計是十分重要的,因為這是當前產品開發的發展方向。

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

單片機實訓 篇三

單片機應用課程設計教學大綱

開課學院:機電工程學院 適用專業:電子科學與技術 課程編號:2009404 課程英文名稱:Single-chip Microcomputer Application System Design 實驗課程總學時:36 實驗課程總學分:1

一、課程性質和目的:

單片機原理及應用是一門技術性、應用性很強的學科,實驗教學是它的一個極為重要的教學環節,除實驗教學環節,單片機課程設計也是重要的實踐教學環節,通過這一環節可使學生不但能夠將課堂上學到的理論知識與實踐應用結合起來,而且能夠對電子電路、電子元器件、印製電路板等方面的知識進一步加深認識,同時在軟件編程、排錯調試、相關儀器設備的使用技能等方面得到較全面的鍛鍊和提高,為今後能獨立進行單片機應用系統的開發設計工作打良好的基礎。

二、本課程與其它課程的聯繫與分工

先修課程:電路分析、模擬電路、數字電路、微機原理、單片機、電子線路常用軟件 後續課程:傳感器技術、數字信號處理等

三、單片機課程設計的基本要求

1、原則上每生一項設計,不能重複設計。

2、項目大的可多人從事,但每人必須承擔足夠的設計任務。

3、項目結題需要提供電路圖、程序清單、設計説明書等資料,還要提供實物作品,運行照片等。

4、參加科技節展出及評獎的作品,要給與適量的加分。優秀的設計人員優先推薦參加省機電大賽或電子大賽。

5、整個課程設計過程中,嚴格執行考核制度,對於無故曠課、擾亂課堂秩序、玩遊戲、玩手機、不從事設計和製作的行為給予嚴肅處理。

6、對於課堂表現好的同學,進行加分獎勵。

四、課程設計的實施過程

1、基本開發工具的使用

電路設計及仿真運行工具Proteus軟件、編程及編譯環境Keil uVision軟件、程序燒寫器的使用及驅動程序的安裝。

2、單片機應用系統的搭建方法

電源的設計、振盪電路參數的選擇、復位電路的設計、內置及外置程序程序存儲器的選擇,各端口的驅動能力及接口方法。

3、學生實踐能力的摸底測試

通過簡單的單片機應用設計,如:流水燈、數碼顯示、鍵盤控制等,進行軟環境編程測試及硬環境測試。

軟環境測試:利用Proteus、Keil C51 進行仿真測試。 硬環境測試:搭建具體電路,利用編程器燒寫程序,進行調試。

4、選擇設計題目

學生可根據自身能力和愛好,選擇或自擬設計題目,並進行系統的分析和調研、可行性分析、性價比分析,形成設計任務書。指導教師處備案。

5、確定實施方案

經過方案論證,找出最優化的實施方案。以此評價開發思路。

6、加強指導

指導教師對學生的共性問題進行集中指導,對零散問題進行分別指導。

7、硬件電路設計

根據實施方案,利用Proteus軟件設計原理圖。原理圖的質量作為考核依據。

8、軟件設計

根據系統工作過程畫出各部分流程圖,根據流程圖編寫程序並進行整合,程序和流程圖的質量作為考核依據。

9、仿真調試

編譯後的程序加載到原理圖上進行仿真,調試,調試成功後的仿真圖片作為考核的依據。

10、電路搭建

根據電路原理圖設計,進行佈線圖設計。購買電子元件,焊接線路板,線路板的焊接質量作為考核依據。

11、系統調試

系統調試成功之後,考察功能實現情況,作為考核依據。

12、撰寫課程設計論文

要求從選題、論證、設計、仿真、調試、形成作品到感想寫入論文內,要符合正規論文格式。

五、考核方案

1、考核分四部分進行:實物作品、課程設計論文、平時成績、課堂表現

2、實物作品從實現功能和焊接質量進行評分,佔總成績的40%。

3、課程設計論文從論文的規格、要求進行評分,佔總成績的30%。

4、平時成績就是平時階段性的檢查成績,佔總成績的20%。

5、課堂表現指出勤、課堂紀律,佔總成績的10%。

6、科技節加分:一等獎5分、二等獎4分、三等獎3分、參展2分。

六、單片機課程設計題目(備選)

1、基於單片機的智能電壓表設計

2、基於單片機的LED流水燈系統設計

3、基於單片機的智能船模設計

4、基於單片機的電梯控制模型設計

5、基於單片機的水位控制系統設計

6、基於單片機的多路數據採集系統設計

7、基於單片機的搶答器設計

8、基於單片機的數字温度計設計

9、基於單片機的智能小車設計

10、基於單片機的遙控器設計

11、基於單片機的串行通信發射機設計

12、基於單片機的簡易智能電動車設計

13、基於單片機的太陽能熱水器控制器設計

14、MCS-51單片機温度控制系統的設計

15、直流電動機的轉速檢測與脈寬調速

16、基於單片機的智能機器人的設計

17、基於單片機的簡易無線競賽系統的設計

18、基於單片機的車輛闖紅燈監控系統設計

19、基於單片機控制的井下瓦斯監控系統設計 20、基於單片機的煤氣泄漏檢測報警裝置設計

21、基於單片機的井式滲碳爐控制系統設計

22、基於單片機的蔬菜大棚温濕度智能控制系統設計

23、基於單片機的電子鐘設計

24、基於單片機的液位控制器設計(8051)

25、基於單片機的點陣電子顯示屏設計

26、基於單片機的智能尋跡避障小車設計

27、基於單片機的熱敏電阻測温系統設計

28、基於單片機的智能型電話遠程遙控器設計

29、基於單片機的數控直流電源設計 30、基於單片機的電子萬年曆設計

31、基於單片機的紅外防盜報警器設計

32、基於單片機的花卉温室控温系統設計

33、基於單片機的焊機温度控制系統設計

34、基於單片機的路燈控制器設計

35、基於單片機的車牀刀架控制系統設計

36、基於單片機的電機智能綜合保護裝置設計

37、基於單片機的太陽能熱水器控制器設計

38、基於單片機的智能型礦用磁力啟動器設計

39、基於單片機的無氧退火爐温控系統設計

40、基於單片機的電廠鍋爐過熱蒸汽温度監測系統設計

41、基於單片機的摩托車里程錶研製

42、基於單片機的自動車庫門的設計

43、基於單片機的自動滴灌控制系統的設計

44、基於單片機的預付費電度表設計

45、基於單片機的智能電子秤設計

46、基於單片機的油井巡視定位系統設計

47、基於單片機的照明控制系統

48、基於單片機的鍋爐液位控制系統設計

49、基於單片機的洗衣機設計

50、基於單片機的鍋爐汽包水位控制系統設計

51、基於單片機的多功能秒錶設計

52、基於單片機的無線監護系統的設計

53、基於串行通信的紅外線智能家電控制系統

54、基於單片機的智能遙控器設計

56、基於單片機的公用電話網遠程控制器的設計

57、基於單片機的多功能節能微波爐控制器設計

58、基於單片機的多功能數顯表設計(氣壓、衝擊頻率)

59、基於單片機的倉庫温濕度測量儀設計 60、基於單片機的自動加料系統 62、基於單片機的遠程温度顯示系統

63、基於89C51單片機的傳感器水位測量系統 64、基於51單片機的廣告燈設計 65、基於單片機的水箱水位控制系統設計 66、動態電子秤設計

67、基於單片機的非接觸式熱量測量系統設計 68、基於單片機的非接觸式位移傳感器設計 69、基於單片機的非接觸式温度測試儀設計 70、基於單片機的工業電加熱爐的微機控制系統設計 71、基於單片機的户用超聲波熱量表設計 72、基於單片機的火災自動探測報警系統設計 73、基於單片機的住宅智能化險情報警系統設計 74、基於單片機的數字温度測量及顯示系統設計 75、火災自動報警系統設計

76、基於GSM短信模塊的家庭防盜報警系統 77、基於GSM模塊的車載防盜系統設計 78、基於單片機的16×16點陣(滾動顯示) 79、基於單片機的倉庫温濕度的監測系統 80、基於單片機的點陣電子顯示屏設計 81、基於單片機的電子密碼鎖設計 82、基於單片機的温度遠程顯示實現 83、基於單片機的直流電機控制系統 84、基於單片機的自動加料機控制系統 85、數控直流穩壓電源設計

86、智能型充電器的電源和顯示的設計 87、基於CPLD的出租車計價器設計 88、基於IC卡的樓宇門禁系統的設計 89、基於SPCE061A的語音遙控小車設計 90、基於單片機的短信收發系統設計

91、智能機器人的研究與設計(自動循軌和語音控制的實現) 92、PC機與單片機的串口通信 93、基於單片機的紅外線防盜報警系統 94、基於單片機的轉速測量系統設計 95、基於單片機的電梯控制模型設計與仿真

學習參考資料:

1、謝維成 楊加國:《單片機原理與應用及C51程序設計》,清華大學出版社,2009年7月第2版

2、彭偉主編:《單片機C語言程序設計實訓100例——基於8051+Proteus仿真》,電子工業出版社,2009年6月第1版

3、周興華主編:《手把手教你學單片機C程序設計》,北京航空航天大學出版社,2007年10月 第1版

學習參考網站:

http://xxgcxy.q

執筆人:陳振軍

編寫日期:2013年3月5日 審核人:

單片機學習心得體會 篇四

時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機課程也結束,但通過這次單片機的學習,我不僅加深了對單片機理論的理解,將理論很好地應用到實際當中去,而且我還學會了如何去培養我們的創新精神,從而不斷地戰勝自己,超越自己。創新可以是在原有的基礎上進行改進,使之功能不斷完善,成為真己的東西。

當今社會隨着電子技術的發展,特別是隨着大規模集成電路的產生,給人們的生活帶來了根本性的變化,如果説微型計算機的出現使現代的科學研究得到了質的飛躍,那麼可編程控制器的出現則是給現代工業控制測控領域帶來了一次新的革命。在現代社會中,温度控制不僅應用在工廠生產方面,其作用也體現到了各個方面。本學期我們就學習了單片機這門課程,感覺是有點難呢。也不知道整個學習過程是怎麼過來得,可是時間不等人。

剛開始學習的時候,對單片機沒有什麼認識,不知道什麼是單片機,更不知道它有什麼作用。通過學習才大體知道了單片機的一些知識。單片機是一塊在集成電路芯片上集成了一台有一定規模的微型計算機。簡稱為:單片微型計算機或單片機。單片機的應用到處可見,應用領域廣泛,主要應用在智能儀表、實時控制、通信、家電等方面。由中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、I/O接口、定時器/計數器以及串行通信接口等集成在一塊芯片上,構成了一個單片微型計算機,簡稱為單片機。它的應用範圍很廣,在工業自動化中應用有數據採集、測控技術。在智能儀器儀表中應用有數字示波器、數字信號源、自動取款機等。在消費類電子產品中應用有空調機、電視機、微波爐、手機、IC卡、汽車電子設備等。在通訊方面應用有手機、小靈通等。在武器裝備方面應用有飛機、坦克、導彈、航天飛機、智能武器等。剛開始學習時只能抄寫別人做成功的程序,一遍一遍的寫,從簡單的入手,逐步的積累,一步步的能夠將小的程序結合到一起,拼接成較為複雜一些的程序。但是程序不要只是看別人得,一定要自己寫過才是自己的。只有當你自己能寫出來的時候説明你真懂了。剛接觸KEIL時確實很讓人頭疼,使用 KEIL不會建項目、不會使用實驗板。然後可以參考已經成功的程序,抄過來,寫一個最簡單的,讓它運行起來,先培養一下自己的感

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

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

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

其次,是單片機教材選擇。單片機是一門非常重視實踐的技術,不能總是看書,但要學習它首先應看書,對單片機引腳、內部結構、寄存器和原理有一定地瞭解和感官認識,它的是怎樣工作的,能幹些什麼?剛開始時,也許你看不明白,但這並不要緊,因為你還缺乏實踐經驗。現在單片機應用廣泛,因此各個廠家分別推出了自己的單片機,我們沒必要每樣都學!因為他們的編程方法和調試過程以及內部指令結構有一定的相似,只要學精通一款就OK了!尤其是用C語言編程,就幾乎不用分什麼派系,但是我們要選擇一款有代表性的知識範圍廣,並且入門容易,書籍多。一般來説,MCS-51系列單片機已經得到廣泛的普及和應用,市場上它的資料也比較多,用的人也很多。給大家推薦一些參考書,學習時只需要一本就足夠拉。書名:《新編MCS-51單片機應用設計》,哈爾濱工業大學出版,作者:張毅剛;書名:《單片機原理及應用》,高等教育出版社,作者:張毅剛等;書名:《單片機高級教程:應用與設計》,北京航空航天大學出版社,作者:何立民。相關教材還有很多,在這不一一列舉。

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

最後,在熟練掌握和應用後,那可以説對於單片機方面的硬件你已經入門了,剩下的就是自己練習設計開發各種課題,不斷的積累經驗。最終,自己完全設計具有個人風格的課題,產品,這樣你就是單片機高手拉。只要過了第一關,後面的路就好走多了,萬事開頭難,這大家可能都聽過。

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

單片機學習心得體會 篇五

做了兩週的課程設計,有很多的心得體會,有關於單片機方面的,更多的是關於人與人之間關係方面的。

我們組一共有三個人,但其他兩個人是真的神龍見首不見尾,除了在最終答辯的時候他們一齊坐在了我旁邊,冠冕堂皇的指着我畫了幾遍的圖説了幾嘴,我想可能他們自我都不明白自我在説怎樣,雖然有的東西他們也答出來了。我佩服他們的勇氣,羨慕他們的運氣(我見到的很多做了10天的人最終的成績都有不如他們的),可是鄙視他們的做法。

所幸的是,我得到了很多同學的幫忙。我想沒有他們我可能都要放棄了,因為我本人對單片機也並不是很熟悉,學的東西好像它是它,我是我似的,理論聯繫不了實際。以前的彙編語言沒學好,一開始的程序這塊兒就要令我抓狂了。之後請教我們班的一個男生,每次跟他一齊到試驗室調試程序(他們組也僅有他一個人動手),看他邊做邊給我講解。最終在開發機上做出來的時候,雖然不是我自我寫的,但看他那麼高興,我也有一種分享到的成就感。之後我們組就用了他寫的程序,他自我又抽空做了些拓展。

接下來就是做硬件方面的焊接工作了。沒想到這項看起來不需要多少技術的工作卻是十分的勞心勞力。很多次是早上起來帶瓶水帶些吃的到實訓中心,一泡就是一天。我看到有很多人跟我一樣,不一樣的是他們是三三兩兩,而我大部分時間都是一個人做。在這個時候也有很多人幫忙我,或是熱心的幫我帶飯,或是在我打盹兒的時候幫我做點焊接。大家都鼓勵我,即使最終出不來東西,可是必須要堅持把它做完。當我想放棄的時候,我也這麼對自我説,即使你做出來的是次品甚至不合格品,可是你必須要拿出來一件成品。

在要驗收前,最終做了一件成品出來,不幸的是它真的是一件不合格品。幫我的那個男生做的已經出來了,所以最終應當還是我的焊接方面的問題。有一點灰心,想再重做來不及了,單是檢查線路卻也查不出來什麼問題。那麼就準備答辯吧。我對着電路圖再看課本,發現以前很多覺得很難記的東西此刻記起來容易多了,因為整天都在同它們打交道。51的引腳及其功能,AD轉換器的,驅動器的,所有我用到的我都一再的看書瞭解,同時請教同學我看書過程當中的疑惑。在這個過程中又發現了以前焊接當中出的一些問題,能改的就改,不能改的,咳,要是時間再多一些,或者我能早點做好,要是不只是我一個人動手……算了吧,不要想那些如果,還是準備我自我的,做好我此刻能做的吧。

還好,驗收還算成功,得了3分,不是很高,可是我覺得對我來説已經很好,代表了我真實的水平,我覺得我對單片機的一些知識在這個動手的過程中真的是從無到有增長的。同時我也儘量不去想別人得了多少分,沒有什麼不平衡的,有些人付出的是努力,有些人付出的是風險代價,其實這也沒有什麼不一樣,這一點我早就瞭解。

最終,我發現自我對單片機竟然也有了一點興趣,想暑假回家以後自我去買一些東西來做,再補一補彙編語言。有什麼問題請教下以前的那些老同學好了,他們好厲害,在高中勞動課就成功的做出過調頻收音機,大一暑假的時候參加了學校的電子競賽培訓之後比賽,可是之後怎樣樣我就不明白了。汗。看來要多堅持聯絡,這次回家就好好找他們敍敍舊。

單片機學習心得體會 篇六

最近自我對單片機異常的感興趣,因為看到它能控制電機的轉動,自我覺得很神奇。就想弄清楚它到底是怎樣做到的?

我看到書上講:單片機能夠用兩種語言編寫,一種是c語言,另外一種是彙編語言。彙編語言是一種機器語言,且代碼繁瑣,不易記憶。需要掌握單片機的內部結構和邏輯結構,經過看了幾本書讓我瞭解認識到彙編確實太繁瑣,可是我學習過c語言,也參加了全國計算機二級考試,覺得自我在一方面具有優勢,能很快學好它。

可是在學習中,我才發現學習單片機不僅僅需要軟件的知識,還需要硬件的知識。我買了一個單片機在實踐中就是一個活生生的例子,沒有相應的硬件知識,我連單片機怎樣和電腦相連都不明白,我為我當初的想法感到羞愧。單片機是一門很好的學問,需要我去鑽研它。

時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機綜合課程設計也在一週內完成了。

俗話説“好的開始是成功的一半”。説起課程設計,我認為最重要的就是做好設計的預習,認真的研究教師給的題目,選一個自我有興趣的題目。其次,教師對實驗的講解要一絲不苟的去聽去想,因為僅有都明白了,做起設計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設計,到頭來一點收穫也沒有。最終,要重視程序的模塊化,修改的方便,也要注重程序的調試,掌握其方法。

雖然這次的課程設計算起來在實驗室的時間僅有三天,可是因為我們都有自我的實驗板,所以在宿舍裏做實驗的時間必須不止三天。

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

當然,這其中也有很多問題:

第一、不夠細心比如由於粗心大意焊錯了線,由於對課本理論的不熟悉導致編程出現錯誤。

第二,是在學習態度上,這次課設是對我的學習態度的一次檢驗。對於這次單片機綜合課程實習,我的第一大心得體會就是作為一名工程技術人員,要求具備的首要素質絕對應當是嚴謹。我們這次實習所遇到的多半問題多數都是由於我們不夠嚴謹。

第三,在做人上,我認識到,無論做什麼事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰困難的勇氣,就沒有什麼辦不到的。

單片機學習心得體會 篇七

本人還是學生,此刻大三,接觸單片機一年多以來,從最基礎的51開始,到更高級點的MSP430,一向到此刻剛開始上手的STM32,編過的程序不算多,但加起來怎樣也有上百個了,做過的東西仔細數數,能拿出手來算算的上是個樣的也不下十個,算是小有所成吧。

但今日,我卻發現,這一年我一向在走一條歪路。

先説一下情景吧,是這樣的,最近同學幾個合夥做個小項目,不算複雜,跟市面上的工程項目完全沒法比,用難再需要使用的一個芯片是教師給的,從沒用過,沒有歷程,至於一份電子版的數據手冊,一切的一切都只能是從頭開始,從底層開始,我們幾個斌開始從最底層的邏輯時序、寄存器操作開始,但經過幾天的研究,確實毫無效果可言。

為此,我們幾個鬱悶了好長時間,開始瘋狂的上網搜資料,拷代碼,卻終究是不得而返,還讓教師罵了一頓,因為這個項目是我們主動要求教師放給我們的,結果卻耽誤了工期。

我次我們幾個人很受打擊,最終決定大家一齊靜下心來分析分析,到底我們敗在了什麼地方最終總經過兩天的思考、討論、總結、檢討···,我們發現了問題的所在,想來想去,這估計是很大一部分初學者正在面臨的一個“瓶頸問題”,所以,由我淨這個討論的結果發佈出來,期望與更多的人交流、分享、提高、共勉。

下頭先總結一下我們失敗的幾點原因:

1、“都是開發板惹的禍”。

能夠説從開始學習單片機,哪怕是最基礎的51、以致之後的MSP430、ARM,我沒從未離開過開發板,並且這長達一年多的時間,養成了我們對開發板極大的依靠,儘管自我焊過51最小系統、繪製過430最小系統板,但都是參考的別人已有的電路圖,連最基本的電路基本都沒分析過,為什麼要在這幾個電阻,該加個多大的,不加會怎樣樣,太大了太小了會有什麼後果,等等此類問題,我們從未分析過,全是COPY、COPY、再COPY,以致自我做過的東西不少,本事卻未曾提高。

2、“全是例程誤導我”。

我們買來的開發板,往往都會帶有豐富的例程,通常這也是賣家吹噓、比拼的地方,但就是這些附帶的歷程,讓我們與底層的開發絕緣了,有了例程,我們不用再一個代碼一個代碼地敲鍵盤,不用再去研究那些器件的數據手冊、通信接口、寄存器、內部原理、以及很多商家沒給我們加進去的功能,哪怕是將這些程序改到別的地方,我們也可是是在宏定義裏改兩個引腳配置而已,從未嘗試過從底層寫驅動、敲代碼、寫函數,從未嘗試過快平台移植代碼,開發呢些沒用過的功能等等。

3、“現實環境太無奈”

這跟上頭兩個説的是不一樣的方面,我們都是大學生,大學裏此刻吵得火熱的“大學生就業難”、“你是考研還是就業”、“你報XXX培訓班了嗎”“你考四六級證了嗎”等等,好像上大學就是為了幹這些,似乎沒有這些,你就會陷入“畢業即失業”的困境。應對這些外來的干擾,越來越多的學生坐不住了,我們這些人也一樣,儘管一向在學習自我的愛好,但當被人問得多了的時候,心裏也難免會發毛、會害怕,從而導致一年來真正靜下心來學這些東西的時間越來越少。

大體也就總結怎樣多吧,經過這次失敗,也算是教訓深刻吧,此刻才大三,到大四畢業,還有近兩年的時間,還不算太晚,再説將來的路還長,此刻發現這些,應當不算晚吧。

對我們來説,革命尚未成功,同志仍需努力啊!

開這貼,一為總結這次失敗、而為自我立志改變、三為警示之後的同學、四為大家齊言獻計。

大家有遇到同樣問題的、要類似迷茫的、要好的提議意見的,歡迎回帖交流,大家一齊共勉。

  • 文章版權屬於文章作者所有,轉載請註明 https://wenfanwang.com/xindetihui/zhuanti/dvgpqw.html
專題