久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 單片機電子琴代碼 8個按鍵控制8個音符 實現簡單音樂播放 [打印本頁]

作者: 圣誕節拉斯    時間: 2017-2-24 15:48
標題: 單片機電子琴代碼 8個按鍵控制8個音符 實現簡單音樂播放
8個按鍵控制8個音符  實現簡單音樂播放
  1. #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義

  2. #define KeyPort P3
  3. /*------------------------------------------------
  4.                   全局變量
  5. ------------------------------------------------*/

  6. unsigned char High,Low; //定時器預裝值的高8位和低8位

  7. sbit SPK=P1^2;          //定義喇叭接口

  8. unsigned char code freq[][2]={
  9.   0xD8,0xF7,//00440HZ 1   
  10.   0xBD,0xF8,//00494HZ 2  
  11.   0x87,0xF9,//00554HZ 3  
  12.   0xE4,0xF9,//00587HZ 4   
  13.   0x90,0xFA,//00659HZ 5     
  14.   0x29,0xFB,//00740HZ 6     
  15.   0xB1,0xFB,//00831HZ 7      
  16.   0xEF,0xFB,//00880HZ `1
  17. };
  18. /*------------------------------------------------
  19.                   函數聲明
  20. ------------------------------------------------*/
  21. void Init_Timer0(void);//定時器初始化
  22. /*------------------------------------------------
  23.                     主函數
  24. ------------------------------------------------*/
  25. void main (void)
  26. {
  27. unsigned char num;                  

  28. Init_Timer0();    //初始化定時器0,主要用于數碼管動態掃描
  29. SPK=0;            //在未按鍵時,喇叭低電平,防止長期高電平損壞喇叭
  30. while (1)         //主循環
  31.   {
  32.    switch(KeyPort)
  33.                 {
  34.                  case 0xfe:num= 1;break;
  35.                  case 0xfd:num= 2;break;
  36.                  case 0xfb:num= 3;break;
  37.                  case 0xf7:num= 4;break;
  38.                  case 0xef:num= 5;break;
  39.                  case 0xdf:num= 6;break;
  40.                  case 0xbf:num= 7;break;
  41.                  case 0x7f:num= 8;break;
  42.                  default:num= 0;break;
  43.                 }

  44.         
  45.    if(num==0)
  46.       {
  47.        TR0=0;
  48.        SPK=0;   //在未按鍵時,喇叭低電平,防止長期高電平損壞喇叭
  49.            }
  50.    else
  51.       {
  52.             High=freq[num-1][1];
  53.                    Low =freq[num-1][0];
  54.                 TR0=1;
  55.           }
  56.   }
  57. }


  58. /*------------------------------------------------
  59.                     定時器初始化子程序
  60. ------------------------------------------------*/
  61. void Init_Timer0(void)
  62. {
  63. TMOD |= 0x01;          //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響                     
  64. EA=1;            //總中斷打開
  65. ET0=1;           //定時器中斷打開
  66. //TR0=1;           //定時器開關打開
  67. }
  68. /*------------------------------------------------
  69.                  定時器中斷子程序
  70. ------------------------------------------------*/
  71. void Timer0_isr(void) interrupt 1
  72. {
  73. TH0=High;
  74. TL0=Low;

  75. SPK=!SPK;

  76. }
復制代碼



作者: 朝聞道夕死可矣    時間: 2018-7-17 20:09
燒寫程序后
蜂鳴器不響啊




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲精品66 | 日韩在线观看一区二区三区 | 久久久久国产一区二区 | 在线一区视频 | 中文字幕乱码一区二区三区 | 男女视频91 | 国产精品毛片无码 | 国产精品久久久久久久久久妇女 | 国产精品美女视频 | 99re在线 | 亚洲嫩草 | 亚洲国产精品网站 | 在线男人天堂 | 亚洲三区在线观看 | 欧美一区二 | 日本精品久久久久久久 | 五月激情婷婷六月 | 成人亚洲 | 国产女人与拘做受免费视频 | 91精品国产综合久久小仙女图片 | 欧美成人免费 | 久久亚洲国产精品 | 久艹网站| 男女久久久 | 日本不卡在线观看 | 中文字幕亚洲国产 | 四虎最新视频 | 欧美999 | 中文二区 | 国产精品伦理一区二区三区 | 毛片黄片| 欧美日韩综合精品 | 一级片在线观看视频 | 欧美中文字幕在线观看 | 日韩av在线不卡 | 精品日韩在线观看 | 国产一级免费在线观看 | 中文字幕日韩欧美一区二区三区 | 亚洲午夜视频在线观看 | 男女黄网站 | 4hu最新网址 |