国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

電子工程網

標題: 蜂鳴器 [打印本頁]

作者: 洛祭    時間: 2011-12-21 22:28
標題: 蜂鳴器
/************************************************************************  
[文件名]  C51音樂程序(八月桂花)  
[功能]    通過單片機演奏音樂  
注意:通過了74HC14控制ULN2003 驅動芯片驅動蜂鳴器        *  
/**********************************************************************/   
#include    
#include    
//本例采用89C52, 晶振為11.0592MHZ   
//關于如何編制音樂代碼, 其實十分簡單,各位可以看以下代碼.   
//頻率常數即音樂術語中的音調,而節拍常數即音樂術語中的多少拍;   
//所以拿出譜子, 試探編吧!   
sbit Beep =  P1^5 ;
   
unsigned char n=0;  //n為節拍常數變量   
unsigned char code music_tab[] ={   
0x18, 0x30, 0x1C , 0x10, //格式為: 頻率常數, 節拍常數, 頻率常數, 節拍常數,   
0x20, 0x40, 0x1C , 0x10,   
0x18, 0x10, 0x20 , 0x10,   
0x1C, 0x10, 0x18 , 0x40,   
0x1C, 0x20, 0x20 , 0x20,   
0x1C, 0x20, 0x18 , 0x20,   
0x20, 0x80, 0xFF , 0x20,   
0x30, 0x1C, 0x10 , 0x18,   
0x20, 0x15, 0x20 , 0x1C,   
0x20, 0x20, 0x20 , 0x26,   
0x40, 0x20, 0x20 , 0x2B,   
0x20, 0x26, 0x20 , 0x20,   
0x20, 0x30, 0x80 , 0xFF,   
0x20, 0x20, 0x1C , 0x10,   
0x18, 0x10, 0x20 , 0x20,   
0x26, 0x20, 0x2B , 0x20,   
0x30, 0x20, 0x2B , 0x40,   
0x20, 0x20, 0x1C , 0x10,   
0x18, 0x10, 0x20 , 0x20,   
0x26, 0x20, 0x2B , 0x20,   
0x30, 0x20, 0x2B , 0x40,   
0x20, 0x30, 0x1C , 0x10,   
0x18, 0x20, 0x15 , 0x20,   
0x1C, 0x20, 0x20 , 0x20,   
0x26, 0x40, 0x20 , 0x20,   
0x2B, 0x20, 0x26 , 0x20,   
0x20, 0x20, 0x30 , 0x80,   
0x20, 0x30, 0x1C , 0x10,   
0x20, 0x10, 0x1C , 0x10,   
0x20, 0x20, 0x26 , 0x20,   
0x2B, 0x20, 0x30 , 0x20,   
0x2B, 0x40, 0x20 , 0x15,   
0x1F, 0x05, 0x20 , 0x10,   
0x1C, 0x10, 0x20 , 0x20,   
0x26, 0x20, 0x2B , 0x20,   
0x30, 0x20, 0x2B , 0x40,   
0x20, 0x30, 0x1C , 0x10,   
0x18, 0x20, 0x15 , 0x20,   
0x1C, 0x20, 0x20 , 0x20,   
0x26, 0x40, 0x20 , 0x20,   
0x2B, 0x20, 0x26 , 0x20,   
0x20, 0x20, 0x30 , 0x30,   
0x20, 0x30, 0x1C , 0x10,   
0x18, 0x40, 0x1C , 0x20,   
0x20, 0x20, 0x26 , 0x40,   
0x13, 0x60, 0x18 , 0x20,   
0x15, 0x40, 0x13 , 0x40,   
0x18, 0x80, 0x00   
};   
   
void int0()  interrupt 1   //采用中斷0 控制節拍   
{  TH0=0xd8;   
   TL0=0xef;   
   n--;   
}   
   
void delay (unsigned char m)   //控制頻率延時   
{   
unsigned i=3*m;   
while(--i);   
}   
   
void delayms(unsigned char a)  //豪秒延時子程序   
{   
  while(--a);                  //采用while(--a) 不要采用while(a--); 各位可編譯一下看看匯編結果就知道了!   
}   
   
void main()   
{ unsigned char p,m;   //m為頻率常數變量   
  unsigned char i=0;   
  TMOD&=0x0f;   
  TMOD|=0x01;   
  TH0=0xd8;TL0=0xef;   
  IE=0x82;   
play:   
   while(1)   
    {   
    a: p=music_tab[i];   
       if(p==0x00)       { i=0, delayms(1000); goto play;}     //如果碰到結束符,延時1秒,回到開始再來一遍   
       else if(p==0xff)  { i=i+1;delayms(100),TR0=0; goto a;}  //若碰到休止符,延時100ms,繼續取下一音符   
            else         {m=music_tab[i++], n=music_tab[i++];}  //取頻率常數 和 節拍常數   
             TR0=1;                                             //開定時器1   
           while(n!=0) Beep=~Beep,delay(m);                         //等待節拍完成, 通過P1口輸出音頻(可多聲道哦!)   
       TR0=0;                                             //關定時器1   
    }   
}
作者: niyujun    時間: 2011-12-29 14:42
很好的東西




歡迎光臨 電子工程網 (http://m.qingdxww.cn/) Powered by Discuz! X3.4
主站蜘蛛池模板: 国产吧在线 | 禁天堂a在线观看 | 四虎最新在线 | 99久久精品免费看国产 | 亚欧色视频在线观看免费 | 99视频有精品视频免费观看 | 久久se精品动漫一区二区三区 | h视频在线观看免费网站 | 日本成人一区二区 | h免费在线观看 | 玖玖中文 | 国产亚洲一区二区精品 | 四虎精品| 免费观看男女羞羞的视频网站 | 不卡一区在线观看 | 欧美一区高清 | 成人毛片18女人毛片免费96 | 最新国语自产精品视频在 | 在线日韩欧美一区二区三区 | 日本精品久久久久久久 | 欧美精品日韩一区二区三区 | 青青草99 | www.99色 | 美女久久久久久久久久久 | 国产在线观看91 | 亚色网址 | 91高清在线 | 爱逼综合 | 精品在线视频免费 | 香蕉伊思人在线 | 日韩欧美~中文字幕 | 久久黄色片| 岛国大片在线观看免费版 | 亚洲综合偷自成人网第页色 | 污网站免费观看在线高清 | 久久免费资源福利资源站 | 亚洲精品亚洲人成在线观看麻豆 | 日本男女网站 | 免费在线观看毛片 | www.100lu | 国产成人精品高清在线观看99 |