freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的音樂播放器設(shè)計(jì)(doc畢業(yè)設(shè)計(jì)論文)(編輯修改稿)

2025-07-24 20:49 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 的計(jì)數(shù)值。 T=65536N=65536Fi/2/Fr=655361000000/2/Fr=65536500000/Fr 低音DO的T=65536500000/262=63628 中音DO的T=65536500000/523=64580 高音DO的T=65536500000/1047=650594) 每個(gè)音符使用1個(gè)字節(jié),字節(jié)高4位代表音符高低,低4位代表音符 節(jié)拍。假設(shè)1/4節(jié)拍為1DELAY,則1拍應(yīng)為4DELAY,以此類推。只要求得1/4拍的DELAY時(shí)間,其余節(jié)拍則為它的倍數(shù),本設(shè)計(jì)取4/4調(diào)值,延時(shí)時(shí)間為125ms,其中節(jié)拍碼與實(shí)際節(jié)拍對(duì)照表411。表411簡(jiǎn)譜對(duì)應(yīng)的頻率、簡(jiǎn)譜碼和計(jì)數(shù)初值表 簡(jiǎn)譜 發(fā)音 頻率(Hz) 計(jì)數(shù)初值 簡(jiǎn)譜碼 5 低音SO 392 64260 1 6 低音LA 440 64400 2 7 低音SI 494 64524 3 1 中音DO 523 64580 4 2 中音RE 587 64684 5 3 中音MI 659 64777 6 4 中音FA 698 64820 7 5 中音SO 784 64898 8 6 中音LA 880 64968 9 7 中音SI 988 65030 A 1 高音DO 1046 65058 B 2 高音RE 1175 65110 C 3 高音MI 1318 65157 D 4 高音FA 1397 65178 E 5 高音SO 1568 65217 F 不發(fā)音 0 表412節(jié)拍碼與實(shí)際節(jié)拍對(duì)照表 節(jié)拍碼 實(shí)際節(jié)拍 節(jié)拍碼 實(shí)際節(jié)拍 節(jié)拍碼 實(shí)際節(jié)拍 1 1/4拍 5 1又1/4拍 C 3拍 2 2/4拍 6 1又1/2拍 F 3又3/4拍 3 3/4拍 8 2拍 4 1拍 A 2又1/2拍建立音樂步驟:1)先把樂譜的音符找出,然后由上表建立T值表的順序。 2)把T值表構(gòu)成一個(gè)編碼表,構(gòu)成發(fā)音符的計(jì)數(shù)值放在計(jì)數(shù)初值編碼表里。 3)簡(jiǎn)譜碼(音符)為高位,節(jié)拍為(節(jié)拍數(shù))為低4位,音符節(jié)拍碼放在程序 的簡(jiǎn)譜編碼表里。 建立編碼表具體如下:1)定時(shí)值為十六進(jìn)制4位數(shù),拆分為兩組,如5對(duì)應(yīng)的定時(shí)值為FD80H,后組裝入定時(shí)器的低位TL0。2)在程序中使用定時(shí)器T0方式1來產(chǎn)生來產(chǎn)生歌譜中各音符對(duì)應(yīng)頻率的音頻脈沖,經(jīng)三極管將信號(hào)放大后驅(qū)動(dòng)蜂鳴器發(fā)出不同音節(jié)的聲音。3)程序中的節(jié)拍控制是通過調(diào)用延時(shí)子程序DELAY的次數(shù)來實(shí)現(xiàn),1拍為500ms,即需要調(diào)用4次DELAY;3/4拍需要調(diào)用3次DELAY;2/4拍需要調(diào)用2次DELAY。 4)節(jié)拍的控制碼在表TABLE中位于音符碼的后面。5)當(dāng)一個(gè)音符的發(fā)音時(shí)間到時(shí),再查下一個(gè)音符的定時(shí)常數(shù)和延時(shí)常數(shù)。依此進(jìn)行下去,就可演奏出悅耳動(dòng)聽的樂曲。程序流程圖如圖41所示: 圖41 主程序流程圖如圖42所示,開始播放自定義音樂程序時(shí),指針指向樂譜第一個(gè)字節(jié),將第一字節(jié)拆分為高低字節(jié),其高字節(jié)即為音符中音高對(duì)應(yīng)定時(shí)器定時(shí)常數(shù),低字節(jié)即為音符中節(jié)拍對(duì)應(yīng)的1/4節(jié)拍的次數(shù),同時(shí)啟動(dòng)中斷定時(shí)器0工作在方式1,由定時(shí)器定時(shí)常數(shù)得到相應(yīng)音高,通過延時(shí)子程序設(shè)定1/4節(jié)拍的時(shí)間,由節(jié)拍次數(shù)得到節(jié)拍,再讀取下一個(gè)樂譜字節(jié),循環(huán)下去則演奏出美妙和諧的樂曲[9]。開始程序 指向樂譜第一個(gè)字節(jié) 拆分字節(jié)的高低字節(jié) 由高字節(jié)得音高對(duì)應(yīng)定時(shí)器定時(shí)常數(shù) 由低字節(jié)得到節(jié)拍對(duì)應(yīng)節(jié)拍次數(shù) 啟動(dòng)定時(shí)器0 延時(shí)節(jié)拍時(shí)間 關(guān)閉定時(shí)器0 讀取下一個(gè)樂譜字節(jié) 字節(jié)是00H嗎? 程序循環(huán)YESNO 圖42 音樂播放子程序流程圖5 調(diào)試與仿真結(jié)果 軟件調(diào)試結(jié)構(gòu)化軟件的調(diào)試一般可以將重點(diǎn)放在分模塊調(diào)試上,通調(diào)是最后一環(huán)。軟件調(diào)試可以采取離線調(diào)試和在線調(diào)試兩種方式。前者不需要硬件仿真器,借助于軟件仿真器即可。后者一般需要仿真系統(tǒng)的支持。在本次設(shè)計(jì)中利用的是KEIL C51軟件仿真器,其評(píng)估版本可以免費(fèi)獲取,只是有2KB代碼限制?;贛CS-51的MP3播放器的設(shè)計(jì)與實(shí)現(xiàn)的調(diào)試,主要集中在對(duì)揚(yáng)聲器的輸出音樂部分的調(diào)試以及鍵盤控制和LED顯示部分的調(diào)試上。在編寫完整的MP3播放器程序前,可以先按照如下的順序分別調(diào)試各個(gè)功能模塊的程序。 測(cè)試LED顯示模塊(1)調(diào)試目的使用P2口作為輸出口實(shí)現(xiàn)LED的顯示,從而檢測(cè)P2口及LED顯示模塊是否正常工作。(2)調(diào)試程序 MAIN: MOV TMOD, 10H 。定時(shí)器T1工作在方式1 MOV TH1, 3CH MOV TL1, 0B0H 。T=50msSTART: MOV R1,00H 。計(jì)數(shù)顯示初始化 MOV DPTR,TABDISP: MOV A,R1 MOVC A,@A+DPTR 。查表得顯示的字型碼 MOV P2,A 。數(shù)碼管顯示0 ACALL DELAY1S 。延時(shí)1S INC R1 。計(jì)數(shù)值加1 CJNE R1,10,DISP 。秒值不到10,繼續(xù)顯示。否則清0 MOV R1,00H 。計(jì)數(shù)值清0 SJMP DISPTAB: DB 0C0H,0F9H,0A4H 。0,1,2 DB 0B0H,99H,92H 。3,4,5 DB 82H,0F8H,80H 。6,7,8 DB 90H 。9DELAY1S: 。延時(shí)子程序 MOV R3,14H 。置50MS計(jì)數(shù)循環(huán)初值 SETB TR1 。啟動(dòng)T1LP1: JBC TF1,LP2 。查詢計(jì)數(shù)溢出 SJMP LP1 。未到50MS繼續(xù)計(jì)數(shù)LP2: MOV TH1,3CH 。重新置定時(shí)器初值 MOV TL1,0B0H DJNZ R3,LP1 。未到1S繼續(xù)循環(huán) RET 。返回主程序(3)調(diào)試結(jié)果 LED數(shù)碼管從0到9自動(dòng)循環(huán)顯示,表明硬件與軟件正確。 測(cè)試鍵盤控制模塊(1)調(diào)試目的通過鍵盤的控制可使LED數(shù)碼管顯示相應(yīng)的內(nèi)容。(2)調(diào)試程序GETKEY: 。讀A鍵盤子程序 SA: JB , SB 。讀A LCALL DELAY2 JB , SA JNB , $ MOV P2, 10001000B 。顯示A MOV R5, 10001000B MOV A, 0FFH MOV B, 0AH RET(3)調(diào)試結(jié)果鍵盤按下后LED顯示相應(yīng)的內(nèi)容,表明軟硬件正確。 (1)調(diào)試目的(2)調(diào)試程序START:MOV SP, 60HMOV TMOD, 11HMOV IE, 8AH MOV IP, 08H 。T1中斷優(yōu)先于T0中斷MOV TH1, 3CHMOV TL1, 0B0H 。以上為系統(tǒng)初始化,T=50msHERE:SJMP HEREINT_T0: CLR TR0 MOV TL0, 20H MOV TH0, 21H CPL SETB TR0 RETI(3)調(diào)試結(jié)果揚(yáng)聲器有聲音發(fā)出,揚(yáng)聲器正常工作。 調(diào)試中遇到的問題及解決(1)編程前要畫流程圖,這樣會(huì)使思路清晰。(2)編程時(shí)要注意,在程序開始時(shí),要寫入各定時(shí)器中斷的入口地址。(3)有時(shí)會(huì)出現(xiàn)程序一點(diǎn)錯(cuò)誤也沒有,但就是不能正常運(yùn)行的現(xiàn)象,最后我們發(fā)現(xiàn)是因?yàn)槌绦蛑杏械闹噶顣鴮懙貌灰?guī)范導(dǎo)致的,例如有的RET返回指令一定要按正確格式書寫。(4)程序中的跳轉(zhuǎn)指令的運(yùn)用很重要,為保險(xiǎn)起見,都用LJMP,我們就遇到過跳轉(zhuǎn)指令用錯(cuò)程序無法正常運(yùn)行的現(xiàn)象。(5)編程過程中要注意加注釋或分割線,否則,在程序過長時(shí)容易變得很亂,不便于查找或更改。(6)開始時(shí)候沒有將單片機(jī)的第31號(hào)引腳接到高電平,結(jié)果使MP3播放器的播放性能不穩(wěn)定(有時(shí)候能工作,有時(shí)候卻工作不了),當(dāng)接一高電平以后,播放器能正常工作了。(7)開始沒有考慮鍵盤的消抖,造成的按鍵工作紊亂,具體的現(xiàn)象是:按1次鍵卻被要機(jī)器認(rèn)為是按了1次或多次,這就使播放器有時(shí)候可以正常工作,有時(shí)候卻不可以。給鍵盤程序加了消抖呼程序以后,按鍵就工作正常了。(8)兩個(gè)定時(shí)器同時(shí)工作,存在中斷時(shí)序問題,剛開始時(shí)我們把定時(shí)器1設(shè)定在方式3,計(jì)250us,由于定時(shí)中斷過于頻繁,使CPU負(fù)載過大,導(dǎo)致音樂不能正常播放,時(shí)間不能正常顯示。解決辦法:將定時(shí)器1設(shè)定在工作方式1,16位計(jì)數(shù),計(jì)50ms,效果有很大改觀。 仿真結(jié)果我在keil軟件中建立工程,連接。(1)顯示屏不能工作 剛開始時(shí)lcd只發(fā)亮不顯示字符,我通過查找文獻(xiàn),在網(wǎng)上搜集資料,發(fā)現(xiàn)lcd 的高電平和地引腳接錯(cuò)了,這是一個(gè)常識(shí)性的錯(cuò)誤,它給我了深刻的教訓(xùn),做事情要細(xì)心認(rèn)真。(2)蜂鳴器不能正常播放音樂 在protues仿真中的蜂鳴器老是不能正常響,會(huì)斷斷續(xù)續(xù)地播放,經(jīng)過我?guī)滋斓恼{(diào)試,我發(fā)現(xiàn)應(yīng)該是電平驅(qū)動(dòng)的問題,是由于三極管的失真造成的。最后終于能播放音樂了。最終仿真結(jié)果如圖53所示: 圖 53 仿真圖結(jié)束語我的題目是MP3播放器軟件的設(shè)計(jì),對(duì)于我們這些工科學(xué)生來說,這是一次考驗(yàn)。怎么才能找到課堂所學(xué)與實(shí)際應(yīng)用的最佳結(jié)合點(diǎn)?怎樣讓自己的業(yè)余更接近專業(yè)?怎樣讓自己的計(jì)劃更具有序性,而不會(huì)忙無一用?這都是我們所要考慮和努力的。這次課程設(shè)計(jì)我學(xué)到很多很多的東西,學(xué)會(huì)了怎么樣去制定計(jì)劃,怎么樣去實(shí)現(xiàn)這個(gè)計(jì)劃,并掌握了在執(zhí)行過程中怎么樣去克服心理上的不良情緒。不僅鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí),掌握了一種系統(tǒng)的研究方法,可以進(jìn)行一些簡(jiǎn)單的編程。通過這次使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。我設(shè)計(jì)的MP3播放器采用蜂鳴器作為MP3播放器件,若針對(duì)現(xiàn)在流行的WAV、MP3等音樂質(zhì)量很好的系統(tǒng),它就不是一個(gè)好的選擇,這是本設(shè)計(jì)的不足。當(dāng)然本設(shè)計(jì)也要考慮到性能和價(jià)格之比,和它驅(qū)動(dòng)起來比較簡(jiǎn)單。 同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,對(duì)單片機(jī)匯編語言掌握得不夠好。這次課程設(shè)計(jì)通過自己的努力,同學(xué)的幫助,還有老師的辛勤指導(dǎo)下,最終順利完成了。致 謝經(jīng)過幾個(gè)月的忙碌,本次畢業(yè)論文設(shè)計(jì)已經(jīng)接近尾聲。,由于經(jīng)驗(yàn)的匱乏,難免有許多考慮不到的地方,在多次的修改和研究之后才寫出完成。如果沒有導(dǎo)師的督促和指導(dǎo),以及同學(xué)和朋友的支持,想要完成這個(gè)畢業(yè)論文設(shè)計(jì)是難以想像的。感謝同學(xué)和朋友的及時(shí)幫助和教導(dǎo)。在論文的寫作過程中,得到了陳豹老師的親切關(guān)懷和耐心的指導(dǎo)。老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和科學(xué)的工作方法給了我極大的幫助和影響。從課題的選擇得到畢業(yè)論文設(shè)計(jì)最終完成,老師都始終給予我細(xì)心的指導(dǎo)。在此謹(jǐn)向陳豹老師致以誠摯的謝意和崇高的敬意。同時(shí),也要感謝各位老師,同學(xué)和朋友們給我極大的支持,對(duì)我的論文提出了寶貴的意見及建議。感謝所有幫助我的老師、同學(xué)和朋友們,在此向他們表達(dá)我的感激之情。
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1