基于單片機(jī)LCD顯示音樂倒數(shù)計數(shù)器課程設(shè)計_第1頁
基于單片機(jī)LCD顯示音樂倒數(shù)計數(shù)器課程設(shè)計_第2頁
基于單片機(jī)LCD顯示音樂倒數(shù)計數(shù)器課程設(shè)計_第3頁
基于單片機(jī)LCD顯示音樂倒數(shù)計數(shù)器課程設(shè)計_第4頁
基于單片機(jī)LCD顯示音樂倒數(shù)計數(shù)器課程設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、電子信息工程專業(yè)課程設(shè)計報告課程論文題目:帶有LCD顯示的音樂倒數(shù)計數(shù) 器課程:單片機(jī)的c語言程序設(shè)計與應(yīng)用學(xué)期:班級:姓名:學(xué)號:教師: 日期:摘要單片機(jī)技術(shù)是一門不可或缺的技術(shù),對我們將來的工作以及生活和學(xué)習(xí)都有 很密切的聯(lián)系。近年來,隨著電子技術(shù)和微機(jī)計算機(jī)的迅速發(fā)展, 單片機(jī)的檔次 不斷提高,其應(yīng)用領(lǐng)域也在不斷的擴(kuò)大,已在工業(yè)控制、尖端科學(xué)、智能儀器儀 表、日用家電、汽車電子系統(tǒng)、辦公自動化設(shè)備、個人信息終端及通信產(chǎn)品中得 到了廣泛的應(yīng)用,成為現(xiàn)代電子系統(tǒng)中最重要的智能化的核心部件。單片機(jī)由CPU 一定容量的RA防口 ROMJ成,定時、計數(shù)和多種接口于一體 的微控制器。它體積小,成本低

2、,功能強(qiáng),廣泛應(yīng)用于智能產(chǎn)業(yè)和工業(yè)自動化上。 而51系列單片機(jī)是各單片機(jī)中最為典型和最有代表性的一種。這次課程設(shè)計通 過對它的學(xué)習(xí)、應(yīng)用,從而達(dá)到學(xué)習(xí)、設(shè)計、開發(fā)軟、硬的能力。本設(shè)計利用AT89C5WL片機(jī)結(jié)合字符型LCD®示器設(shè)計一個簡易的倒數(shù)計數(shù) 器。用4個按鍵操作來設(shè)置當(dāng)前想要倒計數(shù)的時間。做一小段時間倒計數(shù),當(dāng)?shù)?計數(shù)為0時,則發(fā)出一段音樂聲響,通知倒計數(shù)終了,該做應(yīng)當(dāng)做的事。應(yīng)用 Proteus的ISIS軟件和Keil uVision3 來實現(xiàn)該計數(shù)器的設(shè)計與仿真。該方法 仿真效果真實、準(zhǔn)確,節(jié)省了硬件資源。該多功能計數(shù)器可以應(yīng)用于一般的生活和工作中,也可以通過改裝,提高性

3、 能,增加新功能,從而給人們的生活和工作帶來更多的方便。關(guān)鍵詞:AT89C51,計數(shù)器,鍵盤控制,LCD顯示,Proteus , Keil目錄1設(shè)計概述和要求.1.1.1 設(shè)計概述1.1.2 設(shè)計要求1.2系統(tǒng)設(shè)計2.2.1 框圖設(shè)計2.2.2 元件清單2.3軟件設(shè)計5.3.1 程序流程圖5.3.1.1 主程序流程圖5.3.1.2 蜂鳴器發(fā)聲程序流程圖 63.2 蜂鳴器發(fā)聲電路原理 6.3.3 蜂鳴器發(fā)聲程序的關(guān)鍵代碼 錯誤!未定義書簽。4 PROTEUS仿真結(jié)果7.4.1 總體電路仿真結(jié)果 7.4.2 假設(shè)倒計時為5秒時的仿真結(jié)果.85總結(jié).106附表(本設(shè)計所有程序) .14參考文獻(xiàn)201

4、設(shè)計概述和要求本設(shè)計的任務(wù)是利用AT89C511片機(jī)結(jié)合字符型LCD®示器設(shè)計一個簡易的 倒數(shù)計數(shù)器。做一小段時間倒計數(shù),當(dāng)?shù)褂嫈?shù)為 0時,則發(fā)出一段音樂聲響。1.1 設(shè)計概述20世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展。在其推動下,現(xiàn)代電子產(chǎn)品幾乎 滲透到了社會的各個領(lǐng)域,有力的推動和提高了社會生產(chǎn)力的發(fā)展與信息化程 度。同時也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提升,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快。隨著科技的發(fā)展和社會的進(jìn)步,人們對數(shù)字鐘的要求越來越高,多功能數(shù)字 鐘不管在性能還是在樣式上都發(fā)生了質(zhì)的變化。 數(shù)字鐘實際上是一個對標(biāo)準(zhǔn)頻率 進(jìn)行計數(shù)的計數(shù)電路,走時精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)

5、校。單 片計算機(jī)即單片微型計算機(jī),是集CPU,RAM,RO此時/計數(shù)和多種接口于一體的 微控制器。它體積小成本低,功能強(qiáng),廣泛應(yīng)用于智能產(chǎn)品和工業(yè)自動化上。由 于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度遠(yuǎn)遠(yuǎn)超 多老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大地方便, 而且大大的擴(kuò)展 了鐘表原先的報時功能,諸如定時自動報警、0按時自動打鈴、定時廣播、自動啟閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,所 有這些,都是以數(shù)字化為基礎(chǔ)的,因此研究數(shù)字鐘及擴(kuò)大其應(yīng)用有著非?,F(xiàn)實的 意義。本系統(tǒng)采用單片機(jī)作為數(shù)字鐘的核心控制器,讀取時鐘的值,并通過 LCD 液晶

6、顯示器顯示出來,而且可以通過按鍵電路控制執(zhí)行信號, 給時鐘賦初值。還 可以設(shè)置鬧鐘,當(dāng)計數(shù)為0時,發(fā)出一陣音樂聲。并可拓展其功能顯示年月日。1.2 設(shè)計要求利用AT89C51單片機(jī)結(jié)合字符型LCD顯示器設(shè)計一個簡易的倒數(shù)計數(shù)器,可 用來煮方便面、煮開水或小睡片刻等。作品先接受用戶輸入的倒數(shù)計數(shù)時間,然 后由用戶啟動作品工作(可用一個閃爍的 LED燈指示),當(dāng)?shù)褂嫈?shù)為0時,則發(fā) 出一段音樂聲響,通知倒計數(shù)終了,該做應(yīng)當(dāng)做的事 。定時鬧鐘的基本功能如下。字符型LCD (16 X 2)顯示器。顯示格式為“ TIME分分:秒秒”。用4個按鍵操作來設(shè)置當(dāng)前想要倒計數(shù)的時間。一旦按下鍵則開始倒 計數(shù),當(dāng)計

7、數(shù)為0時,發(fā)出一陣音樂聲2系統(tǒng)設(shè)計2.1 框圖設(shè)計本項目的系統(tǒng)設(shè)計框圖如圖2-1所示:圖2-1系統(tǒng)框圖由系統(tǒng)框圖可看出,本設(shè)計由單片機(jī)AT89C51 LCD液晶顯示器、控制鍵盤、蜂鳴器、復(fù)位單路和定時器電路幾大模塊構(gòu)成。2.2 元件清單主控單片機(jī)采用AT89C51芯片,時鐘模塊選用一 12MH如振,產(chǎn)生時鐘脈沖。 顯示模塊采用LCD1602設(shè)置部分選用鍵盤按鍵電路,發(fā)聲部分選用BUZZERS鳴器。還有一些電源、電阻、電容、接地等。主要元件清單如圖2-2所示:工23-j_j_±_7UPOO/AOOP0.1/AD1P0 2/AD2XTAL2P0.3WD3P04/AO4PQ5/AO5P0

8、6/AD6RSTP07WD7坦力A8P21/A9P22/A1D麗匐涵1ALEP24/A12£AP2 5iAl3P2J6M14P2 7/A15Plfl叩 M?KDf>11P31/TXD(I,PI 2P3W0P13P3 3tmP1.4P3.4TT0盟5P35H£因£陽曲不PI 7P37儂U) 0 ELI >CO Q uW >。一穴1寸109>> > >t £ uu aaacaaaaLCD液晶顯示器AT89c5 I圖2-2主要元件清單AT89C51 :AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器(FPERO

9、M Flash Programmable and Erasable Read Only Memory 的低電壓,高性能 CMOS 8 位微 處理器,俗稱單片機(jī)。主要特性:與MCS-51兼容、4K字節(jié)可編程閃爍存儲器、壽命:1000寫 /擦循環(huán)、數(shù)據(jù)保留時間:10年、全靜態(tài)工作:0Hz-24MHz、三級程序存儲器 鎖定、128X8位內(nèi)部RAM、32可編程I/O線、兩個16位定時器/計數(shù)器、 5個中斷源、可編程串行通道、低功耗的閑置和掉電模式 、片內(nèi)振蕩器和時 鐘電路。1602LCD :1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表 2-1所示.表2-1 1602液晶模塊控制指令丁 P指令R

10、SR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標(biāo)志或地址01BF計數(shù)器地址10寫數(shù)至U CGRA或DDRAM10要寫的數(shù)據(jù)內(nèi)容11從CGRA或DDRA腋數(shù)11讀出的數(shù)據(jù)內(nèi)容鍵盤:鍵盤采用5個button,分別控制倒計時開始、調(diào)分個位、調(diào)分十位、調(diào)秒個 位、調(diào)秒十位;另外還加一個總開關(guān)用于控制所有電路的通電情況

11、。蜂鳴器:用三極管、電阻和speaker成蜂鳴器電路。蜂鳴器最重要的特點是只要按照極性要求加上合適的直流電壓就可以發(fā)出固有頻率的聲音。電子信息工程專業(yè)課程設(shè)計報告3軟件設(shè)計3.1 程序流程圖3.1.1 主程序流程圖主程序開始初始化,然后掃描鍵盤、復(fù)位電路和計數(shù)器。當(dāng)鍵盤按鍵有按下時,調(diào)整計數(shù)器值,LCD顯示新值。當(dāng)復(fù)位鍵有按下時,計數(shù)器復(fù)位為初值,重新倒計數(shù)。當(dāng)計數(shù)器值倒計為0時,蜂鳴器發(fā)出聲音,計數(shù)器停止倒計,程序結(jié)束。主程序流程圖如圖3-1所示:圖3-1主程序流程圖電子信息工程專業(yè)課程設(shè)計報告3.1.2 蜂鳴器發(fā)聲程序流程圖3.2 蜂鳴器發(fā)聲電路原理對于單片機(jī)產(chǎn)生音樂,關(guān)鍵是控制頻率的輸出

12、.我們知道,不同的聲音對應(yīng)不同的頻率,產(chǎn)生有規(guī)律的頻率輸出就可以得到相應(yīng)規(guī)律的聲音.有8個基本音符:do、re、mi、fa、so、la、xi、do,八個不同的音符對應(yīng)著不同的頻率.只要 我們對照音符輸出相對應(yīng)的頻率,就可以產(chǎn)生美妙的音樂.本文中采用了 T0中斷 方式產(chǎn)生不同頻率,并用按鍵控制音樂的播放和停止。用三極管、電阻和BUZZER組成蜂鳴器電路。蜂鳴器最重要的特點是只要按照極性要求加上合適的直流電壓 就可以發(fā)出固有頻率的聲音。4 PROTEUS仿真結(jié)果4.1 電路原理圖及仿真系統(tǒng)protel99se電路原理圖和proteus電路仿真分別如圖4-1(a)、圖4-1 (b)圖4-1(a)總體

13、電路電路原理圖電子信息工程專業(yè)課程設(shè)計報告圖4-2倒計時設(shè)置仿真LM016LXTAL2RSTALE6;XTAL1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD39363534RP1LS13RESPACK-8

14、SOUNDER圖4-1(b)電路仿真4.2 倒計時設(shè)置仿真如下圖4-2(a)所示XTAL2RST29-EA67 8AT89C51P1.0P1.1P1.2PSEN ALEP1.3P1.4P1.5P1.6P1.7R?8.9k245_HnPCRYSTALxi iXTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0

15、P3.5/T1P3.6/WRP3.7/RDLCD1LM016L37363533214-10RP1 1213LS1SOUNDERRESPACK-814-1526 27 _2839 38電子信息工程專業(yè)課程設(shè)計報告倒計數(shù)設(shè)置為5秒時的仿真如下圖4-2(b)所示C3LCD1LM016LPSENALE EAP0.0/AD0P0.1/AD1P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/

16、INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDS D E S""W0 1 2 3 4 5 6 7V V V RRe DDDDDDDD-33圖4-3蜂鳴器的仿真圖4-2(b)倒計數(shù)5秒的仿真4. 3蜂鳴器的仿真如下圖4-3所示CRYSTALXTAL2RSTAT89C511P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7PSEN ALE EAR?8.9k295a67XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A

17、9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDLCD1LM016L39383736353433324RP1LS1SOUNDER27 2814 15 16 17 21 22一23respAck-8電子信息工程專業(yè)課程設(shè)計報告5總結(jié)通過此次多功能數(shù)字計數(shù)器的設(shè)計制作,我們將從書本上學(xué)到的知識應(yīng)用 于實踐,再次鞏固了我的單片機(jī)知識,提高了我的電路仿真設(shè)計能力。 雖然設(shè)計 過程中遇到了很多困難,但是在解決這些問題的過程無疑是對自

18、身專業(yè)素質(zhì)的提 高。當(dāng)最終調(diào)試成功的時候也是對自己的一種肯定。此次的設(shè)計不僅增強(qiáng)了自己在專業(yè)設(shè)計方面的信息,鼓舞了自己,更是一次興趣的培養(yǎng),為以后的學(xué)習(xí)方向 明確了重點。另外在這次設(shè)計中我們遇到了不少的問題,針對不同的問題我們采取不同的解決方法,最終一一解決了。在我們遇到不懂得問題時,利用課本上、參考書上 的知識,以及網(wǎng)上的資料最終解決問題。 和隊友之間相互討論,明白了團(tuán)隊合作 的重要性。本次項目設(shè)計還存在很多不足,比如,LCD的日期顯示還不夠完美,計數(shù)功能也不夠詳細(xì)等。以后爭取完善這個設(shè)計,以提高我們的單片機(jī)設(shè)計能力。這里很感謝藍(lán)會立老師給我們的指導(dǎo)和教育,感謝他給我們提供了良好的 學(xué)習(xí)設(shè)計

19、環(huán)境,也很感謝可愛的伙伴們,讓我覺得團(tuán)隊的力量很偉大。6附表(本設(shè)計所有程序)#include <reg51.h>#include <intrins.h>sbit rs= P2A4;sbit rw = P2A5;sbit ep = P2A6;sbit k1=P1A4;sbit k2=PW5;sbit k3=PW6;sbit k4=PW7;sbit k5=PW3;sbit speaker=P3A0;unsigned char code disl口 = "605 "unsigned char code dis2口 = "TIME 00:00&q

20、uot;unsigned char code dis3 = "0123456789"unsigned int num=0;unsigned int miaogw=0;unsigned int miaosw=0;unsigned int fengw=0;unsigned int fensw=0;unsigned char flag=1;unsigned char timer0h,timer0l,time;/世上只有媽媽好數(shù)據(jù)表code unsigned char sszymmh=6,2,3,5,2,1,3,2,2, 5,2,2, 1,3,2, 6,2,1, 5,2,1,6,2

21、,4,3,2,2,5,2,1,6,2,1, 5,2,2, 3,2,2, 1,2,1,6,1,1,5,2,1,3,2,1,2,2,4, 2,2,3, 3,2,1, 5,2,2,5,2,1,6,2,1,3,2,2, 2,2,2, 1,2,4, 5,2,3, 3,2,1,2,2,1,1,2,1,6,1,1, 1,2,1, 5,1,6, 0,0,0;/音階頻率表高八位code unsigned char FREQH=0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8,0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC, /1,2,3,4,5,6,7,8,i

22、0xFC,0xFD,0xFD,0xFD,0xFD,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF,;/ 音階頻率表低八位code unsigned char FREQL=0x42,0xC1,0x17,0xB6,0xD0,0xD1,0xB6,0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B,0x8F, 1,2,3,4,5,6,7,8,i0xEE,0x44, 0x6B,0xB4,0xF4,0x2D,0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16,;void delayyy(unsigned chart)unsigned ch

23、ar t1;unsigned long t2;for(t1=0;t1<t;t1+)for(t2=0;t2<8000;t2+);TR0=0;void t0int() interrupt 1TR0=0;speaker=!speaker;TH0=timer0h;TL0=timer0l;TR0=1;void song()TH0=timer0h;TL0=timer0l;TR0=1;delayyy(time);void delay(unsigned char ms)unsigned char i;while(ms-)for(i = 0; i< 250; i+)_nop_();_nop_(

24、);_nop_();_nop_();bit lcd_bz()bit result;rs = 0;rw = 1;ep = 1;_nop_();_nop_();_nop_();_nop_();result = (bit)(P0 & 0x80);ep = 0;return result;void lcd_wcmd(unsigned char cmd)while(lcd_bz();判斷 LCDb!否忙碌rs = 0;rw = 0;ep = 0;_nop_();_nop_();P0 = cmd;_nop_();_nop_();ep = 1;_nop_();_nop_();ep = 0;void

25、lcd_pos(unsigned char pos)lcd_wcmd(pos | 0x80);void lcd_wdat(unsigned char dat)while(lcd_bz();判斷 LCDb!否忙碌rs = 1;rw = 0;ep = 0;P0 = dat;_nop_();_nop_();ep = 1;_nop_();_nop_();ep = 0;void lcd_wshuzi(void)lcd_pos(0x47);lcd_wdat(dis3fensw);lcd_pos(0x48);lcd_wdat(dis3fengw);lcd_pos(0x4A);lcd_wdat(dis3mia

26、osw);lcd_pos(0x4B);lcd_wdat(dis3miaogw);void lcd_init()/LCD 初始化lcd_wcmd(0x38);delay(1);lcd_wcmd(0x0c);delay(1);lcd_wcmd(0x06);delay(1);lcd_wcmd(0x01);delay(1);void keyscan(void)while(flag)if(k1=0)delay(10);if(k1=0)fensw+;while(!k1);if(fensw=10) fensw=0;if(k2=0)delay(10);if(k2=0)fengw+;while(!k2);if(fengw=10) fengw=0;if(k3=0)delay(10);if(k3=0)miaosw+;while(!k3);if(miaosw=10)miaosw=0;if(k4=0)delay(10);if(k4=0)miaogw+;while(!k4);if(miaogw=10)miaogw=0;if(k5=0)flag=0;lcd_wshuzi();void delayls(void)unsigned char

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論