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

正文內(nèi)容

單片機(jī)課程設(shè)計(jì)-基于stc89c52rc單片機(jī)的音樂播放器設(shè)計(jì)(參考版)

2024-10-23 01:33本頁面
  

【正文】 所以,在遇到困難時(shí)要保持一顆冷靜的心,不要急躁,仔細(xì)排查是哪里出了問題,一步步的調(diào)試,不能打退堂鼓,有時(shí)候很可能是一個(gè)小小的疏忽,如果放棄了就太可惜了。做軟件的仿真容易,硬件 焊接就很有難度了,如何布局才能節(jié)省空間而切看起來美觀也是一件很有挑戰(zhàn)性的工作。另外,這次設(shè)計(jì)也幫助自己找回了許多已經(jīng)忘記的知識(shí)。雖然基礎(chǔ)課程已經(jīng)上完了,但真正的駕馭單片機(jī)才剛剛開始。而且做過硬件后不知不覺就把以前覺得記不住的東西給記住了,這也不失為一種學(xué)習(xí)的好方法、。這次設(shè)計(jì)對(duì)單片機(jī)的硬件原理有了更深刻的認(rèn)識(shí),而且對(duì)具體的端口和功能都有了一定的應(yīng)用。在做食物的過程中,是對(duì)自己各方面能力的一次考驗(yàn),不管是硬件還是軟件,在調(diào)試方面都有了一定的經(jīng)驗(yàn)。 本次設(shè)計(jì)也算是對(duì)自己實(shí)踐動(dòng)手能力的一次訓(xùn)練,雖然上了那么久的單片機(jī)理論課程,可是始終沒有在實(shí)實(shí)在在的實(shí)物上做一下。于是又跑到電子市場(chǎng)買了無源的 蜂鳴器回來,接到電路中,發(fā)聲正常 ,與仿真結(jié)果差別很小。無源蜂鳴器是靠方波驅(qū)動(dòng)的,適合于產(chǎn)生多種不同頻率的音調(diào)。甚至一度想放棄做實(shí)物出來了,干脆專心搞軟件仿真算了。與仿真效果相差過于懸殊。 十、本次課程設(shè)計(jì)的經(jīng)驗(yàn)教訓(xùn): 通過這次課程設(shè)計(jì),我深深感覺到 :不管一件東西原理多么簡(jiǎn)單,要親手做過才知道能把簡(jiǎn) 單的東西做好也是一件不容易的事情。 系統(tǒng)設(shè)計(jì)總體框圖: 系統(tǒng)晶振振蕩電路如下圖所示: X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 .0 /T 21P 1 .1 /T 2 E X2P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 / R D17P 3 . 6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1A T 8 9 C5 2C11nFC21nFX1CR Y S T A L 本次設(shè)計(jì)仿真運(yùn)行效果如下圖所示: 仿真時(shí)播放的是第二首歌曲,并且有數(shù)碼管顯示。 工作期間,按下 Button, C 放電。而音符節(jié)拍則采用了延時(shí)的方式來實(shí)現(xiàn),當(dāng)然也可以通過定時(shí)器來實(shí)現(xiàn)。 在本次設(shè)計(jì)中,用到了定時(shí)器功能,并設(shè)置其工作在方式一模式下。 T1 作波特率發(fā)生器時(shí),可以設(shè)置成方式 0、 1 或 2,用在任何不需要中斷控制的場(chǎng)合。當(dāng)實(shí)現(xiàn)了啟動(dòng)要求后,定時(shí)器即按規(guī)定的工作方式和初值開始計(jì)數(shù)或定時(shí))。 在定時(shí)器 /計(jì)數(shù)器開始工作之前, CPU 必須將一些命令(稱為控制字)寫入定時(shí) /計(jì)數(shù)器。此后的機(jī)器周期 S3P1 期間,新的計(jì)數(shù)值裝入計(jì)數(shù)器。計(jì)數(shù)器在 每個(gè)機(jī)器周期的 S5P2 期間采樣引腳輸入電平。若要延長(zhǎng)定時(shí)時(shí)間,則需要改變定時(shí)器的初值,并要適當(dāng)選擇定時(shí)器的長(zhǎng)度(如 8 位、 13 位、 16 位等)。因一個(gè)機(jī)器周期等于 12 個(gè)振蕩周期,所以計(jì)數(shù)頻率 fcount=1/12osc。 當(dāng)定時(shí)器 /計(jì)數(shù)器為定時(shí)工作方式時(shí),計(jì)數(shù)器的加 1 信號(hào)由 振蕩器的 12 分頻信號(hào)產(chǎn)生,即每過一個(gè)機(jī)器周期,計(jì)數(shù)器加 1,直至計(jì)滿溢出為止。 9 首歌的選擇依靠指針進(jìn)行指向。如 0x34,表示音符音符頻率所對(duì)應(yīng)的計(jì)數(shù)器初值為 yin[6]和 yin[7],節(jié)拍數(shù)為 1 拍,即 4 個(gè) 1/4 拍。假使 1/4 拍為 1DELAY,則 1 拍應(yīng)為4DELAY,以此類推。 相關(guān)知識(shí): 每一音符使用 1 個(gè)字節(jié),字節(jié)的高 4 位代表音符的高低,低 4 位代表音符的節(jié)拍,表 2 為節(jié)拍與節(jié)拍碼的對(duì)照。 2. 把 T 值表建立在 TABLE1,構(gòu)成發(fā)音符是計(jì)數(shù)值放在 “TABLE”。 } 八、 有關(guān)聲音產(chǎn)生的知識(shí) 表 1 C 調(diào)各音符頻率與計(jì)數(shù)值 T 的對(duì)照表 音符 頻率( Hz) 簡(jiǎn)譜碼( T值) 音符 頻率( Hz) 簡(jiǎn)譜碼( T 值) 低 1DO 262 63628 4FA 740 64860 1DO 277 63731 中 5SO 784 64898 低 2RE 294 63835 5SO 831 64934 2RE 311 63928 中 6LA 880 64968 低 3M 330 64021 6 932 64994 低 4FA 349 64103 中 7SI 988 65030 4FA 370 64185 高 1DO 1046 65058 低 5SO 392 64260 1DO 1109 65085 5SO 415 64331 高 2RE 1175 65110 低 6LA 440 64400 2RE 1245 65134 6 466 64463 高 3M 1318 65157 低 7SI 494 64524 高 4FA 1397 65178 中 1DO 523 64580 4FA 1480 65198 1DO 554 64633 高 5SO 1568 65217 中 2RE 587 64684 5SO 1661 65235 2RE 622 64732 高 6LA 1760 65252 中 3M 659 64777 6 1865 65268 中 4FA 698 64820 高 7SI 1967 65283 表 2 節(jié)拍與節(jié)拍碼對(duì)照 節(jié) 拍 碼 節(jié) 拍 數(shù) 節(jié) 拍 碼 節(jié) 拍 數(shù) 1 1/4 拍 1 1/8 拍 2 2/4 拍 2 1/4 拍 3 3/4 拍 3 3/8 拍 4 1 拍 4 1/2 拍 5 1 又 1/4 拍 5 5/8 拍 6 1 又 1/2 拍 6 3/4 拍 8 2 拍 8 1 拍 A 2 又 1/2 拍 A 1 又 1/4 拍 C 3 拍 C 1 又 1/2 拍 F 3 又 3/4 拍 表 3 各調(diào) 1/4 節(jié)拍的時(shí)間設(shè)定 各調(diào) 1/8 節(jié)拍的時(shí)間設(shè)定 曲 調(diào) 值 DELAY 曲 調(diào) 值 DELAY 調(diào) 4/4 125 毫秒 調(diào) 4/4 62 毫秒 調(diào) 3/4 187 毫秒 調(diào) 3/4 94 毫秒 調(diào) 2/4 250 毫秒 調(diào) 2/4 125 毫秒 1/4 拍的延遲時(shí)間 =187 毫秒 DELAY: MOV R7,02 D2: MOV R4,187 //別的延遲值,只需修改這兒的值為相應(yīng)值,即可。d0。c0。 } /*延時(shí) 1/4 拍時(shí)間即 187ms*/ void delay(void) { unsigned int c,d。 TL0=yin[2*l+1]。 j++。i) //節(jié)拍 K 為多少就執(zhí)行多少個(gè) 1/4 拍 { delay()。 } for(i=k。(yin[2*l+1]==0xff)) //如果取到的都是休止符 ,則不輸出音頻 { TR0=0。 //起動(dòng)定時(shí)器 0 if ((yin[2*l]==0xff)amp。 //置初值 TL0=yin[2*l+1]。 //后 4 位為多少個(gè) 1/4 拍 l=*(song+j)4。 } k=*(song+j)amp。} if(e==0) {do {。} if(b==0) {next()。 while(*(song+j)!=0xFF) //是否取到結(jié)束碼 { if(a==0) { last()。 //預(yù)置演奏第二首; P2=0x19。ETO=1。 //timer0 工作在方式 1 IE=0x82。P2=0xb7。P2=0x90。P2=0x10。P2=0x97。P2=0x50。P2=0xd0。P2=0xb4。P2=0x91。P2=0x19。} } } //下一首歌曲 void next() { delay1()。} else if (song==song9){song=song8。} else if (song==song8){song=song7。} else if (song==song7){song=song6。} else if (song==song6){song=song5。} else if (song==song5){song=song4。} else if (song==song4){song=song3。} else if (song==song3){song=song2。} else if (song==song2){song=song1。 if(a==1) {if (song==song1) {song=song9。n)。m) for(n=120。 for(m=1000。 //延時(shí) 20ms。 //第八首 祈禱 unsigned char code song8[37]={0xC4,0x12,0x32,0x44,0x42,0x52, 0x52,0x44,0x32,0x32,0x12,0x14, 0x12,0x12,0x32,0x42,0x54,0x44, 0x4F, 0xC4,0x12,0x32,0x44,0x42,0x72, 0x58,0x42,0x32,0x34,
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1