




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
年4月19日單片機課程設(shè)計報告文檔僅供參考淮陰師范學(xué)院物理與電子電氣工程學(xué)院課程設(shè)計報告學(xué)生姓名學(xué)號班級專業(yè)電子信息科學(xué)與技術(shù)題目基于AT89S52單片機多音階電子琴的設(shè)計指導(dǎo)教師年11月1任務(wù)和設(shè)計要求單片微型計算機是大規(guī)模集成電路技術(shù)發(fā)展的產(chǎn)物,屬第四代電子計算機,它具有高性能、高速度、體積小、價格低廉、穩(wěn)定可靠、應(yīng)用廣泛的特點。它的應(yīng)用必定導(dǎo)致傳統(tǒng)的控制技術(shù)從根本上發(fā)生變革。因此,單片機的開發(fā)應(yīng)用已成為高科技和工程領(lǐng)域的一項重大課題。
電子琴是現(xiàn)代電子科技與音樂結(jié)合的產(chǎn)物,是一種新型的鍵盤樂器。它在現(xiàn)代音樂扮演著重要的角色,單片機具有強大的控制功能和靈活的編程實現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生活中,成為不可替代的一部分。本文的主要內(nèi)容是用AT89S51單片機為核心控制元件,設(shè)計一個電子琴。以單片機作為主控核心,與鍵盤、揚聲器等模塊組成核心主控制模塊,在主控模塊上設(shè)有16個按鍵和揚聲器。
本文主要對使用單片機設(shè)計簡易電子琴進行了分析,并介紹了基于單片機電子琴統(tǒng)硬件組成。利用單片機產(chǎn)生不同頻率來獲得我們要求的音階,最終可隨意彈奏想要表示的音樂。而且本文分別從原理圖,主要芯片,各模塊原理及各模塊的程序的調(diào)試來詳細闡述。
一首音樂是許多不同的音階組成的,而每個音階對應(yīng)著不同的頻率,這樣我們就能夠利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對于單片機來產(chǎn)生不同的頻率非常方便,我們能夠利用單片機的定時/計數(shù)器T0來產(chǎn)生這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應(yīng)頻率關(guān)系弄正確即可。2系統(tǒng)設(shè)計2.2.1播放模塊播放模塊是由喇叭構(gòu)成,它幾乎不存在噪聲,音響效果較好,而且由于所需驅(qū)動功率較小,且價格低廉,因此,被廣泛應(yīng)用。2.2.2按鍵控制模塊電子琴設(shè)有8個按鍵,其中7個作為音符輸入,另外一個作為模式轉(zhuǎn)換按鍵,實現(xiàn)用戶存放的自動播放歌曲。7個按鍵分別代表7個音符,包括中音段的全部音符,經(jīng)過軟硬件設(shè)計,模式轉(zhuǎn)換按鍵觸發(fā)外部中斷,中斷使程序跳轉(zhuǎn),實現(xiàn)模式轉(zhuǎn)換,啟動電子琴。然后經(jīng)過查詢電子琴所按下的按鍵,讀取電子琴輸入狀態(tài),跳轉(zhuǎn)到對應(yīng)的程序入口,實現(xiàn)自編歌曲的。2.3總體硬件組成框圖該設(shè)計方案是經(jīng)過按鍵隨意按下所要表示的音符,作為電平送給主體電路,中央處理器經(jīng)過識別,解碼輸出音符,在揚聲器中發(fā)出有效的聲音。經(jīng)過這樣能夠不斷的彈奏我們想要的音符或者是音調(diào),電路由復(fù)位電路,指示燈電路,和功能按鍵電路組成,經(jīng)過功能鍵能夠選擇播放音樂或者彈奏音節(jié),硬件主要有下面幾個部分組成。系統(tǒng)框圖功能選擇功能選擇(彈奏/播放)喇叭發(fā)聲音頻放大AT89S52單片機鍵盤輸入喇叭發(fā)聲音頻放大AT89S52單片機鍵盤輸入3硬件設(shè)計為了使電子琴的控制系統(tǒng)更加的方便、靈活以及穩(wěn)定性,我們對系統(tǒng)硬件進行了簡約和優(yōu)化,使硬件更加的實用,更加的人性化,硬件電路包括中心控制模塊、播放模塊、按鍵控制模塊、復(fù)位按鍵模塊四大類3.1電路原理圖3.2主要單元電路3.2.1中心控制模塊的硬件設(shè)計這次設(shè)計的中心控制模塊是采用AT89S52單片機來控制整個系統(tǒng)。其中P2口作為輸入口,P1口為信號輸出口,P1.0連接音響驅(qū)動電路。3.2.2聲音播放模塊的硬件設(shè)計如下圖所示,為聲音的播放模塊,它接到P1.0口上,當(dāng)有按鍵按下時,它經(jīng)過AT89S52中心控制芯片的識別后發(fā)出相應(yīng)的音符。3.3元件清單 AT89C52單片機一個,按鍵16個,30pF電容兩個,喇叭一個,LM386音頻放大器一個,電阻,電容若干。4軟件設(shè)計4.1程序流程圖T0中斷入口T0中斷入口4.2主要功能程序設(shè)計4.1音樂產(chǎn)生的原理一首音樂是許多不同的音階組成的,而每個音階對應(yīng)著不同的頻率,這樣我們就能夠利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對于單片機來產(chǎn)生不同的頻率非常方便,我們能夠利用單片機的定時/計數(shù)器T0來產(chǎn)生這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應(yīng)頻率關(guān)系正確即可。若要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(1/頻率),再將此周期除以2,即為半周期的時間。利用定時器計時半周期時間,每當(dāng)計時終止后就將P1.0反相,然后重復(fù)計時再反相。就可在P1.0引腳上得到此頻率的脈沖。
利用AT89C51的內(nèi)部定時器使其工作計數(shù)器模式(MODE1)下,改變計數(shù)值TH0及TL0以產(chǎn)生不同頻率的方法產(chǎn)生不同音階,例如,頻率為523Hz,其周期T=1/523=1912μs,因此只要令計數(shù)器計時956μs/1μs=956,每計數(shù)956次時將I/O反相,就可得到中音DO(523Hz)。
計數(shù)脈沖值與頻率的關(guān)系式(如式2-1所示)是:
N=fi÷2÷fr
2-1式中,N是計數(shù)值;fi是機器頻率(晶體振蕩器為12MHz時,其頻率為1MHz);fr是想要產(chǎn)生的頻率。其計數(shù)初值T的求法如下:
T=65536-N=65536-fi÷2÷fr
例如:設(shè)K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的計數(shù)值。
T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr
低音DO的T=65536-500000/262=63627
中音DO的T=65536-500000/523=64580
高音DO的T=65536-500000/1046=65059單片機12MHZ晶振,高中低音符與計數(shù)T0相關(guān)的計數(shù)值如表2-2所示表2-2音符頻率表Table2-2notesthefrequencytable音符頻率(HZ)簡譜碼(T值)音符頻率(HZ)簡譜碼(T值)低1DO26263628#4FA#74064860#1DO#27763731中5SO78464898低2RE29463835#5SO#83164934#2RE#31163928中6LA88064968低3M33064021#693264994低4FA34964103中7SI98865030#4FA#37064185高1DO104665058低5SO39264260#1DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565134#646664463高3M131865157低7SI49464524高4FA139765178中1DO52364580#4FA#148065198#1DO#55464633高5SO156865217中2RE58764684#5SO#166165235#2RE#62264732高6LA176065252中3M65964777#6186565268中4FA69864820高7SI196765283我們要為這個音符建立一個表格,單片機經(jīng)過查表的方式來獲得相應(yīng)的數(shù)據(jù)
低音0-19之間,中音在20-39之間,高音在40-59之間
TABLE:DW0,63628,63835,64021,64103,64260,64400,64524,0,0
DW0,63731,63928,0,64185,64331,64463,0,0,0
DW0,64580,64684,64777,64820,64898,64968,65030,0,0
DW0,64633,64732,0,64860,64934,64994,0,0,0
DW0,65058,65110,65157,65178,65217,65252,65283,0,0
DW0,65085,65134,0,65198,65235,65268,0,0,0
DW0
音樂的音拍,一個節(jié)拍為單位(C調(diào))(如表2-3所示)表2-3曲調(diào)值表Table2-3Tunethevalueofthetable曲調(diào)值DELAY曲調(diào)值DELAY調(diào)4/4125ms調(diào)4/462ms調(diào)3/4187ms調(diào)3/494ms調(diào)2/4250ms調(diào)2/4125ms
對于不同的曲調(diào)我們也能夠用單片機的另外一個定時/計數(shù)器來完成。琴鍵處理程序,根據(jù)檢測到得按鍵值,查詢音律表,給計時器賦值,發(fā)出相應(yīng)頻率的聲音。對音調(diào)的控制:根據(jù)不同的按鍵,對定時器T1送入不同的初值,調(diào)節(jié)T1的溢出時間,這樣就能夠輸出不同音調(diào)頻率的方波。不同音調(diào)下各個音階的定時器。在這個程序中用到了兩個定時/計數(shù)器來完成的。其中T0用來產(chǎn)生音符頻率,T1用來產(chǎn)生音拍。4.3程序清單KEYBUFEQU30H STHOEQU31H STLOEQU32H TEMPEQU33H ORG00H LJMPSTART ORG0BH LJMPINT_T0START: MOVTMOD,#01H SETBET0 SETBEAWAIT: MOVP3,#0FFH CLRP3.7 MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY1 LCALLDELAY10MS MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY1 MOVA,P3 ANLA,#0FH CJNEA,#0EH,NK1 MOVKEYBUF,#0 LJMPDK1NK1: CJNEA,#0DH,NK2 MOVKEYBUF,#1 LJMPDK1NK2: CJNEA,#0BH,NK3 MOVKEYBUF,#2 LJMPDK1NK3: CJNEA,#07H,NK4 MOVKEYBUF,#3 LJMPDK1NK4: NOPDK1: MOVA,KEYBUF MOVB,#2 MULAB MOVTEMP,A MOVDPTR,#TABLE MOVCA,@A+DPTR MOVSTHO,A MOVTH0,A INCTEMP MOVA,TEMP MOVCA,@A+DPTR MOVSTLO,A MOVTL0,A SETBTR0DK1A: MOVA,P3 ANLA,#0FH XRLA,#0FH JNZDK1A CLRTR0NOKEY1: MOVP3,#0FFH CLRP3.6 MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY2 Lcall DELAY10MS MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY2 MOVA,P3 ANLA,#0FH CJNEA,#0EH,NK5 MOVKEYBUF,#4 LJMPDK2NK5: CJNEA,#0DH,NK6 MOVKEYBUF,#5 LJMPDK2NK6: CJNEA,#0BH,NK7 MOVKEYBUF,#6 LJMPDK2NK7: CJNEA,#07H,NK8 MOVKEYBUF,#7 LJMPDK2NK8: NOP DK2: MOVA,KEYBUF MOVB,#2 MULAB MOVTEMP,A MOVDPTR,#TABLE MOVCA,@A+DPTR MOVSTHO,A MOVTH0,A INCTEMP MOVA,TEMP MOVCA,@A+DPTR MOVSTLO,A MOVTL0,A SETBTR0DK2A:MOVA,P3 ANLA,#0FH XRLA,#0FH JNZDK2A CLRTR0NOKEY2: MOVP3,#0FFH CLRP3.5 MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY3 Lcall DELAY10MS MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY3 MOVA,P3 ANLA,#0FH CJNEA,#0EH,NK9 MOVKEYBUF,#8 LJMPDK3NK9: CJNEA,#0DH,NK10 MOVKEYBUF,#9 LJMPDK3NK10: CJNEA,#0BH,NK11 MOVKEYBUF,#10 LJMPDK3NK11: CJNEA,#07H,NK12 MOVKEYBUF,#11 LJMPDK3NK12: NOPDK3: MOVA,KEYBUF MOVB,#2 MULAB MOVTEMP,A MOVDPTR,#TABLE MOVCA,@A+DPTR MOVSTHO,A MOVTH0,A INCTEMP MOVA,TEMP MOVCA,@A+DPTR MOVSTLO,A MOVTL0,A SETBTR0DK3A: MOVA,P3 ANLA,#0FH XRLA,#0FH JNZDK3A CLRTR0NOKEY3: MOVP3,#0FFH CLRP3.4 MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY4 Lcall DELAY10MS MOVA,P3 ANLA,#0FH XRLA,#0FH JZNOKEY4 MOVA,P3 ANLA,#0FH CJNEA,#0EH,NK13 MOVKEYBUF,#12 LJMPDK4NK13: CJNEA,#0DH,NK14 MOVKEYBUF,#13 LJMPDK4NK14: CJNEA,#0BH,NK15 MOVKEYBUF,#14 LJMPDK4NK15: CJNEA,#07H,NK16 MOVKEYBUF,#15 LJMPDK4NK16: NOPDK4: MOVA,KEYBUF MOVB,#2 MULAB MOVTEMP,A MOVDPTR,#TABLE MOVCA,@A+DPTR MOVSTHO,A MOVTH0,A INCTEMP MOVA,TEMP MOVCA,@A
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全生產(chǎn)工作要點概述
- 智能財稅綜合實訓(xùn) 下篇 課件 智能財稅基礎(chǔ)業(yè)務(wù)5 社會共享中級外包實務(wù)
- 2025年黨政領(lǐng)導(dǎo)干部黨章黨規(guī)黨紀(jì)黨史知識培訓(xùn)考試題庫及答案(共230題)
- 2025年度商標(biāo)權(quán)轉(zhuǎn)讓款代付服務(wù)協(xié)議
- 上市公司資金管理存款居間
- 實驗動物房裝修合同解除
- 無縫物流操作指南文件匯編
- 電子商務(wù)平臺客戶服務(wù)提升預(yù)案
- 塔式起重機安裝專項施工方案內(nèi)容
- 有機蔬菜種植要求
- 文件定期審核記錄
- 社會穩(wěn)定風(fēng)險評估報告-穩(wěn)評報告
- 高鐵動車受眾人群分析課件
- 布藝溫馨自制掛袋
- 裝配式電纜溝施工方案
- 大腦發(fā)育和親子教育關(guān)系
- 2023年廣州市青年教師初中數(shù)學(xué)解題比賽決賽試卷
- 全國職工職業(yè)技能競賽(焊工)專業(yè)技能競賽考試題庫(含答案)
- SM過程質(zhì)量報告
- 城鄉(xiāng)規(guī)劃管理與法規(guī)智慧樹知到答案章節(jié)測試2023年同濟大學(xué)
- 電子商務(wù)論文范文目錄
評論
0/150
提交評論