版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課程設計說明書 課程名稱: 單片機原理及應用 設計題目: 基于單片機的LED流水燈控制 院 系: 信息技術學院 專 業(yè): 計算機科學與技術 2013年1月10日 基于單片機的LED流水燈控制摘 要 基于單片機的LED流水燈的應用十分廣泛,由單片機作為的核心控制器,通過按鍵實現(xiàn)控制功能和數據輸入是非常普遍的。通常在所需按鍵數量不多時,系統(tǒng)常采用獨立式按鍵。這種按鍵的電路配置靈活,軟件結構簡單。由于實際應用中,不同系統(tǒng)對按鍵的要求不同,因此,對按鍵程序的設計要考慮全面,以便更好地完成按鍵所設定的功能,簡述了該系統(tǒng)中一些重要芯片的基本工作原理,著重論述了硬件線路各個模塊的設計思想。進而熟練掌握相關專
2、業(yè)基礎知識的綜合應用,提高學生的實際動手和設計能力。 本系統(tǒng)是基于AT89C51系列單片機為核心的LED流水燈設計,實現(xiàn)8個LED燈變化方向和速度的可調。 關鍵詞:單片機 獨立式按鍵 LED 目 錄第一章 緒論11. 設計背景11.1設計目的11.2可行性分析及相關現(xiàn)狀11.3意義2第二章 系統(tǒng)設計32系統(tǒng)設計32.1整體設計32.2模塊設計4第三章 系統(tǒng)實現(xiàn)73.1整體仿真電路圖73.2各部分模塊原理73.2.1單片機最小系統(tǒng)73.2.2外圍電路8第四章 核心代碼11第五章 調試14第六章 總結與致謝156.1總結156.2致謝15第七章 附錄167.附錄167.1源代碼16第1章 緒論1.
3、 設計背景1.1設計目的 通過本次課題設計,應用單片機原理及應用等所學相關知識及查閱資料完成簡易LED流水燈系統(tǒng)設計,以達到理論與實踐更好的結合、進一步提高綜合運用所學知識和設計的能力的目的。1.2可行性分析及相關現(xiàn)狀 隨著人們生活水平的提高,基于單片機的LED流水燈的應用越來越廣泛,其中獨立式鍵盤的擴展電路,該模塊主要應用于儀器儀表、工業(yè)控制器、條形顯示器、控制面板等實時性要求不太高的設備。所以利用軟件編程盡量做到硬件電路簡單穩(wěn)定,減小電磁干擾和其他環(huán)境干擾,減小因元器件精度不夠引起的誤差,還可以改進和提高如選用更精密的元器件等,在此次設計中我們將用到集成電路。集成電路是信息產業(yè)和高新技術的
4、核心,是推動國民經濟和社會信息化的關鍵技術。集成電路的產業(yè)規(guī)模和技術水平已成為國家綜合國力的一個重要標志。 我國集成電路產業(yè)已經經過30多年的發(fā)展現(xiàn)已形成了近百家的產業(yè)規(guī)模,其中具備一定設計規(guī)模的單位有20多家,其中北京華大、大唐、深圳華威和無錫矽科四家設計公司的銷售額超過了1億元。多家外國著名公司也紛紛在中國建立起集成電路設計公司。中國發(fā)展集成電路的主要目標為:達到大規(guī)模生產150mm和0.8微米的技術水平;200mm和0.5微米的制造技術的產業(yè)化;提高集成電路的設計能力以滿足市場需求;跟蹤0.30.4微米和先進封裝技術的研發(fā);開發(fā)200mm的硅片制造技術并在國內開始生產等。未來10年是我國
5、微電子產業(yè)發(fā)展的關鍵時期。重點要推進超大規(guī)模集成電路和新技術的產業(yè)化。綜觀中國集成電路的設計概況,可以看到從20世紀80年代末開始,經過90年代初的創(chuàng)業(yè)期,現(xiàn)正進入它的發(fā)展期,21世紀將是中國設計業(yè)的成熟期。1.3意義 今天,當我們進入21世紀的時候,自動化科學技術不僅面臨著挑戰(zhàn)、也遇到了前所未有的發(fā)展機遇,而與此同時,在世界范圍內掀起了高等科學工程教育的改革浪潮。這兩方面的因素必將深刻地影響大學自動化專業(yè)的發(fā)展。 本次課程設計就是為了加強學生動手能力,加強學生對電子電路技術的掌握,了解控制工程行業(yè)對當今社會的影響。同時培養(yǎng)學生實踐能力,并通過實踐來不斷的發(fā)現(xiàn)問題和解決問題的途徑和方法,從而提
6、高實踐能力。第2章 系統(tǒng)設計2系統(tǒng)設計2.1整體設計本方案主要有硬件部分和程序部分構成。硬件部分主要由單片機最小系統(tǒng)和輸入輸出設備構成。 首先搭建單片機最小系統(tǒng),包括電源電路,手動復位電路,時鐘電路。時鐘電路才用內部時鐘方式,手動復位電路采用按鍵電平復位方式。再根據要求在P2口串接8個發(fā)光二極管作為輸出設備,分別通過限流電阻接電源,在P3口串接2個獨立按鍵,作為輸入設備。通過獨立按鍵控制LED燈的閃爍和移動及速率變化。同時在P1口連接一個數碼管顯示電路,用于自動計時,實現(xiàn)自動改變流水燈的樣式。 程序部分設定T0為定時工作方式,T0每隔一定的時間掃描獨立按鍵,當檢測到某個鍵按下時,在主函數中執(zhí)行
7、相應的程序。程序框圖如圖1所示:開始設置定時器工作方式開中斷啟動定時器判斷count1的值,強制轉換燈的閃爍樣式判斷count2的值確定速率數碼管計時10s之后,自動改變樣式圖12.2模塊設計各部分模塊圖如下:單片機時鐘電路及自動復位電路:外圍輸入電路:外圍輸出二極管顯示電路:外圍輸出數碼管顯示電路:第3章 系統(tǒng)實現(xiàn)3.1整體仿真電路圖如圖2所示:圖23.2各部分模塊原理各模塊原理介紹如下:3.2.1單片機最小系統(tǒng)首先搭建單片機最小系統(tǒng),包括電源電路,手動復位電路,時鐘電路。時鐘電路才用內部時鐘方式,手動復位電路采用按鍵電平復位方式。時鐘電路用于產生AT89C51單片機工作時所必需的時鐘信號。
8、AT89C51單片機的內部電路在時鐘信號的控制下,嚴格地按時序執(zhí)行指令進行工作。復位是單片機的初始化操作,除了進入系統(tǒng)的正常初始化之外,當由于程序運行出錯或操作錯誤使系統(tǒng)處于死鎖狀態(tài),通過復位按鍵可使單片機重新啟動。如圖3所示:圖33.2.2外圍電路外圍電路主要有輸入設備和輸出設備。輸入設備主要由2個獨立按鍵構成,如圖4所示。輸出設備由8個二極管構成,如圖5所示,及七段數碼管顯示電路,如圖6所示。其中s1鍵控制8個二極管的花樣顯示,s2控制8個二極管點亮的速率。數碼管用于計時10s,10s之后自動轉換二極管顯示樣式,如果10s之內有s1按鍵按下,則強制執(zhí)行s1按鍵的內容。其中二極管的保護電阻的
9、取值范圍為220-880歐姆之間。 圖4 圖5s1鍵按一下,二極管從上往下單向點亮,哪個送入的是0,就點亮哪個燈,然后依次使0右移,實現(xiàn)依次點亮;按兩下,二極管雙向移動點亮;按三下,二極管4個交替閃爍;按四下,二極管8個交替閃爍;按五下,8個二極管依次點亮,依次熄滅;從而實現(xiàn)二極管的花樣顯示;s2鍵按下,通過延時程序,可以改變二極管點亮的速率。 圖6數碼管顯示電路,通過往p1.0p1.6寫入0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90會顯示數字09,自動計時10s;如果10s之內沒有按鍵按下,則10s之后,二極管自動改變顯
10、示樣式,如果10s之內有按鍵按下,則強制執(zhí)行按鍵內容。第四章 核心代碼本設計主要的模塊就是輸出設備中的8個二極管及七段數碼管顯示電路,分別如上圖的5、6所示。其中控制8個二極管花樣點亮的程序如下,重點以花樣1為說明:if(count1=1) /花樣1: 燈單向向下移模塊子程序 if(count2=1) rate=rate1; /如果s2鍵按一下,執(zhí)行速率1 if(count2=2) rate=rate2; /如果s2鍵按兩下,執(zhí)行速率2 P2=0xfe; /給p2端口送入初值,這時D1點亮delay(rate); temp=P2; for(i=0;i<8;i+) /通過延時及循環(huán),依次點
11、亮D2D8 if(count1=1) temp=_crol_(temp,1); P2=temp; if(count2=1) /并隨時判斷是否有s2鍵按下 rate=rate1; if(count2=2) rate=rate2; delay(rate); if(i=7) i=0; 七段數碼管顯示電路的程序如下:unsigned char code table210=0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90; /定義數碼管0-9數字顯示的表 void display(unsigned char j)P1= table2j/
12、10; /通過片選使兩位數碼管分別顯示數字,但是延時時間小,可以實現(xiàn)兩位數碼管同時顯示 S3 = 1; delay(10); S3 = 0;P1= table2j%10; S4 = 1; delay(10); S4 = 0; 中斷服務程序如下:void timer0() interrupt 1 TH0=(65536-50000)/256; /T0重新裝初值 TL0=(65536-50000)%256; count+; display(table2index); if(table2index=0 && count=1) /如果數碼管顯示數字0時改變流水燈的樣式 count1+;
13、if(count1=6) count1=1; /如果五個花樣顯示完了之后,再按下按鍵S1或數碼管計數到10時,再重新從花樣1顯示 if(count=20) /累加計數器的次數,如果到20次的話數碼管數字通過查表自動加1顯示 count=0; table2index=table2index+1; if(table2index=11) table2index=0; if(S1=0) /檢測是否是S1按下 delay(5); /軟件延時消抖 if(S1=0) /再次檢測S1是否確實按下 table2index=0; count1+; /如果s1確實按下,則執(zhí)行s1內容 while(!S1); /如果
14、s1沒有按下,繼續(xù)執(zhí)行原來的花樣顯示 if(count1=6) count1=1; if(S2=0) /檢測是否是S2按下 delay(5); /軟件延時消抖 if(S2=0) /再次檢測S2是否確實按下 count2+; while(!S2); /如果s2沒有按下,則繼續(xù)執(zhí)行原來的速率 if(count2=3) count2=1;第五章 調試仿真的過程中出現(xiàn)的主要問題是,按s2鍵二極管點亮速率不會改變,本來只要寫入延時程序,就應該會改變速率,但是仿真之后,速率并不會改變。后來經過各方面的查資料及研究后才知道,必須在調用延時程序前判斷s2鍵是否被按下,并且按下的次數。否則的話,就算s2鍵被按下
15、,也只是執(zhí)行原本寫入的速率,并不會根據s2鍵的按下改變速率。第六章 總結與致謝6.1總結 經過一段時間的努力,我們小組順利的完成了這次單片機課程設計。這是一個磨練意志的過程。從課題的選擇開始,硬件和軟件系統(tǒng)的設計、到最后的設計成功,這其中經歷了很多困難。 但是更重要的是在這個過程中我得到了很大的鍛煉。 通過AT89C51單片機等一些器件的設計讓我學習和掌握了單片機技術的基礎知識和技術要點,也使以前學的很多知識都得到了運用。通過本次課程設計,我不僅學到了關于單片機技術方面的許多專業(yè)知識, 同時也讓我感覺到很多方面的知識的重要性。 其實如何有效和快速的找到資料也是課程設計給我的啟發(fā)。 與他人交流思
16、想是取得成功的關鍵,在交流中不僅強化了自己原有的知識體系,也擴展了自己的思維。課程設計是一個通過思考、 發(fā)問、自己解惑并動手、提高的過程。我會在以后的學習中不斷學習,積累經驗, 完善自己。 通過這次課程設計使我懂得了理論與實際相結合是很重要的。只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,從而提高自己的實際動手能力和獨立思考的能力。6.2致謝在這里我感謝那些曾給我授過課的每一位老師,是你們教會我專業(yè)知識。 特別感謝教我們單片機原理及應用的某某老師,是他給我們詳細講解了單片機的結構、工作原理,以及各個引腳功能,還有程序的編寫方法等。這些都是我們這次課程設計的基
17、礎,沒有某老師的講解,我們要想完成這次課程設計,是不可能的。我還要感謝我們小組的成員,通過大家的齊心協(xié)力,我們克服了重重阻力終于成功的完成了此次任務。非常感謝!第七章 附錄7.附錄7.1源代碼/目的:實現(xiàn)基于單片機的LED流水燈控制/語言:C; /變量: S1:P3.4口 S2:P3.5口 S3:P3.6口 S4:P3.7口 table1:流水燈樣式控制 table2:數碼管-9數字/變量:temp:臨時變量i:臨時變量table2index:存儲table2的下標/變量:count:累加計數器次數 count1:累加單擊第一個按鍵次數count2:累加單擊第二個按鍵次數 /變量:rate:速
18、度變量rate1:速度變量rate2:速度變量#include<reg51.h>#include<intrins.h>sbit S1=P34; sbit S2=P35;sbit S3=P36;sbit S4=P37;unsigned char code table19=0xff,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00; /流水燈樣式控制unsigned char code table210=0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90; /數碼管-9數字 un
19、signed char temp,i,table2index=0;unsigned char count1=0,count2=0,count=0; unsigned char rate=100 ,rate1=100,rate2=500; /*/Begin-延遲 void delay(unsigned char z) unsigned int x,y; for(x=z;x>0;x-) for(y=100;y>0;y-);/End-延遲/*/Begin-數碼管數字顯示void display(unsigned char j) P1= table2j/10; S3 = 1; delay(
20、10); S3 = 0; P1= table2j%10; S4 = 1; delay(10); S4 = 0; /End-數碼管數字顯示/*void main() P1=0xff; TMOD=0x01; /設置定時器T0為工作方式 TH0=(65536-50000)/256; /定時器賦初值 TL0=(65536-50000)%256; EA=1; /開總中斷 ET0=1; /開啟定時器T0中斷 TR0=1; /啟動定時器T0 while(1)/*/Begin-流水燈樣式控制/Begin-花樣 if(count1=1) /花樣:燈單向向下移模塊子程序 if(count2=1) rate=rat
21、e1; if(count2=2) rate=rate2; P2=0xfe;delay(rate); temp=P2; for(i=0;i<8;i+) if(count1=1) temp=_crol_(temp,1); P2=temp; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); if(i=7) i=0; /End-花樣 /* /Begin-花樣 if(count1=2) /花樣:燈雙向移模塊子程序 P2=0x7f; if(count2=1) rate=rate1; if(count2=2) rate=rat
22、e2; delay(rate); temp=P2; for(i=0;i<7;i+) if(count1=2) temp=_cror_(temp,1); P2=temp; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); for(i=0;i<7;i+) if(count1=2) temp=_crol_(temp,1); P2=temp; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); /End-花樣/*/Begin-花樣 if(co
23、unt1=3) /花樣:個交替閃爍模塊子程序 P2=0xf0; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); P2=0x0f; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); if(count1=4) /花樣:八個燈交替閃爍模塊子程序 P2=0xff; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); if(count1=4) P2=P2; if(count2=1) rate=rate1; if(count2=2) rate=rate2; delay(rate); if(count1=5) /花樣:八個燈依次全亮,依次滅模塊子程序 for(i=0;i<9;i+) /8個
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度光伏發(fā)電系統(tǒng)安裝與運營維護合同3篇
- 2025版餐飲配送行業(yè)信息化解決方案合同3篇
- 蚌埠經濟技術職業(yè)學院《農業(yè)企業(yè)管理學》2023-2024學年第一學期期末試卷
- 2025年智慧社區(qū)建設綜合服務合同范本2篇
- 2024年消防安全隱患排查與整改服務合同3篇
- 二零二五年度2025版?zhèn)€人承包教育培訓合同范本3篇
- 2024年貸款助力就業(yè)居間合同3篇
- 蚌埠工商學院《建筑建模技術》2023-2024學年第一學期期末試卷
- 百色職業(yè)學院《聲樂基礎》2023-2024學年第一學期期末試卷
- 白銀礦冶職業(yè)技術學院《深度學習實踐應用》2023-2024學年第一學期期末試卷
- 精神病院感染管理
- 2024河北工業(yè)職業(yè)技術大學教師招聘考試筆試試題
- 地震應急演練實施方案村委會(2篇)
- 2024年合肥市梅山飯店有限公司招聘筆試沖刺題(帶答案解析)
- 基礎有機化學實驗智慧樹知到期末考試答案章節(jié)答案2024年浙江大學
- 幼兒園進餐案例及分析總結
- 2024年中考英語第一次模擬考試(南京卷)
- 2023-2024學年江西省南昌二十八中教育集團八年級(上)期末英語試卷
- 三級合伙人制度
- 2024年湖北省黃石市黃石港區(qū)政府雇員招聘37人公開引進高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 殯儀館鮮花采購投標方案
評論
0/150
提交評論