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

下載本文檔

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

文檔簡介

1、 節(jié)日彩燈控制器設(shè)計(jì)課程設(shè)計(jì)說明書專業(yè)班級:12級電子信息科學(xué)與技術(shù)3班 姓名學(xué)號: 張娟 080212107 陳晶晶 080212118 程文文 080212130 王鵬飛 080212094 指導(dǎo)教師: 紀(jì)娟娟 設(shè)計(jì)時(shí)間: 2014.6.6 物理與電氣工程學(xué)院 2014 年 6 月 6 日摘要 伴隨社會發(fā)展的需求,無論是生活?yuàn)蕵?,還是工業(yè)控制,彩燈是必不可少的元素,節(jié)日中閃爍的彩燈,不僅使人們身心愉悅,還能帶來視覺享受。我們希望節(jié)日彩燈能夠啟動(dòng)、停止;能夠通過開關(guān)進(jìn)行功能選擇;能夠體現(xiàn)循環(huán)、組合和色彩變化的控制功能和效果。本次設(shè)計(jì)利用單片機(jī)程序以及利用集成電路芯片、LED燈和按鍵來設(shè)計(jì)彩燈

2、,將軟、硬件有機(jī)地結(jié)合在一起,實(shí)現(xiàn)設(shè)計(jì)的目的。通過按鍵的選擇可以控制彩燈及數(shù)碼管顯示,另外還設(shè)置一中斷按鍵在突發(fā)場景下給人以提醒。電路結(jié)構(gòu)簡單,變換效果多樣,在實(shí)際生活中操作簡單、易于實(shí)現(xiàn)。 關(guān)鍵詞 LED燈;鍵盤;STC89C52;集成電路芯片;數(shù)碼管 目  錄 1  概述·······················

3、3;·····································1        2 彩燈設(shè)計(jì)內(nèi)容簡要···

4、3;·············································1 2.1  彩燈設(shè)計(jì)內(nèi)容·

5、;············································1 2.2  彩燈設(shè)計(jì)要求··

6、···········································1 2.3  彩燈設(shè)計(jì)原理···&

7、#183;·········································1 2.4  彩燈總體控制框圖····

8、·····································2  3  硬件電路設(shè)計(jì)········

9、83;············································2 3.1 STC89C52單片機(jī)介紹··&#

10、183;···································2 3.2 系統(tǒng)的硬件構(gòu)成及功能描述···········&#

11、183;······················4    4  系統(tǒng)軟件設(shè)計(jì)·····················

12、3;·······························6 4.1 程序流程圖·················

13、;······························6  4.2 軟件程序·················&

14、#183;······························75 仿真結(jié)果與結(jié)論·················

15、83;·······························106 設(shè)計(jì)體會 ················&

16、#183;·····································137   參考文獻(xiàn)·········

17、;··············································131  概述節(jié)日彩燈使生活中常常用

18、到的裝飾物品。它集中地運(yùn)用了單片機(jī)、LED、,自動(dòng)控制等技術(shù),是典型的基于單片機(jī)的電子產(chǎn)品。本設(shè)計(jì)以STC89C52單片機(jī)為控制核心,采用模塊化的設(shè)計(jì)方案,運(yùn)用LED彩燈、按鍵、數(shù)碼管等組成電路,實(shí)現(xiàn)彩燈在開啟時(shí)滿足不一樣的閃亮方法。按鍵可以在彩燈使用的時(shí)候選擇不同的亮法,使彩燈變化多樣,七段數(shù)碼管可以清楚顯示彩燈樣式編號,易于選取操作。隨著計(jì)算機(jī)、微電子、信息技術(shù)的快速進(jìn)步,智能化技術(shù)的開發(fā)速度越來越快 ,智能度越來越高 ,應(yīng)用范圍也得到了極大的擴(kuò)展。在海洋開發(fā)、宇宙探測、工農(nóng)業(yè)生產(chǎn)、軍事、社會服務(wù)、娛樂等各個(gè)領(lǐng)域。在娛樂方面,場地的裝飾離不開彩燈。在建筑方面也采用彩燈來裝飾高樓大廈。彩燈又

19、靈活多變的點(diǎn)亮方式,裝飾效果非常好,特別時(shí)晚上使得高樓大廈更加漂亮。是彩燈的應(yīng)用才使得城市的夜景非常迷人。 在國內(nèi)外,微控制系統(tǒng)主要采用單片機(jī)作為控制核心。因此,單片機(jī)的發(fā)展將有助于簡單實(shí)用電子產(chǎn)品的開發(fā)。在本設(shè)計(jì)中,采用比較先進(jìn)的STC89C52單片機(jī)為控制核心,它的功耗很低,功能多樣,是簡單電子產(chǎn)品開發(fā)控制元件的首選器件。2 彩燈設(shè)計(jì)內(nèi)容簡要 2.1  彩燈設(shè)計(jì)內(nèi)容1. 利用單片機(jī)實(shí)現(xiàn)LED彩燈花式的變換2. 利用單片機(jī)實(shí)現(xiàn)鍵盤控制花式的選擇3. 利用數(shù)碼管顯示彩燈花式的類型4. 設(shè)計(jì)并實(shí)現(xiàn)中斷對彩燈的控制 2.2  彩燈設(shè)計(jì)要求1. 能啟動(dòng)、停止2

20、. 能通過開關(guān)進(jìn)行彩燈樣式的選擇3.能通過數(shù)碼管顯示彩燈的方式4.要體現(xiàn)循環(huán)、中斷和色彩變化的控制功能和效果 2.3  彩燈設(shè)計(jì)原理主控模塊主要設(shè)計(jì)器件有STC89C52,8個(gè)LED燈,6個(gè)按鍵,一塊七段數(shù)碼管。通過軟件設(shè)計(jì),使單片機(jī)P0口作為一位靜態(tài)七段數(shù)碼管字型碼的控制口,P1口作為8個(gè)彩色LED的驅(qū)動(dòng)信號輸出口,P2口為按鍵輸入口,P3.2為外部中斷INT0輸入口。 2.4 彩燈總體控制框圖數(shù)碼管顯示電路 時(shí)鐘電路按鍵電路STC89C52單片機(jī)復(fù)位電路LED彩燈電路 圖2.4.1 彩燈總體控制框圖3  硬件電路設(shè)計(jì) 3.1 STC89C52單片機(jī)介

21、紹STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash存儲器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位CPU和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個(gè)16 位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),

22、全雙工串行口。另外 STC89X52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。 圖3.1.1 STC89C52外形及引腳排列特性:STC89C52RC單片機(jī);8K字節(jié)程序存儲空間;512字節(jié)數(shù)據(jù)存儲空間;內(nèi)帶2K字節(jié)EEPROM存儲空間;可直接使用串口下載;AT89S52單片機(jī):8K字節(jié)程序存儲空間;256字節(jié)數(shù)據(jù)存儲空間;帶有2KB的EEPROM空間。參數(shù)1.

23、增強(qiáng)型8051 單片機(jī),6 時(shí)鐘/機(jī)器周期和12 時(shí)鐘/機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051 2. 工作電壓:5.5V3.3V(5V 單片機(jī))/3.8V2.0V(3V 單片機(jī))3. 工作頻率范圍:040MHz,相當(dāng)于普通8051 的080MHz,實(shí)際工作 頻率可達(dá)48MHz4. 用戶應(yīng)用程序空間為8K 字節(jié)5. 片上集成512 字節(jié)RAM6. 通用I/O 口(32 個(gè)),復(fù)位后為:P0/P1/P2/P3 是準(zhǔn)雙向口/弱上拉, P0 口是漏極開路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為 I/O 口用時(shí),需加上拉電阻。7. ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用

24、編程器,無 需專用仿真器,可通過串口(RXDP3.0,TXD/P3.1)直接下載用戶程序,數(shù)秒即可完成一片8. 具有EEPROM 功能9. 具有看門狗功能10. 共3 個(gè)16 位定時(shí)器/計(jì)數(shù)器。即定時(shí)器T0、T1、T211. 外部中斷4 路,下降沿中斷或低電平觸發(fā)電路,Power Down 模式可 由外部中斷低電平觸發(fā)中斷方式喚醒12. 通用異步串行口(UART),還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè)UART13. 工作溫度范圍:-40+85(工業(yè)級)/075(商業(yè)級)14. PDIP 封裝 3.2  系統(tǒng)的硬件構(gòu)成及功能描述控制系統(tǒng)硬件設(shè)計(jì)電路圖如圖所示: 圖3.2.1 控制系統(tǒng)硬件

25、設(shè)計(jì)電路圖功能描述: 系統(tǒng)硬件設(shè)計(jì)電路主要由四部分組成:按鍵復(fù)位電路、時(shí)鐘震蕩電路、按鍵電路、LED彩燈電路、數(shù)碼管顯示電路。 按鍵復(fù)位電路:復(fù)位是單片機(jī)的初始化,其作用是使CPU中的各個(gè)部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。在接電瞬間RST端的電位與VCC相同,隨著電容充電電流的減小,+5V立即加到了RST/VPD端,RST的電位逐漸下降。 時(shí)鐘振蕩電路:在STC89C52的外部,XTAL1和XTAL2之間跨越晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)自激振蕩器,形成時(shí)鐘振蕩電路。時(shí)鐘電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器二分頻后,形成單片機(jī)的時(shí)鐘脈沖信號。按鍵電路:用P2.3、P2.4、P2.

26、2、P2.1作彩燈亮燈方式輸入口,按鍵輸入均采用低電平有效。獨(dú)立式按鍵的軟件可采用查詢方式,本設(shè)計(jì)中按鍵程序的就是采用查詢方式,若圖中的P2.3的按鍵按下,軟件程序查詢到P2.3口為低電平,跳轉(zhuǎn)到該按鍵控制的相應(yīng)彩燈亮燈方式1。P3.2(INT0)口接一個(gè)按鍵,INT0為邊沿觸發(fā)方式(下降沿有效),當(dāng)按鍵按下進(jìn)入中斷服務(wù)子程序,彩燈會暫停在此時(shí)刻的狀態(tài)。P2.0口接一個(gè)按鍵,低電平有效,當(dāng)在暫停后按下該鍵,彩燈繼續(xù)按照暫停前狀態(tài)循環(huán)點(diǎn)亮。LED彩燈電路:發(fā)光二極管與單片機(jī)的P1口相連接,其電路圖如圖所示。發(fā)光二極管為共陰極,其他管腳分別接P1口的8個(gè)端口,P1.0、P1.1、P1.2、P1.3

27、、P1.4、P1.5、P1.6、P1.7每個(gè)端口接一個(gè)彩燈,當(dāng)給他們送高電平時(shí)發(fā)光二極管就會亮。數(shù)碼管顯示電路:該一位數(shù)碼管為靜態(tài)顯示,字段接P0口,因?yàn)楣捕私恿硕O管,電路板上的插針為三極管的基極,所以電路板上的插針接低電平(或接地),但此數(shù)碼管為共陰極。當(dāng)某個(gè)鍵按下,軟件程序就會給P0口送相應(yīng)的執(zhí)行碼,就會在數(shù)碼管上顯示相應(yīng)的樣式編號,若中斷鍵按下,就會在數(shù)碼管上顯示不變。4 系統(tǒng)軟件設(shè)計(jì) 4.1 程序流程圖 開始 初始化 有鍵按下? N Y4鍵按下?中斷按下?3鍵按下?1鍵按下?2鍵按下?N N Y N Y N Y N Y 數(shù)碼管顯示不變,彩燈暫停開始鍵按下?數(shù)碼管顯示3,彩

28、燈樣式3數(shù)碼管顯示2,彩燈樣式2數(shù)碼管顯示4,彩燈樣式4 Y N Y數(shù)碼管顯示不變,彩燈繼續(xù)暫停時(shí)的花樣循環(huán)數(shù)碼管顯示1,彩燈樣式1 圖4.1.1 程序流程圖4.2 軟件程序 #include<reg52.h>unsigned char code table1=0x18,0x24,0x42,0x81,0x81,0x42,0x24,0x18;unsigned char code table2=0x88,0x44,0x22,0x11,0x55,0xaa,0x55,0xaa;unsigned char code table3=0x01,0x02,0x04,0x08,0x10,0x20,0

29、x40,0x80;unsigned char code table4=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01; int a; unsigned int z; sbit d1=P20; sbit d2=P23; sbit d3=P24; sbit d4=P22; sbit d5=P21; void delay(unsigned int z) /延時(shí)函數(shù),z的取值為這個(gè)函數(shù)的延時(shí)ms數(shù),如delay(200);大約延時(shí)200ms.unsigned int x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void liu1

30、()/流水燈樣式1 P0=0x06; P1=table1a;delay(200);a+;if(a=8) a=0; void liu2()/流水燈樣式2 P0=0x5b; P1=table2a;delay(400);a+;if(a=8) a=0; void liu3()/流水燈樣式3 P0=0x4f;P1=0xff;delay(200); P1=table3a;delay(300);a+;if(a=8) a=0; void liu4()/流水燈樣式4 P0=0x66; P1=table4a;delay(150);a+;if(a=8) a=0;P1=0xff;delay(300); void ma

31、in() EA=1; /開中斷EX0=1;IT0=1; P2=0x1f;P1=0x00;P3=0X0f;P0=0x00;a=0;while(1) if(d2=0)/判斷第一個(gè)鍵 delay(80);/延時(shí)等待 while(P2=0x1f) liu1();if(d3=0)/判斷第二個(gè)鍵 delay(80); while(P2=0x1f) liu2(); if(d4=0)/判斷第三個(gè)鍵 delay(80); while(P2=0x1f) liu3(); if(d5=0)/判斷第四個(gè)鍵 delay(80); while(P2=0x1f) liu4(); void INTO_() interrupt

32、0 / 外部中斷是0號 while(d1=1);/判斷播放鍵delay(800);/延時(shí)等待 5 仿真結(jié)果與結(jié)論P(yáng)ROTEUS軟件自帶編輯器,可以實(shí)現(xiàn)對匯編程序的編譯,其操作步驟是:新建源文件:點(diǎn)菜單SourceAdd/Remove source Files在出現(xiàn)的對話框中,選擇ASEM51編輯器,新建NOMAME1.asm源文件。程序設(shè)計(jì):點(diǎn)菜單SourceNAMAME1.asm打開源文件編輯器,將將附錄程序輸入到文本中。 源程序編譯:點(diǎn)菜單SourceBuild ALL編譯匯編源程序,生成目標(biāo)代碼文件PMD.HEX,若編譯失敗,可對程序進(jìn)行修改調(diào)試直至編譯成功。目標(biāo)代碼加載:在PROTEUS編輯環(huán)境雙擊STC89C52,彈出如圖5.1所示的對話框,在PROGRAM FILE一欄中單擊打開按鈕,選中NOMAME1.HEX文件。在CLOCK FREQUENCY欄中設(shè)置系統(tǒng)工作頻率為12MHZ,單擊OK完成目標(biāo)代碼加載。最后,點(diǎn)擊運(yùn)行按鈕,啟動(dòng)系統(tǒng)仿真。 圖5.1 程序代碼加載 當(dāng)按下1號鍵時(shí)仿真結(jié)果如圖5.2所示: 圖5.2花樣1仿真結(jié)果當(dāng)按下2號鍵時(shí)仿真結(jié)果如圖5.3所示: 圖5.3花樣2仿真結(jié)果

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論