色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)C語言程序設(shè)計(jì):播放生日快樂歌

          單片機(jī)C語言程序設(shè)計(jì):播放生日快樂歌

          作者: 時(shí)間:2013-06-27 來源:網(wǎng)絡(luò) 收藏

          /* 名稱:播放音樂

          說明:程序運(yùn)行時(shí)播放生日快樂歌, 未使用定時(shí)器中斷,所有頻率完全用延時(shí)實(shí)現(xiàn)

          */

          #includereg51.h>

          #define uchar unsigned char

          #define uint unsigned int

          sbit BEEP=P3^7;

          //生日快樂歌的音符頻率表,不同頻率由不同的延時(shí)來決定

          uchar code SONG_TONE[]={212,212,190,212,159,169,212,212,190,212,142,159,

          212,212,106,126,159,169,190,119,119,126,159,142,159,0};

          //生日快樂歌節(jié)拍表,節(jié)拍決定每個(gè)音符的演奏長短

          uchar code SONG_LONG[]={9,3,12,12,12,24,9,3,12,12,12,24,

          9,3,12,12,12,12,12,9,3,12,12,12,24,0};

          //延時(shí)

          void DelayMS(uint x)

          {

          uchar t;

          while(x--) for(t=0;t120;t++);

          }

          //播放函數(shù)

          void PlayMusic()

          {



          uint i=0,j,k;


          while(SONG_LONG[i]!=0||SONG_TONE[i]!=0)

          { //播放各個(gè)音符,SONG_LONG 為拍子長度

          for(j=0;jSONG_LONG[i]*20;j++)

          {

          BEEP=~BEEP;

          //SONG_TONE 延時(shí)表決定了每個(gè)音符的頻率

          for(k=0;kSONG_TONE[i]/3;k++);

          }

          DelayMS(10);

          i++;

          }

          }

          c語言相關(guān)文章:c語言教程


          單片機(jī)相關(guān)文章:單片機(jī)教程


          單片機(jī)相關(guān)文章:單片機(jī)視頻教程


          單片機(jī)相關(guān)文章:單片機(jī)工作原理



          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉