基于MCS51系列單片機實現(xiàn)鍵盤按鍵與數(shù)字動態(tài)顯示計數(shù)器課程設(shè)計.._第1頁
基于MCS51系列單片機實現(xiàn)鍵盤按鍵與數(shù)字動態(tài)顯示計數(shù)器課程設(shè)計.._第2頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、畢業(yè)設(shè)計論文摘要單片機自20世紀70年代問世以來,以其極高的性能價格比,受到人們的重視和關(guān)注,應(yīng)用很廣、發(fā)展很快。而51單片機是各單片機中最為典型和最有代表性的一種。本實驗是基于MCS51系列單片機所設(shè)計的,可以實現(xiàn)鍵盤按鍵與數(shù)字動態(tài)顯示并可以用音樂倒數(shù)的計數(shù)器。本設(shè)計基于單片機技術(shù)原理,以單片機芯片AT89C51作為核心控制器,通過硬件電路的制作以及軟件程序的編制,設(shè)計制作出一個計數(shù)器,包括以下功能:輸出時間,按下鍵就開始計時并將時間顯示在LCD1602顯示器上。當?shù)褂嫈?shù)為0時,蜂鳴器就發(fā)出音樂聲響等等。該計數(shù)器系統(tǒng)主要由計數(shù)器模塊、LCD顯示器模塊、蜂鳴器模塊、鍵盤模塊、復位模塊等部分組成

2、。關(guān)鍵詞:AT89C51、鍵盤、LCD1602顯示、蜂鳴器目錄摘要I1 項目概述和要求11.1 單片機基礎(chǔ)知識11.2 單片機的發(fā)展趨勢11.3 項目設(shè)計任務(wù)與要求32 系統(tǒng)設(shè)計42.1 框圖設(shè)計42.2 部分硬件方案論述42.3 電路原理圖42.4 元件清單52.4.1AT89C51芯片52.4.2 字符型LCD160262.4.3 按鍵控制模塊82.4.4 其它元件83 軟件設(shè)計93.1程序流程圖93.2 程序關(guān)鍵問題的部分代碼114 系統(tǒng)的仿真與調(diào)試164.1硬件調(diào)試164.2 軟件調(diào)試164.3 軟硬件調(diào)試165 總結(jié)17參考文獻18信息工程學院課程設(shè)計報告1項目概述和要求1.1單片機

3、基礎(chǔ)知識單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。概括的講,一塊芯片就成了一臺計算機。單片機具有體積小、功能強、應(yīng)用面廣等優(yōu)點,目前正以前所未見的速度取代著傳統(tǒng)電子線路構(gòu)成的經(jīng)典系統(tǒng),蠶食著傳統(tǒng)數(shù)字電路與模擬電路固有的領(lǐng)地。它的體積小、質(zhì)量輕、價格便宜、為學習、應(yīng)用和開發(fā)提供了便利條件。同時,學習使用單片機了解計算機原理與結(jié)構(gòu)的最佳選擇?,F(xiàn)在,這種單片機的使用領(lǐng)域已十分廣泛。彩電、冰箱、空調(diào)、錄像機、VCD、遙控器、游戲機、電飯煲等無處不見單片機的影子,單片機早已深深地融入我們每個人的生活之中。單片機能大大地提高這些產(chǎn)品的智能性,易用性及節(jié)能

4、性等主要性能指標,給我們的生活帶來舒適和方便的同時,在工農(nóng)業(yè)生產(chǎn)上也極大地提高了生產(chǎn)效率和產(chǎn)品質(zhì)量。單片機按用途大體上可分為兩類,一種是通用型單片機,另一種是專用型單片機。MCS-51單片機是美國INTEL公司于1980年推出的產(chǎn)品,與MCS-48單片機相比,它的結(jié)構(gòu)更先進,功能更強,在原來的基礎(chǔ)上增加了更多的電路單元和指令,指令數(shù)達111條,MCS-51單片機可以算是相當成功的產(chǎn)品,一直到現(xiàn)在,MCS-51系列或其兼容的單片機仍是應(yīng)用的主流產(chǎn)品,各高校及專業(yè)學校的培訓教材仍與MSC-51單片機作為代表進行理論基礎(chǔ)學習。MCS-51系列單片機主要包括8031、8051和8751等通用產(chǎn)品。1.

5、2 單片機的發(fā)展趨勢單片機現(xiàn)在可以說是百花齊放,百家爭鳴的時期,世界上各大芯片制造公司都推出了自己的單片機,從8位、16位到32位,數(shù)不勝數(shù),應(yīng)有盡有,有與主流C51系列兼容的,也有不兼容的,但它們各具特色,互成互補,為單片機的應(yīng)用提供了廣闊的天地??v觀單片機的發(fā)展過程,可以預示單片機的發(fā)展趨勢,大致有:一、微型單片化現(xiàn)在常規(guī)的單片機普遍都是將中央處理器(CPU)、隨機存取數(shù)據(jù)存儲(RAM)、只讀程序存儲器(ROM)、并行和串行通信接口,中斷系統(tǒng)、定時電路、時鐘電路集成在一塊單一的芯片上,增強型的單片機集成了如A/D轉(zhuǎn)換器、PMW(脈寬調(diào)制電路)、WDT(看門狗)、有些單片機將LCD(液晶)驅(qū)

6、動電路都集成在單一的芯片上,這樣單片機包含的單元電路就更多,功能就越強大。甚至單片機廠商還可以根據(jù)用戶的要求量身定做,制造出具有自己特色的單片機芯片。此外,現(xiàn)在的產(chǎn)品普遍要求體積小、重量輕,這就要求單片機除了功能強和功耗低外,還要求其體積要小。現(xiàn)在的許多單片機都具有多種封裝形式,其中SMD(表面封裝)越來越受歡迎,使得由單片機構(gòu)成的系統(tǒng)正朝微型化方向發(fā)展。二、低功耗CMOS化MCS-51系列的8031推出時的功耗達630mW,而現(xiàn)在的單片機普遍都在100mW左右,隨著對單片機功耗要求越來越低,現(xiàn)在的各個單片機制造商基本都采用了CMOS(互補金屬氧化物半導體工藝)。像80C51就采用了HMOS(

7、即高密度金屬氧化物半導體工藝)和CHMOS(互補高密度金屬氧化物半導體工藝)。CMOS雖然功耗低,但由于其物理特征決定其工作速度不夠高,而CHMOS則具備了高速和低功耗的特點,這些特征,更適合于要求低功耗像電池供電的應(yīng)用場合。所以這種工藝將是今后一段時期單片機發(fā)展的主要途徑。三、主流與多品種共存現(xiàn)在雖然單片機的品種繁多,各具特色,但仍以89C51為核心的單片機占主流,兼容其結(jié)構(gòu)和指令系統(tǒng)的有PHILIPS公司的產(chǎn)品,ATMEL公司的產(chǎn)品和中國臺灣的Winbond系列單片機。所以89C51占據(jù)了半壁江山。而Microchip公司的PIC精簡指令集合(RISC)也有著強勁的發(fā)展勢頭,中國臺灣的HO

8、LTEX公司近年的單片機產(chǎn)量與日俱增,與其底價質(zhì)優(yōu)的優(yōu)勢,占據(jù)一定的市場份額。此外還有MOTOROLA公司的產(chǎn)品,日本幾大公司的專用單片機。在一定的時期內(nèi),這種情形將得以延續(xù),將不存在某個單片機一統(tǒng)天下的壟斷局面,走的是依存互補、相輔相成、共同發(fā)展的道路。九十年代以后,單片機在結(jié)構(gòu)上采用雙CPU或內(nèi)部流水線,CPU位數(shù)有8位、16位、32位,時鐘頻率高達20MHZ,片內(nèi)帶有PWM輸出、監(jiān)視定時器WDT、可編程計數(shù)器陣列PCA、DMA傳輸、調(diào)制解調(diào)器等。芯片向高度集成化、低功耗方向的發(fā)展,使得單片機在大量數(shù)據(jù)的實時處理、高級通信系統(tǒng)、數(shù)字信號處理、復雜工業(yè)過程控制、高級機器人以及局域網(wǎng)等方面得到

9、大量應(yīng)用。這類單片機有NEC公司的MPD7800,MITSUBISHI公司的M337700,REVKWELL公司的R6500。1.3 項目設(shè)計任務(wù)與要求設(shè)計任務(wù):利用AT89C51單片機結(jié)合字符型LCD顯示器設(shè)計一個簡易的倒數(shù)計數(shù)器。做一小段時間倒計數(shù),當?shù)褂嫈?shù)為0時,則發(fā)出一段音樂聲響,通知倒計數(shù)終了,該做應(yīng)當做的事。 設(shè)計要求:1. 字符型LCD(16x2)顯示器,顯示格式為“TIME分分:秒秒”。2. 用4個按鍵操作來設(shè)置當前想要倒計數(shù)的時間。3. 一旦按下鍵則開始倒計數(shù),當計數(shù)為0時,發(fā)出一陣音樂聲。4. 程序執(zhí)行后工作指示燈LCD閃動,表示程序開始執(zhí)行,按下操作鍵K1K4動作如下:

10、K1-可調(diào)整倒計數(shù)的時間160分鐘。 K2-設(shè)置倒計數(shù)的時間為5分鐘,顯示“0500”。 K2-設(shè)置倒計數(shù)的時間為10分鐘,顯示“1000”。 K2-設(shè)置倒計數(shù)的時間為20分鐘,顯示“2000”。5. 復位后LCD的畫面應(yīng)能顯示倒計時的分鐘和秒數(shù),此時按K1鍵,則在LCD上顯示出設(shè)置畫面。此時,若: 按K2鍵-增加倒計數(shù)的時間1分鐘。 按K2鍵-減少倒計數(shù)的時間1分鐘。 按K4鍵-設(shè)置完成。 擴充功能: 增加時鐘及鬧鐘功能。 增加秒表計數(shù)功能。172系統(tǒng)設(shè)計2.1框圖設(shè)計框圖設(shè)計是為了能夠從整體上把握系統(tǒng)的各個大的模塊以及各個模塊之間的聯(lián)系。同時羅列出需要主要使用到的各個器件,以方面系統(tǒng)開發(fā)中

11、器件的選取通過框圖設(shè)計,讓設(shè)計者從整體上把握系統(tǒng)的開發(fā)。本系統(tǒng)設(shè)計的框圖如下圖2-1所示。圖2-1系統(tǒng)結(jié)構(gòu)框圖2.2部分硬件方案論述LCD1602顯示方式的方案比較。方案一:采用花樣顯示,花樣顯示是指LCD顯示某一屏字符時,采取從左到右或者是從右到左的整屏移動的顯示方式。在這種顯示方式下,給人的感覺就是程序是在執(zhí)行的,同時如果控制好了移動一屏的時間間隔的話,在整體視覺上可以達到很好的效果。方案二:采用靜態(tài)顯示,靜態(tài)顯示是指LCD顯示某一屏字符時,時鐘保持當前字符的顯示,不使用移屏顯示。便于控制,同時能夠滿足正常的顯示效果。由于在顯示中存在播放時間的動態(tài)變化,這樣的話,即使是不產(chǎn)生整屏移動,也能

12、給人動態(tài)感,也易于控制?;谝陨细鞣N特點,我選擇了方案二。2.3電路原理圖電路原理圖如圖2-2所示。牛ZJ-25Im祁BUI一圖2-2電路原理圖'就勺".tlKJ'Ldh.ij-a- IInt丁FS町 -K2-.rrnni-Q0KCCFACKE.id-rEi.LEMUnia,"tT&rfi-'2013-5-10MON00103pgjTwCL珂DIPDC3驅(qū)XTAI2mN呵曲OilFDMfciFD.&.AHHSTFI1T£AHPZEMFS.-IIMIiFZJafATJ:嚀脅HM.EP2.CACEHP2i'AtlPZ*A

13、HaZ/A-pP1UP30rfiX«Pl.lF3L-im<S!rilFjjsirraPi2FijiH3L*nPiJS旳曲識PIJP3Ti7C“THK劇;沖井:2.4元件清單2.4.1 AT89C51芯片AT89C51芯片圖如下圖2-3所示。55jiMlMilk7m-6.6.iiwA4UJ.d.a1bdid;gP*Tt:45JlUb-1i謔韻fill!AT8f»Sl«KWarfcjrflr|fcj!H«r昭腌汁昶533s332Jh>QT°MsN9C5:91W瓷盪pp11Ith3Pl,0Uq:Pl.lP,2(AD&PQ.C$3A

14、T8芯片a£?簡介:AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器(FPEROMFlashProgrammableandErasableReadOnlyMemory)的低電壓、高性能CM0S8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C

15、單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。主要特性:與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)振蕩器和時鐘電路。2.4.2 字符型LCD1602字符型lcd1602如下圖2-4所示。LCD1LMJ1BL<TEKT>'IRV?<TEXT>I一;V圖2-4lcd1602圖1602字符型LCD通常有14條引腳線或16條引腳線的

16、LCD,多出來的2條線是背光電源線。VCC(15腳)和地線GND(16腳),其控制原理與14腳的LCD完全一樣,各引腳符號及其功能表如下表2-1所示。表2-1LCD各引腳及其功能表引腳符號功能說明1VSS一般接地2VDD接電源(+5V)3V0液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。4RSRS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。5R/WR/W為讀寫信號線,高電平時進行讀操作,低電平(0)時進行寫操作。6EE(或EN)端為使能(enable)端,下降沿使能。7DB0底

17、4位二態(tài)、雙向數(shù)據(jù)總線0位(最低位)8DB1底4位二態(tài)、雙向數(shù)據(jù)總線1位9DB2底4位二態(tài)、雙向數(shù)據(jù)總線2位10DB3底4位二態(tài)、雙向數(shù)據(jù)總線3位11DB4咼4位二態(tài)、雙向數(shù)據(jù)總線4位12DB5高4位三態(tài)、雙向數(shù)據(jù)總線5位13DB6咼4位二態(tài)、雙向數(shù)據(jù)總線6位14DB7咼4位三態(tài)、雙向數(shù)據(jù)總線7位(最咼位)(也是busyflag)15BLA背光電源正極16BLK背光電源負極2.4.3按鍵控制模塊按鍵用于控制數(shù)碼顯示、LCD顯示、揚聲器等模塊的工作。通過掃描按鍵是否按下,來設(shè)定各模塊的工作情況,使各模塊可以在按鍵的控制下,有序地進行工作。設(shè)計中使用單個按鍵實現(xiàn)單個功能,屬于較為簡單的控制方式。在

18、多功能系統(tǒng)設(shè)計的試驗中我們使用四個按鍵分別與單片機的p1.4、p1.5、p1.6、p1.7相連。通過按下相應(yīng)的按鍵來處理相應(yīng)的程序。如下圖2-5所示。0卩丨.7S1亠卩1.圖2-5按鍵控制模塊圖2.4.4其它元件其它元件圖如下圖2-6所示。圖2-6其它元件圖3軟件設(shè)計3.1程序流程圖主程序開始初始化,然后掃描鍵盤、復位電路和計數(shù)器。當鍵盤按鍵有按下時,調(diào)整計數(shù)器值,LCD顯示新值。當復位鍵有按下時,計數(shù)器復位為初值,重新倒計數(shù)。當計數(shù)器值倒計為0時,蜂鳴器發(fā)出聲音,計數(shù)器停止倒計,程序結(jié)束。主程序流程圖、led顯示流程圖和按鍵流程圖分別如下圖3T、圖3-2和圖3-3所示。是是調(diào)整計數(shù)器值巳按鍵

19、是否有按下?蜂鳴器發(fā)聲LCD顯示計數(shù)值計數(shù)器停止倒計數(shù)結(jié)束圖3-1主程序流程圖開始是否有程序執(zhí)行是否有鍵按下否是否是否是復位鍵是否按下否是J是否有鍵按下led顯示相應(yīng)設(shè)置畫面led顯示倒計時的分鐘和秒數(shù)退出led顯示相應(yīng)時間Led閃動圖3-2lcd顯示流程圖圖3-3按鍵流程圖3.2 程序關(guān)鍵問題的部分代碼.LCD顯示代碼:#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint#defineDataPortP0#defineBusy0x80sbitRS=P3人4;

20、sbitRW=P3A6;sbitE=P0;voidDelay(void)uchari,j;for(i=255;i>0;i-)for(j=255;j>0;j-)_nop_();voidCheckBusy(void)DataPort=0xff;RS=0;RW=1;_nop_();E=1;_nop_();_nop_();while(DataPort&Busy)=Busy)E=0;E=1;E=0;voidWriteIR(ucharCMD,uintcheck)if(check)CheckBusy();_nop_();_nop_();RS=0;RW=0;_nop_();DataPort

21、=CMD;_nop_();E=1;_nop_();_nop_();E=0;voidWriteChar(shortXpos,charc)shorttemp=0x80;temp|=Xpos;WriteIR(temp,1);CheckBusy();_nop_();_nop_();RS=1;RW=0;_nop_();DataPort=c;_nop_();E=1;_nop_();_nop_();E=0;Swich(1)Cases1:time=1;time+;Cases2:time=5;ch=0500'Cases3:time=10;ch=1000'Cases4:time=20;ch=200

22、0'voidLCDReset(void)Swich(1)Cases2:time+;Cases3:time-;Cases4:break;voidmain(void)uinti;chartime;ucharch="20050510,mon,00:00"while(1)LCDReset();Delay();for(i=0;i<10;i+)WriteChar(i,chi);Delay();音樂播放如下(部分):Voidmusic_paly(unsignedchar*msc)Unsignedcharmusic_long;Unsignedchamusic_data=0;T

23、emp_TH1=0xff;Temp_TL1=0xea;TH1=temp_TH1;TL1=temp_TL1;TR1=1;While(*msc!=0x00&&N_Ring=1)Music_data=*msc&0x07;Music_long=*msc>>4;If(music_long!=0)Temp_TH1=music_freq_tabmusic_data*2;Tenp_TH1=music_freq_tabmusic_data*2=1;Music_delay(music_1_tabmusic_long&0x07);Msc+;TR1=0;PIN_MSC=1;信息工程學院課程設(shè)計報告PZJSfAHPS/AfE4系統(tǒng)的仿真與調(diào)試4.1硬件調(diào)試硬件調(diào)試分為靜態(tài)調(diào)試和動態(tài)調(diào)試,對于硬件調(diào)試而言,只要認真焊接,硬件一般不會出現(xiàn)什么問題的。靜態(tài)調(diào)試一般采用的工具是萬用表,它是在用戶系統(tǒng)未工作時的一種硬件檢測。動態(tài)調(diào)試是在用戶系統(tǒng)工作的情況下發(fā)現(xiàn)和排查錯誤的一種硬件檢測。調(diào)試步驟是:首先把電路分為若干模塊,調(diào)試過程中與該模塊無關(guān)的元件可以不加考慮,這樣可把故障限定

溫馨提示

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

評論

0/150

提交評論