單片機(jī)課程設(shè)計(jì)-模擬電子琴發(fā)聲控制系統(tǒng)_第1頁
單片機(jī)課程設(shè)計(jì)-模擬電子琴發(fā)聲控制系統(tǒng)_第2頁
單片機(jī)課程設(shè)計(jì)-模擬電子琴發(fā)聲控制系統(tǒng)_第3頁
單片機(jī)課程設(shè)計(jì)-模擬電子琴發(fā)聲控制系統(tǒng)_第4頁
單片機(jī)課程設(shè)計(jì)-模擬電子琴發(fā)聲控制系統(tǒng)_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《單片機(jī)應(yīng)用與仿真訓(xùn)練》設(shè)計(jì)報(bào)告模擬電子琴發(fā)聲控制系統(tǒng)goodbye》并通過一個(gè)獨(dú)立鍵盤 4 4 4 5 5 5 5 6 7 7 9 9 4時(shí)主要有兩種方式,即軟件延時(shí)和使用定時(shí)/計(jì)數(shù)器延時(shí)。其中軟件延時(shí)不是很精確,而電子琴電路由于每個(gè)音符的頻率值要求比較嚴(yán)格,因此我們選用定時(shí)/5軟件和硬件的匹配以及硬件電路焊接時(shí)的排版問題,否則建會(huì)帶來不必要的焊接麻煩,在編程序時(shí)要注意仿真與實(shí)際電路中可能的不符。在此基礎(chǔ)上,的組合就是識(shí)別這個(gè)按鍵的編碼。矩陣的行線和序的任務(wù)是:確定有無鍵按下,判斷哪一個(gè)鍵按逐行動(dòng)態(tài)接地,另一個(gè)并行口輸入按鍵狀態(tài),由成鍵編碼而識(shí)別按鍵,通過軟件查表,查出該鍵序檢測(cè)到有鍵按下時(shí),將查表使按鍵值與預(yù)存數(shù)67(2)防串鍵:防串鍵是為了解決多個(gè)鍵同時(shí)按下或者前一按鍵沒有釋放又8-P0.7作輸出線。93.2音樂設(shè)計(jì)N=fi÷2÷frfr是想要產(chǎn)生的頻率。頻率(HZ)簡(jiǎn)譜碼(T值)3306402134964103370641853926426041564331440644004666446349464524我們要為這個(gè)音符建立一個(gè)表格,單片機(jī)通過查表的方式來獲得相應(yīng)的數(shù)250ms62ms94msNY3.3按鍵設(shè)計(jì)對(duì)于不同的曲調(diào)我們也可以用單片機(jī)的另外NYScancode=0xfe,掃描碼N逐行掃描判斷(scancode&0x10)!=0逐行掃描判斷Yscancode=(scancode<<1)|0x0scancode=(scancode<<1)|0x0N(P0&0xf0)!=0xf0Y讀取鍵值tmpcode=(P0&0xf0)|0x0f讀取鍵值return((~scancode)+(~tmpcode));返回特征字節(jié)碼,為1的位即對(duì)返回鍵值返回鍵值分別顯示高中低音狀態(tài)和音樂播放器及電子琴的模擬切換狀態(tài)。數(shù)碼管由NY高位顯示高中低音低位顯示音符更讓我知道了團(tuán)隊(duì)的力量是巨大的。在實(shí)際制作時(shí),我們將程序燒入芯片,調(diào)試成功后,可任意彈奏自己想要的旋律。本設(shè)計(jì)通過制作電子琴,將幾個(gè)模塊很好蜂鳴器對(duì)應(yīng)參值沒有直接置1(置1關(guān)蜂鳴器,由電路連接方式?jīng)Q定)??傊@是一次動(dòng)手能力的鍛煉,也是一次單片機(jī)知識(shí)的再回顧,還是對(duì){}{{}}{{{}}}{{m=m%2;{m+=1;}{m+=1;}}}/*MUSINSTRU頭文件*/#ifndef_MUSINSTRU_H#define_MUSINSTRU_H#ifndef__SOUNDPLAY_H_REVISION_FIRST__#define__SOUNDPLAY_H_REVISION_FIRST__#defineSYSTEM_OSC11059200//定義晶振頻率12000000HZ#defineSOUND_SPACE4/5//定義普通音符演奏的長(zhǎng)度分率,//每4分音符間隔ucharSound_Temp_TH0,Sound_Temp_TL0;ucharSound_Temp_TH1,Sound_Temp_TL1;{BeepIO=0;Sound_Temp_TH1=(65535-(1/1200)*SYSTEM_OSC)/256;//計(jì)算TL1應(yīng)裝入的初值Sound_Temp_TL1=(65535-(1/1200)*SYSTEM_OSC)%256;//計(jì)算TH1應(yīng)裝入的初值TH1=Sound_Temp_TH1;TL1=Sound_Temp_TL1;TMOD|=0x11;ET0=1;ET1=0;TR0=0;TR1=0;EA=1;}{TH0=Sound_Temp_TH0;TL0=Sound_Temp_TL0;}{}{根據(jù)調(diào)號(hào)及升降八度來生成新的頻率表{EX0=1;{}}{}LDiv4=LDiv4-LDiv4*SOUND_SPACE;//普通音最長(zhǎng)間隔標(biāo)準(zhǔn)TR0=0;TR1=1;{SL=Tone%10;//計(jì)算出音符SM=Tone/10%10;//計(jì)算出高低音{Temp_T=65536-(50000/CurrentFre)*10/(12Sound_Temp_TH0=Temp_T/256;Sound_Temp_TL0=Temp_T%256;TH0=Sound_Temp_TH0;TL0=Sound_Temp_TL0+12;//加12是對(duì)中斷延時(shí)的補(bǔ)償}XG=Length/10%10;LDiv=LDiv0/SLen;LDiv=LDiv+LDiv/2;LDiv1=LDiv-LDiv4;LDiv1=LDiv*SOUND_SPACE;LDiv1=LDiv;{TR0=1;{TH1=Sound_Temp_TH1;TL1=Sound_Temp_TL1;TF1=0;}}{TR0=0;BeepIO=0;{TH1=Sound_Temp_TH1;TL1=Sound_Temp_TL1;TF1=0;}}}BeepIO=1;EX0=0;}{TMOD=0x01;ET0=1;EA=1;{{{

溫馨提示

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

評(píng)論

0/150

提交評(píng)論