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

正文內(nèi)容

畢業(yè)論文-基于at89s52單片機(jī)的電子琴設(shè)計(jì)-資料下載頁

2025-06-06 10:50本頁面
  

【正文】 {1,1,1,1,2,1,1,1,1,0,1,1,0,1,1,0,1,1,2,1}, {1,1,1,1,0,1,1,1,1,1,0,1,1,0,1,1,0,1,1,3,1,1}, {0,1,1,0,1,1,2,1,1,0,1,1,0,1,1,2,1}, {0,1,1,2,0,1,1,0,1,1,0,1,1,0,1,1,2,1,1}, {0,1,1,0,1,1,2,1,1,0,1,1,0,1,1,4,1}, {0,1,1,2,0,1,1,0,1,1,0,1,1,0,1,4,1}, {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {1,1,2,0,1,1,0,1,1,0,1,1,0,1,1,2,1,0,1,1,0,1,1,2,1,1,0,1,1,0,1,1,4,0,1,1,2,0,1,1,0,1,1,0,1,1,0,1,4,1}, {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} }。 32 /*音符與計(jì)數(shù)值班對(duì)應(yīng)表 */ uint code tab[]= {0,63628,63835,64021,64103,64260,64400,64524, 64580,64684,64777,64820,64898,64968,65030, 65058,65110,65157,65178,65217,65252,65283 }。 void delay1 (uint ms) //播放歌曲時(shí)實(shí)現(xiàn)節(jié)拍的延時(shí)函數(shù) { uchar t。 while (ms) for (t=0。t120。t++)。 } /*鍵消抖延時(shí)函數(shù) */ void delay(void) { uchar i。 for (i=300。i0。i)。 } /*鍵掃描函數(shù) */ uchar getkey(void) { uchar scancode,tmpcode。 if ((P0amp。0xf0)==0xf0) return (0)。 scancode = 0xfe。 while((scancodeamp。0x10)!=0) //逐行掃描 { P0=scancode。 //輸出行掃描碼 if((P0amp。0xf0)!=0xf0) //本行有鍵按下 { tmpcode = (P0amp。0xf0)|0x0f。 33 /*返回特征字節(jié)碼,為 1 的位即對(duì)應(yīng)于行和列 */ return((~scancode)+(~tmpcode))。 } else scancode=(scancode1)|0x01。 //行掃描碼左移一位 } } /*外部中斷 0,這里是彈唱按鍵 */ void EXO_IXT() interrupt 0 { FY=0。LED1=1。LED2=0。 } /*外部中斷線,這里是播放按鍵 */ void EX1_INT() interrupt 2 { FY=1。LED1=0。LED2=1。 } /*定時(shí)器 0 中斷服務(wù)子程序 */ void time0_int(void) interrupt 1 using 0 { /*設(shè)置計(jì)數(shù)初值 */ TH0 = STH0。 TL0 = STL0。 SPK=!SPK。 //反相,產(chǎn)生輸出脈沖 */ P2=DSY_CODE[k]。 } void main(void) { LED1=1。 LED2=0。 P2=0x3f。 IE=0x87。 34 TMOD=0x01。 IT0=1。 IT1=1。 while(1) { P0=0xf0。 //發(fā)全 0 列掃描碼 if((P0amp。0xf0)!=0xf0) //若有鍵按下 { delay()。 //延時(shí)去抖動(dòng) if((P0amp。0xf0)!=0xf0) //延時(shí)后再判斷一次,去除抖動(dòng)影響 { key=getkey()。 //調(diào)用鍵盤掃描函數(shù) switch(key) //根據(jù)獲取的按鍵位置得到 K 值 { case 0x88: k = 0。 break。 case 0x48: k = 1。 break。 case 0x28: k = 2 。 break。 case 0x18: k = 3 。 break。 case 0x84: 35 k = 4 。 break。 case 0x44: k = 5 。 break。 case 0x24: k = 6 。 break。 case 0x14: k = 7 。 break。 case 0x82: k = 8 。 break。 case 0x42: k = 9 。 break。 case 0x22: k = 10 。 break。 case 0x12: k = 11 。 break。 case 0x81: k = 12 。 break。 case 0x41: k = 13 。 break。 case 0x21: 36 k = 14 。 break。 case 0x11: k = 15 。 break。 default : break。 } if(FY==0) { /*根據(jù)所得的 K 值設(shè)定計(jì)數(shù)器 1 的計(jì)數(shù)初值 */ STH0 = tab[k]/256。 STL0 = tab[k]%256。 TR0 = 1。 //開始計(jì)數(shù) while ((P0amp。0xf0)!=0xf0)。 //若沒有松開按鍵,則等待,等待期間彈奏該音符 TR0=0。 //若按鍵松開,則停止計(jì)數(shù),不產(chǎn)生脈 沖輸出 } else { while (FY==1) { if(Song[k][Tone_Index]==1) Tone_Index=0。 STH0=(tab[Song[k][Tone_Index]])/256。 STL0=(tab[Song[k][Tone_Index]])%256。 P2=DSY_CODE[Song[k][Tone_Index]]。 TR0 = 1。 delay1(300*Len[k][Tone_Index])。 37 Tone_Index++。 TR0=0。 } } } } } }
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1