單片機電子琴課程設(shè)計-- 基于單片機的音樂演奏器設(shè)計_第1頁
已閱讀1頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  《單片機原理及應(yīng)用》</p><p><b>  課程設(shè)計報告</b></p><p>  學(xué) 院: 水利與能源動力工程學(xué)院__</p><p>  班 級:_______ ___ </p><p>  學(xué) 號:_______ ______</p><p>

2、;  姓 名:_________ ____</p><p>  時 間:2014-1-6 ~ 2014-1-10</p><p><b>  目 錄</b></p><p><b>  任務(wù)書1</b></p><p>  第一章方案設(shè)計2</p><p&

3、gt;  第二章硬件系統(tǒng)設(shè)計4</p><p>  第三章軟件設(shè)計7</p><p>  第四章系統(tǒng)調(diào)試8</p><p><b>  小 結(jié)9</b></p><p>  附錄1:原理圖11</p><p>  附錄2:源程序12</p><p>&l

4、t;b>  任務(wù)書</b></p><p><b>  題 目:</b></p><p>  基于單片機的音樂演奏器設(shè)計</p><p><b>  設(shè)計要求:</b></p><p> ?。?)利用實驗箱上KEY1~KEY7作為電子琴按鍵,通過軟件編程,輸出相應(yīng)的音調(diào)。&l

5、t;/p><p> ?。?)輸出發(fā)聲采用實驗箱上的蜂鳴器。</p><p>  本次課程設(shè)計為期一周。</p><p><b>  方案設(shè)計</b></p><p>  本系統(tǒng)是以51系列單片機AT89C51為主控制器,附有揚聲器組成。系統(tǒng)完成播放相應(yīng)音符基本功能。本系統(tǒng)運行穩(wěn)定,其優(yōu)點是硬件電路簡單,軟件功能完善,控制系統(tǒng)

6、可靠,性價比較高等,具有一定的實用和參考價值。</p><p>  1.利用定時器,可以發(fā)出不同頻率的脈沖,不同頻率的脈沖經(jīng)喇叭驅(qū)動電路放大濾波后,就會發(fā)出不同的音調(diào)。</p><p>  2.定時器按所設(shè)置的定時參數(shù)產(chǎn)生中斷,這一次中斷發(fā)出脈沖低電平,下一次反轉(zhuǎn)發(fā)出脈沖高電平。由于定時參數(shù)不同,就發(fā)出了不同頻率的脈沖。本實驗中當(dāng)有鍵按下,會發(fā)出連續(xù)脈沖,直到按鍵松開,才停止發(fā)音。發(fā)完后繼

7、續(xù)檢測鍵盤,如果按鍵還在按下狀態(tài),繼續(xù)發(fā)音。</p><p><b>  各音階標(biāo)稱頻率值:</b></p><p>  利用實驗儀上提供的鍵盤,使數(shù)字鍵1、2、3、4、5、6、7、8作為電子琴按鍵,按下即發(fā)出相應(yīng)的音調(diào)。用P3.0口發(fā)出音頻脈沖,驅(qū)動喇叭。</p><p>  1.單片機最小應(yīng)用系統(tǒng)的P1口接查詢式鍵盤,單片機P2.0口接音頻

8、驅(qū)動電路。</p><p>  2.用串行數(shù)據(jù)通信線連接計算機與仿真器。</p><p>  3.打開Keil uVision2仿真軟件,首先建立本實驗的項目文件,接著添加“電子琴.ASM”源程序,進行編譯,直到編譯無誤。</p><p>  4.進行軟件設(shè)置,選擇硬件仿真。</p><p>  5.打開模塊電源和總電源,點擊開始調(diào)試按鈕,點

9、擊RUN按鈕運行程序。按查詢式鍵盤的1~8鍵,揚聲器發(fā)出高低不同的聲音。</p><p><b>  硬件系統(tǒng)設(shè)計</b></p><p>  原理圖的確定。(原理圖見附錄1)</p><p><b>  CPU的選型</b></p><p>  CPU為AT89C51單片機</p>

10、<p>  AT89C51是一種帶4K字節(jié)FLASH存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出

11、管腳相兼容。由于將多功能8位CPU和閃速存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。</p><p><b>  蜂鳴器</b></p><p>  蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計算機、打印機、復(fù)印

12、機、報警器、電子玩具、汽車電子設(shè)備、電話機、定時器等電子產(chǎn)品中作發(fā)聲器件。</p><p>  單片機驅(qū)動他激蜂鳴器的方式有兩種:一種是PWM 輸出口直接驅(qū)動,另一種是利用I/O 定時翻轉(zhuǎn)電平產(chǎn)生驅(qū)動波形對蜂鳴器進行驅(qū)動。</p><p>  PWM 輸出口直接驅(qū)動是利用PWM 輸出口本身可以輸出一定的方波來直接驅(qū)動蜂鳴器。在單片機的軟件設(shè)置中有幾個系統(tǒng)寄存器是用來設(shè)置PWM 口的輸出的,

13、可以設(shè)置占空比、周期等等,通過設(shè)置這些寄存器產(chǎn)生符合蜂鳴器要求的頻率的波形之后,只要打開PWM 輸出,PWM 輸出口就能輸出該頻率的方波,這個時候利用這個波形就可以驅(qū)動蜂鳴器了。比如頻率為2000Hz 的蜂鳴器的驅(qū)動,可以知道周期為500μs,這樣只需要把PWM 的周期設(shè)置為500μs,占空比電平設(shè)置為250μs,就能產(chǎn)生一個頻率為2000Hz 的方波,通過這個方波再利用三極管就可以去驅(qū)動這個蜂鳴器了。</p><p

14、>  而利用I/O 定時翻轉(zhuǎn)電平來產(chǎn)生驅(qū)動波形的方式會比較麻煩一點,必須利用定時器來做定時,通過定時翻轉(zhuǎn)電平產(chǎn)生符合蜂鳴器要求的頻率的波形,這個波形就可以用來驅(qū)動蜂鳴器了。比如為2500Hz 的蜂鳴器的驅(qū)動,可以知道周期為400μs,這樣只需要驅(qū)動蜂鳴器的I/O 口每200μs 翻轉(zhuǎn)一次電平就可以產(chǎn)生一個頻率為2500Hz,占空比為1/2duty 的方波,再通過三極管放大就可以驅(qū)動這個蜂鳴器了。</p><p&

15、gt;<b>  軟件設(shè)計</b></p><p><b>  系統(tǒng)調(diào)試</b></p><p>  調(diào)試過程中出現(xiàn)的問題</p><p><b>  蜂鳴器音調(diào)錯誤</b></p><p><b>  蜂鳴器聲音斷斷續(xù)續(xù)</b></p>&

16、lt;p><b>  改進的方案</b></p><p>  對音調(diào)頻率進行調(diào)整,看轉(zhuǎn)換是否有錯</p><p>  換掉一些接觸不良的導(dǎo)線</p><p><b>  小 結(jié)</b></p><p>  單片機是我所學(xué)專業(yè)的主要課程之一,因此我認為單片機課程設(shè)計是十分必要而且十</p

17、><p>  分重要的。盡管剛剛拿到課程設(shè)計題目時有點迷惘,不知道如何著手,但通過上網(wǎng)和圖書館查閱相關(guān)資料,自己認真鉆研以及虛心詢問同學(xué),終于解決了一個又一個的困難和障礙,成功完成了任務(wù)。 </p><p>  通過本次的單片機課程設(shè)計,不僅大大地豐富了我的理論知識,而且在實踐過程中更令我學(xué)會了堅持、耐心和努力。此次單片機課程設(shè)計需要運用到許多之前所學(xué)過的知識,令我認識到自己以前學(xué)習(xí)

18、的一些不足之處,例如對以前所學(xué)知識的理解不夠深刻,掌握得不夠牢固,運用不夠靈活。這讓我懂得了認真學(xué)習(xí)的重要性,以及要孜孜不倦地鉆研所學(xué)過的知識,做得融會貫通,不能一覽而過,不求甚解。在邊學(xué)習(xí)邊動手的過程中,我對電子時鐘的構(gòu)造以及原理有了進一步的了解,同時也加深和鞏固了我對單片機匯編語言的認識。除此之外,由于是第一次做單片機,因此在此次課程設(shè)計的過程中,無論是電路繪制還是匯編語言編寫都難免遇到了不少困難和障礙,例如匯編語言編寫出錯、電路元

19、件無從入手等。在面對困難和障礙時,我慶幸自己沒有退縮和逃避,而是通過各種方法,迎難而上,以堅持、耐心和努力勇敢無畏地面對困難,克服困難,解決困難。讓我發(fā)現(xiàn)問題、分析問題、解決問題以及動手實踐的能力都有了很大的提高,并了解到理論知識與實踐相結(jié)合的重要意義。 </p><p>  從這次的課程設(shè)計中,我們真真正正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實際,把我們所學(xué)的理論知識用到實際當(dāng)中,學(xué)習(xí)單機片機更是如此

20、,程序只有在經(jīng)常的練習(xí)的過程中才能提高。本次課程設(shè)計盡管時間不長,但從中所獲,將令我受益終生。</p><p><b>  附錄1:原理圖</b></p><p><b>  附錄2:源程序</b></p><p>  BUZZ EQU P1.0</p><p>  ORG

21、0000H</p><p>  LJMP MAIN</p><p>  ORG 000BH</p><p>  LJMP INT_T0</p><p>  ORG 0100H</p><p><b>  MAIN: </b></p><p

22、>  MOV SP,#60H ;初始化堆棧指針</p><p>  MOV 30H,#00 ;定時器初值清零</p><p>  MOV 31H,#00</p><p>  MOV P1,#0FFH ;設(shè)置P1口為輸入模式</p><p>  MOV

23、 TMOD,#01H ;設(shè)置定時器0為工作模式1</p><p>  SETB ET0 ;開定時器0中斷</p><p>  SETB EA ;開總中斷</p><p>  CLR TR0 ;關(guān)閉定時器0 </p><p><b&g

24、t;  START: </b></p><p>  MOV R0,P2 </p><p>  CJNE R0,#0FFH,KEY1 ;鍵盤掃描</p><p>  CLR TR0</p><p>  SJMP START</p><p><b>

25、  KEY1:</b></p><p>  CJNE R0,#0FEH,KEY2 ;K1鍵按下</p><p>  MOV 30H,#0FBH ;設(shè)置音階1</p><p>  MOV 31H,#0E9H</p><p>  LJMP SET_TIMER</p><

26、;p><b>  KEY2: </b></p><p>  CJNE R0,#0FDH,KEY3 ;K2鍵按下</p><p>  MOV 30H,#0FCH ;設(shè)置音階2</p><p>  MOV 31H,#5CH</p><p>  LJMP SET_TIM

27、ER</p><p><b>  KEY3:</b></p><p>  CJNE R0,#0FBH,KEY4 ;K3鍵按下</p><p>  MOV 30H,#0FCH ;設(shè)置音階3</p><p>  MOV 31H,#0C1H</p><p>  L

28、JMP SET_TIMER</p><p><b>  KEY4:</b></p><p>  CJNE R0,#0F7H,KEY5 ;K4鍵按下</p><p>  MOV 30H,#0FCH ;設(shè)置音階4</p><p>  MOV 31H,#0EFH</p>

29、;<p>  LJMP SET_TIMER</p><p><b>  KEY5:</b></p><p>  CJNE R0,#0EFH,KEY6 ;K5鍵按下</p><p>  MOV 30H,#0FDH ;設(shè)置音階5</p><p>  MOV 31H

30、,#045H</p><p>  LJMP SET_TIMER</p><p><b>  KEY6:</b></p><p>  CJNE R0,#0DFH,KEY7 ;K6鍵按下</p><p>  MOV 30H,#0FDH ;設(shè)置音階6</p><p>

31、;  MOV 31H,#92H</p><p>  LJMP SET_TIMER</p><p><b>  KEY7:</b></p><p>  CJNE R0,#0BFH,KEY8 ;K7鍵按下</p><p>  MOV 30H,#0FDH ;設(shè)置音階7</p

32、><p>  MOV 31H,#0D6H</p><p>  LJMP SET_TIMER</p><p><b>  KEY8: </b></p><p>  CJNE R0,#7FH,NOKEY ;K8按下</p><p>  MOV 30H,#0FDH

33、 ;設(shè)置音階8</p><p>  MOV 31H,#0FBH</p><p>  SET_TIMER:</p><p>  SETB TR0 ;發(fā)聲</p><p>  SJMP START</p><p><b>  NOKEY:</b>&

34、lt;/p><p>  CLR TR0 ;無鍵按下</p><p>  SJMP START</p><p>  INT_T0: ;T0中斷服務(wù)程序</p><p>  MOV TH0,30H ;定時器賦初值</p><

溫馨提示

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

評論

0/150

提交評論