單片機課程設(shè)計節(jié)日彩燈控制器的設(shè)計_第1頁
單片機課程設(shè)計節(jié)日彩燈控制器的設(shè)計_第2頁
單片機課程設(shè)計節(jié)日彩燈控制器的設(shè)計_第3頁
單片機課程設(shè)計節(jié)日彩燈控制器的設(shè)計_第4頁
單片機課程設(shè)計節(jié)日彩燈控制器的設(shè)計_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、荊楚理工學(xué)院課程設(shè)計成果 學(xué)院:電子信息工程學(xué)院 班 級:11電氣工程及其自動化1班 學(xué)生姓名: 劉詩權(quán) 學(xué) 號:設(shè)計地點(單位): D1302 設(shè)計題目: 節(jié)日彩燈控制器的設(shè)計 完成日期: 2014 年 1 月3日 指導(dǎo)教師評語:_ _ 成績(五級記分制):_ 教師簽名:_目 錄1 摘要12 系統(tǒng)簡介22.1 總體設(shè)計方案說明22.2 單片機系統(tǒng)組成方框圖22.3 AT89S51單片機介紹 23 系統(tǒng)設(shè)計43.1 系統(tǒng)總體設(shè)計43.2 硬件電路設(shè)計53.3 軟件設(shè)計74 實驗結(jié)果與討論 115 結(jié)論 126 參考文獻 127附錄 13 1 摘要隨著科技的發(fā)展,節(jié)日彩燈已經(jīng)作為節(jié)日的一個重要部

2、分越來越豐富多彩了,同時它作為節(jié)日的一部分給我們的生活帶來了許多美好。本文分析了彩燈四種不同亮法的原理,基于匯編語言設(shè)計了一種按鍵控制的可以有四種不同亮法的彩燈,當(dāng)按下第一個鍵的時候彩燈從上到下亮,按下第二個鍵時候彩燈從下到上亮,第三個鍵彩燈從中間到兩邊亮,第四個彩燈從兩邊到中間亮。通過設(shè)計能使彩燈亮的方式更多樣、更漂亮。本文介紹一種新型的彩燈控制系統(tǒng)的設(shè)計方法,以STC89C52單片機作為主控核心,與按鍵,顯示器等較少的輔助硬件電路相結(jié)合,利用軟件實現(xiàn)對彩燈進行控制。本系統(tǒng)具有體積小,硬件少,電路結(jié)構(gòu)簡單及容易操作等優(yōu)點。首先描述系統(tǒng)硬件工作原理,并附以系統(tǒng)結(jié)構(gòu)框圖加以說明,著重介紹了本系統(tǒng)

3、所應(yīng)用的各硬件接口技術(shù)和各個接口模塊的功能及工作過程,其次,詳細(xì)闡述了程序的各個模塊和實現(xiàn)過程。本設(shè)計以數(shù)字集成電路技術(shù)為基礎(chǔ),單片機技術(shù)為核心。本文編寫的主導(dǎo)思想是軟硬件相結(jié)合,以硬件為基礎(chǔ),來進行各功能模塊的編寫。同時對控制系統(tǒng)進行了仿真,實驗結(jié)果表明該系統(tǒng)可以成功的控制彩燈。 2 系統(tǒng)簡介2.1 總體設(shè)計方案說明以單片機為核心,設(shè)計一個節(jié)日彩燈控制器。(1)P1.2開始,按此鍵則燈開始流動(由上而下);(2)P1.3停止,按此鍵則停止流動,所有燈為暗;(3)P1.4上,按此鍵則燈由上向下流動;(4)P1.5下,按此鍵則燈由下向上流動。2.2 單片機系統(tǒng)組成方框圖 AT89S51單片機的片

4、內(nèi)硬件組成結(jié)構(gòu)2.3 AT89S51單片機介紹VCC:電源。GND:接地。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。 AT89S51引腳圖 P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLA

5、SH編程和校驗時,P1口作為第八位地址接收。P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出

6、4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C52的一些特殊功能口,如下表所示:口管腳備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗接收一些控制信號。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST

7、腳兩個機器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周

8、期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。 EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 3 系統(tǒng)設(shè)計3.1 系統(tǒng)總體設(shè)計3.1.1 系統(tǒng)總體功能介紹 通過按按鈕來控制彩燈的點亮方式3.1.2 電路控制方框圖3.2 硬件電路設(shè)計3.2.1 硬件設(shè)計思想節(jié)日彩燈控制器是利用將單片機的CPU、RAM、ROM、定時器/計數(shù)器及輸入/輸出(

9、I/O)接口電路集成在一塊集成電路芯片上的特點。通過其與發(fā)光二極管及驅(qū)動電路的連接,從而構(gòu)成一個完整的硬件電路。然后通過對單片機的ROM進行編程,實現(xiàn)對彩燈閃爍的控制。3.2.2 電路原理以STC-89C52單片機作為主控核心,與按鍵、電阻等較少的輔助硬件電路相結(jié)合,并輔以由電器元件組成的復(fù)位電路和時鐘電路,利用軟件實現(xiàn)對LED彩燈進行控制。3.2.3電路原理圖3.2.3.1 時鐘晶振電路圖 由兩個22PF電容加11.0592的晶振組成,晶振兩端一邊分別與單片機的18、19號引腳相連,一邊分別與兩個電容一段相連,兩個電容的另一端接在一起并且接地,從而構(gòu)成了時鐘晶振電路。3.2.3.2 復(fù)位電路

10、 由2個電阻、1個電解電容、1個按鈕組成3.2.3.3 按鈕電路圖 由四個按鈕分別接單片機的P1.2、P1.3、P1.4、P1.5即單片機的3、4、5、6號引腳相連,按鈕的另一端接電源負(fù)極,通過按按鈕輸入低電平信號來控制彩燈3.2.3.4彩燈電路 由8個發(fā)光二極管、8個200歐的電阻組成,8個發(fā)光二極管的正極分別接單片機的P0.0-P0.7口,即32-39號引腳,另一端分別接電阻,電阻另一端分別接電源正極,通過按鈕輸入低電平來達到對彩燈的控制情況。3.2.3.5 系統(tǒng)總電路3.3 軟件設(shè)計3.3.1 軟件設(shè)計思想 通過編程改變P1口的狀態(tài),從而改變彩燈的閃爍。本程序主要可分為主程序模塊,比較模

11、塊TURN、DOWN和狀態(tài)顯示程序模塊TURN1、DOWN1、UPP延時程序模塊DELAY等模塊。3.3.2 程序流程圖 3.3.2.1 主程序流程圖3.3.2.2 正向流動程序流程圖和反向流動程序流程圖3.3.2.3 延時子程序流程圖 3.3.2.4 按鍵掃描子程序流程圖3.3.3 程序清單 ORG 0000H LJMP START START:MOV A,P1 ;將P1口的值傳送給累加器A CJNE A,#0FFH,DEL ;判斷是否有鍵按下,有就轉(zhuǎn)DEL JNB P1.2,TURN ;“開始”鍵按下轉(zhuǎn)子程序TURN SJMP START ;無鍵按下轉(zhuǎn)主程序繼續(xù)掃描DEL: MOV 40H

12、,A ;累加器A的值傳給40H LCALL DEK ;調(diào)用10ms防抖動子程序 MOV A,P1 ;將P1的值傳送A CJNE A,40H,START ;確認(rèn)無鍵按下轉(zhuǎn)START RET TURN: MOV R0,#0FEH ;給R0賦值0FEH MOV A,R0 ;將R0的值送給累加器A TURN1:MOV P0,A ;讓P0口最上面一個燈亮 CALL DELAY ;調(diào)用顯示延遲子程序 JNB P1.3,UPP ;“停止”鍵按下轉(zhuǎn)子程序UPP JNB P1.4,TURN ;“從上到下”鍵按下轉(zhuǎn)TURN,重新開始 JNB P1.5,DOWN ;“從下到上”鍵按下轉(zhuǎn)DOWN RL A ;循環(huán)左移

13、累加器A的值 SJMP TURN1 ;轉(zhuǎn)到TURN1,繼續(xù)循環(huán)DOWN: MOV R1,#7FH ;給R1賦值7FH MOV A,R1 ;將R1的值送給累加器ADOWN1:MOV P0,A ;讓P0口最下面一個燈亮 CALL DELAY ;調(diào)用顯示延時子程序 JNB P1.2,TURN ;“開始”鍵按下轉(zhuǎn)子程序TURN JNB P1.3,UPP ;“停止”鍵按下轉(zhuǎn)子程序UPP JNB P1.4,TURN ;“從上到下”鍵按下轉(zhuǎn)TURN,重新開始 RR A ;循環(huán)右移累加器A的值 SJMP DOWN1 ;轉(zhuǎn)到DOWN1,繼續(xù)循環(huán)UPP: MOV P0,#0FFH ;使所有燈滅 JNB P1.2,

14、TURN ;“開始”鍵按下轉(zhuǎn)子程序TURN JNB P1.4,TURN ;“從上到下”鍵按下轉(zhuǎn)TURN,重新開始 JNB P1.5,DOWN ;“從下到上”鍵按下轉(zhuǎn)DOWN SJMP UPPDEK: MOV R2,#40 ;10ms防抖動字程序DEK1: MOV R3,#125DEK2: DJNZ R3,DEK2 DJNZ R2,DEK1 RETDELAY:MOV R5,#25 ;顯示延時子程序 D0: MOV R6,#250 D1: MOV R7,#25 D2: DJNZ R7,D2 DJNZ R6,D1 DJNZ R5,D0 RET END 4、 實驗結(jié)果與討論4.1 實驗結(jié)果 仿真結(jié)果圖

15、4.2 實驗討論 在這次課程設(shè)計中,我們首先編寫程序然后對其進行了仿真,雖然仿真結(jié)果是正確的,但是在焊接電路的時候不知道是什么原因?qū)е虏荒茱@示結(jié)果,我嘗試這從短路、接觸不良等方面去尋找問題,最終還是沒有找出問題,逼不得已只得重新焊,然而第二塊板子也沒成功,只好找同學(xué)幫忙,找了半天同樣也沒找出問題來,當(dāng)時就失望了,好不容易把東西焊出來結(jié)果不能調(diào)試成功,是多么的悲慘啊,最后抱著換個IC座和電容再焊一塊試試的心態(tài)又焊了一塊,終于成功了。這讓我體會到了只有堅持才能成功,我想前兩塊課可能是IC座接觸不良的緣故吧。 5 結(jié)論 雖然這次課程設(shè)計我焊了三塊電路板(還好當(dāng)時買元器件的時候?qū)I了點備份),但是通過

16、這次的設(shè)計使我認(rèn)識到掌握單片機方面的知識太重要了,它是我們作為在這科技飛速發(fā)展的時代里的新青年要掌握的必不可少的一項技術(shù)。我還發(fā)現(xiàn)自己對于書本上的很多知識還不夠熟悉,有很多我們需要掌握的知識還沒掌握,我會在以后的學(xué)習(xí)生活中彌補我所缺少的知識。本次的設(shè)計使我從中學(xué)到了一些很重要的東西,那就是如何從理論到實踐的轉(zhuǎn)化,怎樣將我所學(xué)到的知識運用到我以后的工作中去。大學(xué)的課堂的學(xué)習(xí)只是在給我們灌輸專業(yè)知識、打好理論基礎(chǔ),而我們應(yīng)把所學(xué)的用到我們現(xiàn)實的生活中去,充分運用我們的知識體現(xiàn)我們的價值。我會在以后的學(xué)習(xí)、生活中不斷磨練自己,使自己適應(yīng)于以后的競爭,不會在激烈的競爭中掉隊。在查找資料的過程中我也學(xué)到了許多單片機技術(shù)的相關(guān)知識,不僅拓展了我的知識面,同時激起了我對單片機相關(guān)技術(shù)的興趣。當(dāng)然不能忽略在協(xié)作過程中我和同組的同學(xué)一起設(shè)計增進了同學(xué)間的友誼。我相信這次課程設(shè)計對我以后的課程

溫馨提示

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

評論

0/150

提交評論