單片機課設心得體會(通用5篇)

單片機課設心得體會 篇1

兩週的單片機課程設計實訓,真是讓我們受益匪淺,學到了很多東西,不管怎麼樣,先感謝學校給我的這麼多機會.真正的學到了東西。

單片機課設心得體會(通用5篇)

此次課程設計軟件與硬件相結合,考察了我們的焊接水平與編程能力.因為以前做過關於焊接的電工實習,所以對於我們機械設計專業的學生而言焊接是不成問題,也很順利;可到了編程時就出現了很大的障礙,先開始的顯示時鐘還算順利,本來還以為編程會很簡單的,等到實際操作起來才知道它的複雜性,沒有想像中的那麼得心應手,理解流程是有思維的前提。其實本身程序的思維是正確的,只是步驟中有點小錯誤,所以導致整個程序的結果很亂,在仔細修改程序之後,終於一步步地達到效果了。

系統以AT89S51為核心部件,利用軟件編程,通過鍵盤控制和液晶顯示實現了秒錶的功能,能實現本設計題目的基本要求和發揮部分。儘量做到硬件電路簡單穩定,充分發揮軟件編程的優點,減小因元器件精度不夠引起的誤差。

我們將各個部分的程序編好後怎麼都連不起來,出不了預期的效果.對於硬件在編程過程中PCB板的接觸又是一個頭疼的問題,在進行編譯的時候,數碼顯示管上什麼都沒有,按一下旁邊與之相連的元器件時就有顯示了,所以也花費了好多時間在PCB板的重新焊接上,最後在全組人竭盡全力,老師的精心指導下,程序基本編寫成功,這是我們共同努力的結果,在享受我們成果之時,不得不感慨單片機的重要性與高難度性,所以為期兩週的單片機課程設計沒有浪費,我們從中學到了很多知識,也讓我們對單片機有了更深一步的瞭解.雖然最後結果是出來了,可這與老師的精心指導是分不開的,他引導我們的思路,本來一竅不通的我們經過老師的點撥基本上通了,所以説老師是功不可抹的。

由於時間有限和本身知識水平的限制,本系統還存在一些不夠完善的地方,要作為實際應用還有一些具體細節問題需要解決。

踉踉蹌蹌地忙碌了兩週,我的單片機課程設計也終將告一段落。設計實物也基本達到預期的效果,但由於能力和時間的關係,總是覺得有很多不盡人意的地方,譬如功能不全、外觀粗糙……數不勝數。但我可以自豪的説,這裏面的每一段代碼,都有我的勞動。當看着自己的程序,自己成天相伴的系統能夠健康的運行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最終都會化為甜美的甘泉。

總而言之,單片機課程設計對於我們有很大的幫助,我們從中受益匪淺。

單片機課設心得體會 篇2

經過本次微機課題的設計與研究,我們深入的學習了除課本以外的很多微機附件的內容,掌握了很多實驗室操作技能。我們在實際設計中遇到很多問題,但結合所學知識以及參考資料的幫助,不斷地嘗試,設計了一種能夠解決實際問題的系統。同時也加深了我們對於現實生活中,實際的嵌入式操作系統的原理的理解。

單片機在日常生活中應用廣泛,結合這學期在學的嵌入式系統原理,我們更多的瞭解了單片機的發展現狀和發展趨勢,以及在生活中的廣泛應用,其實80C51只是我們所接觸的一種簡單的單片機,在實際應用中,有各個公司生產的不同型號的、針對不同功能設計的、以及根據用户的需要和發展自主研發設計的單片機還有很多,由此設計出來的嵌入式系統更是數不勝數。能夠親身的進行自我實踐,並進行實際的應用,其實使我們對現行單片機的一次深入的瞭解,並能夠提升我們將來在學習工作遇到的單片機設計問題。

在實際設計過程中,我們遇到了諸多設計的問題。例如接口不夠,這一問題主要是因為我們所設計的功能諸多,剛開始對於這一接口的規劃不是非常的合理,後來通過使用中斷,兩個中斷合理的設計便解決了所有的按鍵和現實問題。考慮到目前空調系統也並不是使用我們所用到的80C51單片機,中斷也有可能通過擴展有所增加,考慮到硬件設計的難度,使用兩中斷解決這一問題則是最佳的選擇。

在程序設計中,我們更加深入瞭解了中斷的使用與本質,合理利用這些,會使程序簡化而不會出錯。比如開始我們把主程序寫在中斷裏面,導致程序運行混亂,而後來發現,只在中斷中做少量工作,比如改一下某一個標誌,這樣比較好。對於傳感器芯片的使用,我們查找了它的datasheet,並查閲了各種關於其硬件連接和軟件設計的資料,同時發現了理論資料與實踐上的區別,通過多次嘗試,成功完成了硬件和軟件的設計。在這次課題設計過程中,我們合理的分工,適宜的規劃進度的進展,不僅僅暗示完成了預先設計的內容。

在這一過程中,我們充分發揮我們的主觀能動性,想象創造性,攻克了很多之前都沒有想過的難關,真的受益匪淺。這次設計不僅僅耗時耗力,而且自己也親自跑了電子市場去進行實際考察,對我們理論和實驗都有很大的提升,我想這些對於我們今後的學習生活都有很重要的意義,這將是我們在程序設計以及大學學習過程中的寶貴經驗和財富。

單片機課設心得體會 篇3

1、引言

隨着人們生活環境的不斷改善和美化,在許多場合可以看到彩色霓虹燈。LED彩燈由於其豐 富的燈光色彩,低廉的造價以及控制簡單等特點而得到了廣泛的應用,用彩燈來裝飾街道和城市建築物已經成為一種時尚。但目前市場上各式樣的LED彩燈控制器大多數用全硬件電路實現,電路結構複雜、功能單一,這樣一旦製作成品只能按照固定的模式閃亮,不能根據不同場合、不同時間段的需要來調節亮燈時間、模式、閃爍頻率等動態 參數。這種彩燈控制器結構往往有芯片過多、電路複雜、功率損耗大等缺點。此外從功能效果上看,亮燈模式少而且樣式單調,缺乏用户可操作性,影響亮燈效果。因此有必要對現有的彩燈控制器進行改進。

本文提出了一種基於AT89C51單片機的彩燈控制方案,實現對LED彩燈的控制。本方案以AT89C51單片機作為主控核心,與鍵盤、顯示、驅動等模塊組成核心主控制模塊。在主控模塊上設有8個按鍵和5位七段碼LED顯示器,根據用户需要可以編寫若干種亮燈模式,利用其內部定時器T0實現一個基本單位時間為5 ms的定時中斷,根據各種亮燈時間的不同需要,在不同時刻輸出燈亮或燈滅的控制信號,然後驅動各種顏色的燈亮或滅。該新型LED彩燈及其控制器是上海某公司委託開發產品,產品實際應用效果較好,亮燈模式多,用户可以根據不同場合和時間來調節亮燈頻率和亮燈時間。與普通LED彩燈相比,具有體積小、價格低、低能耗等優點。?

摘要:介紹了一種新型的LED彩燈控制系統的設計方法,以AT-89C51單片機作為主控核心,與按鍵、顯示器等較少的輔助硬件電路相結合,利用軟件實現對LED彩燈進行控制。本系統具有體積小、硬件少、電路結構簡單及容易操作等優點。

關鍵詞:LED彩燈;AT89C51單片機;彩燈控制器;模塊設計

2、系統功能

新型LED彩燈分為2部分,即彩燈控制器(主控模塊)和管內LED板模塊(受控模塊)。彩燈控制器可直接與220 V交流市電相連接,經過開關電源變換,輸出直流工作電壓,一方面為管內LED模塊提供12 V工作電源,另一方面為主控模塊單片機系統(彩燈控制器)提供5 V工作電源。整個系統工作由軟件程序控制運行,根據需要,用户可以在LED彩燈工作時通過主控模塊上的按鍵來設定亮燈時間和燈光閃動頻率。

上電後系統經過初始化,查詢是否有功能切換鍵按下:有,則進入用户設定模式狀態;無,則進入默認缺省工作狀態。在用户設定模式狀態下,用户可以根據個人愛好及不同場合的需要來指定調用哪些模式,並且可以改變每種模式的時間Ti、頻率Fi參數,如果用户想進入缺省狀態模式,只需按一下功能切換鍵即可跳入缺省模式,程序會自動順序調用亮燈模式;在缺省工作狀態下,LED彩燈控制器按照程序設定好的若干亮燈花樣模式程序Model_i順序調用往下走,從第Model_1模式開始工作,自Model_1到Model_2……到Mod el_n為一個亮燈週期,然後再回到Model_1循環繼續工作,同樣如果想進入用户設定模式狀態,只需按下功能切換鍵即可。整個n種亮燈模式時間可以看作一個大週期T,其中的每一種花樣工作模式Model_i(i=1,2,…,n)時間為小週期Ti,對於每一個模式編寫一個獨立工作子程序Model_i,其中設定了LED三色燈(紅、綠、藍)的點亮時刻(RED_on,GREEN_on,BLUE_on)和熄滅時刻(RED_off,GREEN_off,BLU E_off),以及模式工作時間Ti以及該模式LED閃爍頻率Fi。5位七段碼顯示器的前2位(L1,L2)顯示當前工作模式的序號Model_i;後3位(L3,L4,L5)七段碼 顯示三色LED的工作狀態,若該顏色燈點亮則對應七段碼顯示位為“1”,反之熄滅時則顯示位為“滅”即不顯示,對系統工作狀態起到了很好的實時監控作用。

因此在LED彩燈上電工作後,用户可以方便地通過主控模塊上的顯示器知道LED彩燈當前工作模式Model_i,工作時間Ti,頻率Fi等實時參數。若實際應用需要根據不同場合和時間來改變彩燈閃亮效果,用户可以通過主控模塊上的按鍵來設定LED不同的閃爍頻率Fi和亮燈時間Ti,以便符合實際需要。此外如果用户對某一種模式感興趣需要仔細觀看該種亮燈模式,可以通過鍵盤選定任意第Model_i模式使系統循環重複工作在該花樣模式下。?

3、硬件設計

新型LED彩燈系統包括2大部分,即LED彩燈控制器(89C51主控模塊)和LED彩燈管(管內LED板模塊)。前者是主控模塊,具有按鍵、顯示等功能,並利用89C51的P口輸出控制信號;後者是受控模塊,上面焊有三色LED彩燈和信號驅動芯片,模塊置於LED的透明燈管內。

3.1、主控模塊電路設計

主控模塊電路如圖1所示。主控模塊主要設計器件有89C51,5個七段碼LED顯示器,8個按鍵,2個穩壓器(提供12 V,5 V電壓),1個信號輸出驅動模塊芯片(MC4049)等。通過軟件設計,使單片機P0口作為三色LED驅動信號輸出口及移位時鐘CLOCK信號,P3口為按鍵輸入口,P2口、P1口與5位七段碼LED相接作為顯示器的輸出口。

3.2、管內LED板模塊設計

管內LED板模塊電路見圖2。管內LED板模塊設計主要器件有LED彩燈(紅、綠、藍)、移位觸發模塊芯片CD4076等。根據實際應用彩燈長度需要,可將不同數量的該管內LED模塊實現級連,組成一個完整的LED彩燈。考慮到功率損耗,LED板模塊之間接口處用信號正向驅動模塊芯片MC4049連接。每個LED板模塊上均勻分佈3種顏色 LED燈,在實際製作PCB時採用紅、綠、藍3色互隔焊接方式,在電路板上把LED發光管按順序L1(紅)、L2(綠)、L3(藍)、L4(紅)、L5(綠)、L6(藍)……依次均勻焊在板上成一條直線。為了得到更多的花樣模式效果,可以使紅綠2種燈從前往後驅動點亮閃爍,藍燈從後往前驅動點亮閃爍,這樣具有很好的動感視覺效果。

4、軟件設計

新型LED彩燈控制器最大特點在於所有亮燈模式均由軟件控制完成。系統中軟件可以分為主程序和中斷服務子程序。上電後在缺省狀態以順序調用Model_i花樣亮燈模式流程為主程序,以一個單位時間5 ms的T0定時為中斷服務子程序。在這個5 ms的T0定時基礎上,可以根據需要來確定各種模式工作時間Ti,以及確定在各種亮燈模式Mode l_i內點亮和熄滅各種顏色LED燈的時刻:Red_on,Red_off,Green_on,Green_off,Blue_on,blue_off以及Clock(移位翻轉脈衝)等。整個系統軟件由主程序( Main)、各個模式子程序(Model_i)、5 ms中斷服務子程序(T0 Interrupt)、鍵盤掃描處理子程序(Key Board)、顯示子程序(Display)等程序組成。利用T0定時器作為定時基本單位,根據模式需要計算好各控制信號的發生時刻,根據不同的模式Mo del_i可以設定不同的工作時間Ti和脈衝翻轉頻率Fi通過P0口輸出,使各色L ED燈的驅動時刻與移位觸發的翻轉時刻步調一致,使LED彩燈按照設計的模式工作。

除了T0定時中斷之外,程序的大部份時間是在處理按鍵的查詢和LED顯示的延時。8個按鍵分別為:4個參數按鍵(Fi增、減按鍵,Ti增、減按鍵),3個模式改變按鍵(模式上翻UP、模式下翻DOWN、模式保持KEEP),1個功能切換按鍵。在每次的T0定時中斷服務子程序裏,需要對各個時間寄存器和模式寄存器進行加1或者清,為主程序查詢作準備,同時查詢是否已中斷6次(30 ms),若30 ms到了,則對參數按鍵查詢一次,是否有時間Ti頻率Fi增減鍵按下並進行相應子程序處理。

主程序除了調用各種子模式子程序(Model_i),調用LED顯示子程序(Display)和延時子程序(Delay)之外,還一直保持查詢是否有功能切鍵按下以及是否有模式改變按鍵按下,一旦有功能切換鍵和模式改變鍵按下,就會進入相應的按鍵處理。? 主程序流程如圖3所示。亮燈模式子程序Model_i可以編寫若干(n種),只要控制好各色燈觸發和熄滅時刻就可以組合成各種亮燈效果。

單片機課設心得體會 篇4

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

本人從事單片機程序設計將近有一年了,下面我想來談談我個人的幾點體會,以便與大家交流共同提高.

1.在設計程序之前,務必要對所用單片機的內部結構有一個系統的瞭解,知道該單片機片內有哪些資源.

2.設計程序採用什麼編程語言並不是非常重要,關鍵要有一個清晰的思路和一個完整的軟件流程圖.

3.在設計程序時,不能妄想一次就將整個程序設計好,"反覆修改,不斷改進"是程序設計的必經之路.

4.要養成註釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便.

5.在設計程序過程中遇到問題是很正常的,但我們應該將每次遇到的問題記錄下來,並分析清楚,以免下次再碰到同樣的問題.

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

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

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

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

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

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

單片機課設心得體會 篇5

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

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

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

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

最後,在熟練掌握和應用後,那可以説對於單片機方面的硬件你已經入門了,剩下的就是自己練習設計電路,不斷的積累經驗。最終,自己完全設計具有個人風格的電路,產品,這樣你就是單片機高手拉。只要過了第一關,後面的路就好走多了,萬事開頭難,大家可能都聽過。時下多家電子類的報刊雜誌如:《電子製作》《無線電》《電子報》《電子世界》都開設了詳細的單片機教程專欄,對於想學習單片機的朋友來説幫助很大,可以説現在的單片機教程環境是最好的,有網絡,有書籍,有報刊雜誌,還有視頻教程,元件的採購方面也非常充足,相關的器材又多有便宜。如果每天能抽出兩小時的時間去學習,快的一個月,慢的三個月就入門拉。   以下是一些經驗:

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

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

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

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

(5)碰到問題可以藉助網絡來搜尋答案和對自己有幫助的問題,可以大大減少你的開發時間。

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

希望大家多上網看看前輩的經驗,可以少走很多彎路。最後,祝願大家早日成為單片機高手。