LED流水燈單片機的設計2_第1頁
LED流水燈單片機的設計2_第2頁
LED流水燈單片機的設計2_第3頁
LED流水燈單片機的設計2_第4頁
LED流水燈單片機的設計2_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、滁 州 學 院 電子與電氣工程學院課程設計報告課程名稱設計題目專業(yè)名稱班級學號學生姓名指導老師 年 月 日 電氣學院課程設計任務書設計名稱學生姓名 指導教師第一章 緒論41.1 課題簡介41.2 設計目的41.3設計方法4第二章 設計概述52.1 設計任務52.2 設備器材5第三章 方案論證與比較63.1循環(huán)移位法6LED流水燈單片機的設計許劍內容摘要:發(fā)光二極管(LED),是一種把電能變成光能的特種器件,主要由PN結芯片、電極和光學系統構成。當系統受到外界激發(fā)后,會從穩(wěn)定的低能態(tài)躍遷到不穩(wěn)定的高能態(tài),當系統由不穩(wěn)定的高能態(tài)重新回到穩(wěn)定的低能態(tài)時,能量差以光的形式輻射出來,就會產生發(fā)光現象。當

2、在PN結上加以正向電壓之后,P區(qū)的空穴注入至N區(qū),N區(qū)的電子注入至P區(qū),相互注入的電子與空穴相遇后即產生復合,這些多數載流子在結的注入和復合中產生輻射而發(fā)光。它是自發(fā)輻射發(fā)光,不需要較高的注入電流產生粒子數反轉分布,也不需要光學諧振腔,發(fā)射的是非相干光。LED大約是在80年代中期開始在電子顯示屏中使用的。進入90年代以后,由于半導體工業(yè)的迅猛發(fā)展,帶動了LED制造材料和工藝的改進,在顏色與亮度方面都有了質的飛躍。早期的LED顯示屏,由于受材料和工藝的限制,視角僅有200一300左右,從而制約了LED顯示屏的發(fā)展。在分辨率方而,由于受當時數字技術、集成電路技術和控制技術等技術的限制,很難作出高密

3、度的LED顯示屏。今后隨著半導體工業(yè)的不斷發(fā)展,無論是材料,還是加工工藝,都會不斷地提高,LED顯示屏在顏色、視角、亮度、密度、壽命等方面也會逐步完善,價格也會進一步降低。關鍵詞;發(fā)光二極管,電子顯示屏,集成電路第一章 緒論1.1 課題簡介當今社會,隨著人們物質生活的不斷提高,電子產品已經走進了家家戶戶,無論是生活或學習,還是娛樂和消遣幾乎樣樣都離不開電子產品,大型復雜的計算能力是人腦所不能勝任的,而且比較容易出錯。計算器作為一種快速通用的計算工具方便了用戶的使用。計算器可謂是我們最親密的電子伙伴之一。本設計著重在于分析計算器軟件和開發(fā)過程中的環(huán)節(jié)和步驟,并從實踐經驗出發(fā)對計算器設計做了詳細的

4、分析和研究。單片機由于其微小的體積和極低的成本,廣泛的應用于家用電器、工業(yè)控制等領域中。在工業(yè)生產中。單片微型計算機是微型計算機稱單片機,特別適用于控制領域,故又稱為微控制器。本系統就是充分利用了8051芯片的I/O引腳。系統以采用MCS-51系列單片機Intel8051為中心器件來設計LED流水燈系統,實現8個LED霓虹燈的左、右循環(huán)顯示,并實現循環(huán)的速度可調。1.2 設計目的通過本次課題設計,應用單片機原理及應用等所學相關知識及查閱資料,完成簡易LED流水燈系統設計,以達到理論與實踐更好的結合、進一步提高綜合運用所學知識和設計的能力的目的。通過本次設計的訓練,可以使我在基本思路和基本方法上

5、對基于MCS-51單片機的嵌入式系統設計有一個比較感性的認識,并具備一定程度的設計能力。1.3設計方法本課題使用AT89C51單片機時無須外擴存儲器。因此,本流水燈實際上就是一個帶有八個發(fā)光二極管的單片機最小應用系統,即為由發(fā)光二極管、晶振、復位、電源等電路和必要的軟件組成的單個單片機。如果要讓接在P1.0口的LED1亮起來,那么只要把P1.0口的電平變?yōu)榈碗娖骄涂梢粤?;相反,如果要接在P1.0口的LED1熄滅,就要把P1.0口的電平變?yōu)楦唠娖?;同理,接在P1.1P1.7口的其他7個LED的點亮和熄滅的方法同LED1。因此,要實現流水燈功能,我們只要將發(fā)光二極管LED1LED8依次點亮、熄滅,

6、8只LED燈便會一亮一暗的做流水燈了。在此我們還應注意一點,由于人眼的視覺暫留效應以及單片機執(zhí)行每條指令的時間很短,我們在控制二極管亮滅的時候應該延時一段時間,否則我們就看不到“流水”效果了。在此基礎上,增加外擴設備,利用74LS373和8255擴展成24個LED燈循環(huán)顯示。 第二章 設計概述2.1 設計任務設計內容:利用匯編語言(或C語言),實現8個單色LED燈的左、右循環(huán)顯示,并實現循環(huán)的速度可調。選用芯片: 8255 等注:由于實驗室的沒有提供8255芯片,所以改用單片機完成此實驗,并且添加了調節(jié)燈明暗的功能,以實現明暗可調。2.2 設備器材在本設計中,所用到的設備器材如下所示:(1)計

7、算機一臺;(2)唐都儀器實驗箱一臺;(3) AT89C52單片機一片;(4)導線若干。第三章 方案論證與比較3.1循環(huán)移位法在上個程序中我們是逐個控制P1端口的每個位來實現的,因此程序顯得有點復雜,下面我們利用循環(huán)移位指令,采用循環(huán)程序結構進行編程。我們在程序一開始就給P1口送一個數,這個數本身就讓P1.0先低,其他位為高,然后延時一段時間,再讓這個數據向高位移動,然后再輸出至P1口,這樣就實現“流水”效果啦。由于8051系列單片機的指令中只有對累加器ACC中數據左移或右移的指令,因此實際編程中我們應把需移動的數據先放到ACC中,讓其移動,然后將ACC移動后的數據再轉送到P1口,這樣同樣可以實

8、現“流水”效果。具體編程如下所示,程序結構確實簡單了很多。3.2查表法上面的兩個程序都是比較簡單的流水燈程序,“流水”花樣只能實現單一的“從左到右”流方式。運用查表法所編寫的流水燈程序,能夠實現任意方式流水,而且流水花樣無限,只要更改流水花樣數據表的流水數據就可以隨意添加或改變流水花樣,真正實現隨心所欲的流水燈效果。我們首先把要顯示流水花樣的數據建在一個以TAB為標號的數據表中,然后通過查表指令“MOVCA,A+DPTR”把數據取到累加器A中,然后再送到P1口進行顯示。具體源程序如下,TAB標號處的數據表可以根據實現效果的要求任意修改。2.3位控法 這是一種比較笨但又最易理解的方法,采用順序程

9、序結構,用位指令控制P1口的每一個位輸出高低電平,從而來控制相應LED燈的亮滅。本次實驗我們采用的是查表法和循環(huán)移位法,這兩個方法要比位控法要復雜些,但是程序要簡略的多。第四章 硬件設計方案4.1 設計思路本課題需要用按鈕開關實現流水燈的左右循環(huán)顯示、調速、控制亮度的功能。可以選用五個開關來實現這些操作。單片機正在軟件運行下通過不斷掃描開關狀態(tài),來將相關操作對應量送入單片機的輸入端口,然后判斷屬于哪一類操作。五個開關分別為K1,K2,K3,K4,K5,分別控制流水燈的調向、加速、減速、變亮、變暗。在設計過程中,接開關的端口要全部保持高電平,當按下一個開關時,輸入一個低電平,即為狀態(tài)改變信號。不

10、能同時有兩個端口同為高電平。在設計中我主要負責了用云脈沖寬度調制(PWM)波控制LED燈的亮度環(huán)節(jié),開始對PWM并不是很了解,通過請教同學和查閱相關資料,漸漸明白了其中的原理。在主程序運行時通過中斷方式調整其輸出電壓的占空比,從而改變燈泡的亮度。原理是這樣的,主程序的始終頻率和中斷的始終頻率并不相同,大約是中斷的一千倍,LED燈在移動時如果響應了中斷,則在執(zhí)行中斷程序時,LED燈近似看做沒有移動,此時在中斷程序中設計一個初值和一個上限,當計數到初值時置燈泡滅掉,在計數到上限之前小燈泡都是熄滅的,到達上限后回0,并置燈泡為亮,繼續(xù)計數,在到設定的初值時置小燈泡為滅掉。這樣在主程序的一個周期內,中

11、斷程序將小燈泡置明置暗了近一千次,通過改變設定的初值可以改變小燈泡的亮度。4.2 硬件選擇本實驗選用AT89C52單片機、五個按鍵開關和8個發(fā)光二極管。其中AT89C52為控制核心,當5個開關的狀態(tài)改變時,單片機檢測到開關信號后就通過軟件輸出控制發(fā)光二極管。4.3 AT89C52單片機介紹AT89C52是一個低電壓,高性能CMOS 8位單片機,片內含8k bytes的可反復擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數據存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元,功能強大的A

12、T89C52單片機可為您提供許多較復雜系統控制應用場合。AT89C52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內含2個外中斷口,3個16位可編程定時計數器,2個全雙工串行通信口,2個讀寫口線。AT89C52的內部結構圖如下:引腳圖如下: 引腳功能說明:P0 口:P0 口是一組8 位漏極開路型雙向I/O 口, 也即地址/數據總線復用口。作為輸出口用時,每位能吸收電流的方式驅動8 個TTL邏輯門電路,對端口P0 寫“1”時,可作為高阻抗輸入端用。 訪問外部數據存儲器或程序存儲器時,這組口線分時轉換地址(低8 位)和數據總線復用,在訪問期間激活內部上拉電阻。 在Flash 編程時,

13、P0 口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。 P1 口:P1 是一個帶內部上拉電阻的8 位雙向I/O 口,P1 的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。與AT89C51 不同之處是,P1.0 和P1.1 還可分別作為定時/計數器2的外部計數輸入(P1.0/T2)和輸入(P1.1/T2EX), 參見表1。 Flash 編程和程序校驗期間,P1 接收低8 位地址。 表.P1.0和P1.1的第二

14、功能 引腳號功能特性P1.0T2,時鐘輸出P1.1T2EX(定時/計數器2) P2 口:P2 是一個帶有內部上拉電阻的8 位雙向I/O 口,P2 的輸出緩沖級可驅動(吸收或輸出電流)4 個TTL邏輯門電路。對端口P2 寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在訪問外部程序存儲器或16 位地址的外部數據存儲器(例如執(zhí)行MOVX DPTR 指令)時,P2 口送出高8 位地址數據。在訪問8 位地址的外部數據存儲器(如執(zhí)行MOVX RI 指令)時,P2 口輸出P2 鎖存器的內容。 Flash

15、編程或校驗時,P2亦接收高位地址和一些控制信號。 P3 口:P3 口是一組帶有內部上拉電阻的8 位雙向I/O 口。P3 口輸出緩沖級可驅動(吸收或輸出電流)4 個TTL 邏輯門電路。對P3 口寫入“1”時,它們被內部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3 口將用上拉電阻輸出電流(IIL)。P3 口除了作為一般的I/O 口線外,更重要的用途是它的第二功能 。P3 口還接收一些用于Flash 閃速存儲器編程和程序校驗的控制信號。 RST:復位輸入。當振蕩器工作時,RST引腳出現兩個機器周期以上高電平將使單片機復位。 ALE/PROG:當訪問外部程序存儲器或數據存儲器時,ALE(地址鎖

16、存允許)輸出脈沖用于鎖存地址的低8 位字節(jié)。一般情況下,ALE 仍以時鐘振蕩頻率的1/6 輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數據存儲器時將跳過一個ALE 脈沖。 對Flash 存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH 單元的D0 位置位,可禁止ALE 操作。該位置位后,只有一條MOVX 和MOVC指令才能將ALE 激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE 禁止位無效。 PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89C52 由

17、外部程序存儲器取指令(或數據)時,每個機器周期兩次PSEN 有效,即輸出兩個脈沖。在此期間,當訪問外部數據存儲器,將跳過兩次PSEN信號。 EA/VPP:外部訪問允許。欲使CPU 僅訪問外部程序存儲器(地址為0000HFFFFH),EA 端必須保持低電平(接地)。需注意的是:如果加密位LB1 被編程,復位時內部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU 則執(zhí)行內部程序存儲器中的指令。 Flash 存儲器編程時,該引腳加上+12V 的編程允許電源Vpp,當然這必須是該器件是使用12V 編程電壓Vpp。 XTAL1:振蕩器反相放大器的及內部時鐘發(fā)生器的輸入端。 XTAL2:振蕩器反相

18、放大器的輸出端。4.4硬件連接框圖單片機從開關上提取不同輸入信號,進行相應的軟件操作,反映輸出在發(fā)光二極管上。開關輸入AT89C52單片機流水燈4.5設計連線本實驗的連線為:開關使用唐都試驗箱上的5個開關,分別接到單片機的P2.0P2.4口,然后發(fā)光二極管分別接到單片機的P1.0P1.7口。4.6實驗仿真電路圖4.7單片機時鐘電路時鐘電路用于產生單片機工作所需要的時鐘信號,單片機本身就是一個復雜的同步時序電路,為了保證同步工作方式的實現,電路應在唯一的時鐘信號控制下嚴格地按時序進行工作。在MCS-51芯片內部有一個高增益反相放大器,其輸入端為芯片引腳X1,輸出端為引腳X2,在芯片的外部跨接晶體

19、振蕩器和微調電容,形成反饋電路,就構成了一個穩(wěn)定的自激振蕩器。 此電路采用12MHz的石英晶體。時鐘電路如下圖2-2:第五章軟件設計方案5.1 軟件設計思想一個完整的系統僅有硬件是不夠的,還要有軟件的配合。軟件和硬件對一個系統來說都是不可或缺的。本實驗采用C語言編程,在具體設計中,通過GetKey()函數來不停的掃描開關的狀態(tài),通過KeyProcess()來確定輸入的信號,即按鍵的位置,從而執(zhí)行不同的子程序內容,實現LED燈的控制。5.2 程序流程圖第六章 調試及運行結果與存在問題6.1 調試及運行結果 通過設計和編寫程序代碼,講程序通過Keil軟件編譯后生成的hex文件寫進AT89C52中,

20、便可操作。為當撥動相應的開關時,看LED燈的變化。調試過程中問題很多,主要原因是對單片機結構的不熟悉,其次就是程序中的一些問題。但通過努力,都被一一解決。實際接線前我們先用protues仿真了一下實驗結果,確認無誤后接線,這樣提高了調試的時間。6.2存在的問題1、邏輯錯誤:它是由設計錯誤或加工過程中的工藝性錯誤所造成的。這類錯誤包括錯線、開路、短路等。2、元器件失效:有兩方面的原因:一是器件本身已損壞或性能不符合要求;二是組裝錯誤造成元件失效,如電解電容、集成電路安裝方向錯誤等。3、可靠性差:因其可靠性差的原因很多,如金屬化孔、接插件接觸不良會造成系統時好時壞,經不起振動;走線和布局不合理也會引起系統可靠性差。4、電源故障:若樣機由電源故障,則加電后很容易造成器件損壞。電源故障包括電壓值不符合設計要求,電源引線和插座不對,功率不足,負載能力差等。調試方法:包括多級調試和聯機調試。在調試過程中要針對可能出現的故障認真分析,直至檢查出原因并排除。本次硬件調試過程中,對所出現的問題進行了認真的分析和改正,最后能夠很好的達到設計要求的效果???結經過四次的上機

溫馨提示

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

評論

0/150

提交評論