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

正文內(nèi)容

基于51單片機的電子琴設(shè)計畢業(yè)設(shè)計-資料下載頁

2025-08-19 20:02本頁面
  

【正文】 ****************/ void Sound_Player(void) { if(Flag == 0) //Do~Si七個音調(diào)鍵 { Flag = 1。 switch(Keycode) { case 1: //Do { TH0code = 0XFB。 TL0code = 0XE9。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 Speaker = ~Speaker。 基于 51 單片機的電子琴設(shè)計 21 break。 } case 2: //Re { TH0code = 0XFC。 TL0code = 0X5C。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 Speaker = ~Speaker。 break。 } case 3: //Mi { TH0code = 0XFC。 TL0code = 0X5C。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開 定時器 0 Speaker = ~Speaker。 break。 } case 4: //Fa { TH0code = 0XFC。 TL0code = 0X5C。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 Speaker = ~Speaker。 break。 } case 5: //So { TH0code = 0XFC。 TL0code = 0X5C。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 Speaker = ~Speaker。 break。 } case 6: //La 基于 51 單片機的電子琴設(shè)計 22 { TH0code = 0XFC。 TL0code = 0X5C。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 Speaker = ~Speaker。 break。 } case 7: //Si { TH0code = 0XFC。 TL0code = 0X5C。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 Speaker = ~Speaker。 break。 } default:break。 } } else if(Keycode ==8) //特殊功能鍵 { switch(Time) { case 1: //播放第一首樂曲 { TH0code = Music1_Tab[Num++]。 TL0code = Music1_Tab[Num++]。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 if(Num == 15) Num = 0。 Speaker = ~Speaker。 break。 } case 2: //播放第二首樂曲 { TH0code = Music2_Tab[Num]/256。 TL0code = Music2_Tab[Num]%256。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 基于 51 單片機的電子琴設(shè)計 23 Num++。 if(Num == 15) Num = 0。 Speaker = ~Speaker。 break。 } case 3: //播放第三首樂曲 { TH0code = Music3_Tab[Num++]。 TL0code = Music3_Tab[Num++]。 TH0 = TH0code。 //置初值 TL0 = TL0code。 TR0 = 1。 //開定時器 0 if(Num == 64) Num = 0。 Speaker = ~Speaker。 break。 } default: break。 } } } /**************************************** 數(shù)碼管顯示函數(shù) ****************************************/ void LED_Display(void) { if(Keycode0 amp。amp。 Keycode8) P0 = ~table[Keycode]。//Do~Si七個音調(diào)鍵分別顯示 1~7 else if(Keycode == 8) P0 = ~table[Time + 9]。//特殊功能鍵分別顯示 A、 b、 C TR0 = 0。 //關(guān)定時器 0 } /**************************************** 鍵值掃描函數(shù) ****************************************/ void Key_Scan(void) { uint key。 key = P1。 switch(key) //鍵值 { case 0xfe: //Do { Delayms(10)。 //消抖 基于 51 單片機的電子琴設(shè)計 24 if(key == 0xfe) { Keycode = 1。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0xfd: //Re { Delayms(10)。 if(key == 0xfd) { Keycode = 2。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0xfb: //Mi { Delayms(10)。 if(key == 0xfb) { Keycode = 3。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0xf7: //Fa { Delayms(10)。 if(key == 0xf7) { Keycode = 4。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0xef: //So { Delayms(10)。 基于 51 單片機的電子琴設(shè)計 25 if(key == 0xef) { Keycode = 5。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0xdf: //La { Delayms(10)。 if(key == 0xdf) { Keycode = 6。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0xbf: //Si { Delayms(10)。 if(key == 0xbf) { Keycode = 7。 Flag = 0。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } case 0x7f: // 播放 /下一首 { Delayms(10)。 if(key == 0x7f) { Keycode = 8。 Flag = 1。 Num = 0。 if(Time == 4)Time=0。 Time++。 while(P1 != 0xFF)。 //等待按鍵釋放 break。 } } 基于 51 單片機的電子琴設(shè)計 26 default : break。 } } void Delayms(uint z)//延時 ms { uint x,y。 for(x=z。x0。x) for(y=110。y0。y)。 } /**************************************** 鍵盤中斷函數(shù) ****************************************/ void Key_inter() interrupt 0 { Key_Scan()。//鍵值掃描 } /**************************************** 定時中斷函數(shù) ****************************************/ void T0_inter() interrupt 1 { TH0 = TH0code。 TL0 = TL0code。 Speaker = ~Speaker。 }
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1