⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 music3.lst

📁 单片机音乐编程
💻 LST
字号:
C51 COMPILER V7.20   MUSIC3                                                                05/01/2007 17:10:31 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE MUSIC3
OBJECT MODULE PLACED IN Music3.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE Music3.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1                                            /* 播放两首音乐(C语言)
   2          *********************************
   3          Create by:左秀龙 
   4          support:
   5          Tel:0755-82879296
   6          email: cutedesign@tom.com
   7          Date: 2005/07/15
   8          *********************************
   9          测试通过*/
  10          
  11          #include <reg52.h>  
  12          
  13          void Music(unsigned char number);
  14          void delay10ms(unsigned char time);
  15          void delay50us(unsigned char time);
  16          unsigned char code SOUNDLONG[];
  17          unsigned char code SOUNDTONE[];
  18          
  19          void main()
  20          {
  21   1      while(1)
  22   1      {
  23   2      Music(1); //生日快乐
  24   2      delay10ms(250);
  25   2      delay10ms(250);
  26   2      Music(2); //三轮车
  27   2      delay10ms(250);
  28   2      delay10ms(250);
  29   2      }
  30   1      }
  31          
  32          void Music(unsigned char number)
  33          {
  34   1      unsigned int k,n;
  35   1      unsigned int SoundLong,SoundTone;
  36   1      unsigned int i,j,m;
  37   1      
  38   1      for(k=0;k<number-1;k++)
  39   1      {
  40   2      while(SOUNDLONG !=0){i++;}
  41   2      i++;
  42   2      if(i>=57) i=0;
  43   2      }
  44   1      for(k=0;k<number-1;k++)
  45   1      {
  46   2      while(SOUNDTONE[j] !=0){j++;}
  47   2      j++;
  48   2      if(j>=57) j=0;
  49   2      }
  50   1      
  51   1      do
  52   1      { 
  53   2      if(i>=57) i=0;
  54   2      if(j>=57) j=0;
  55   2      SoundLong=SOUNDLONG;
C51 COMPILER V7.20   MUSIC3                                                                05/01/2007 17:10:31 PAGE 2   

  56   2      SoundTone=SOUNDTONE[j];
  57   2      i++;
  58   2      j++;
  59   2      
  60   2      for(n=0;n<SoundLong;n++)
  61   2      {
  62   3        for(k=0;k<12;k++)
  63   3        {
  64   4         P3 |=0x40;
  65   4        for(m=0;m<SoundTone/2;m++)
  66   4        ; 
  67   4        P3 &=0xbf;
  68   4        for(m=0;m<SoundTone/2;m++)
  69   4        ;
  70   4        }
  71   3      }
  72   2      delay50us(6);
  73   2      }while((SOUNDLONG !=0) || (SOUNDTONE[j] !=0));
  74   1      }
  75          
  76          //延时程序
  77          void delay10ms(unsigned char time)
  78          {
  79   1      unsigned char a,b,c;
  80   1      for(a=0;a<time;a++)
  81   1      for(b=0;b<10;b++)
  82   1        for(c=0;c<120;c++)
  83   1        ;
  84   1      }
  85          void delay50us(unsigned char time)
  86          {
  87   1      unsigned char a,b;
  88   1      for(a=0;a<time;a++)
  89   1      for(b=0;b<6;b++)
  90   1        ;
  91   1      }
  92          
  93          unsigned char code SOUNDLONG[]=
  94          {9,3,12,12,12,24,
  95          9,3,12,12,12,24,
  96          9,3,12,12,12,12,12,
  97          9,3,12,12,12,24,
  98          0, //生日快乐end
  99          6,6,9,3,6,6,12,
 100          6,6,6,6,6,6,12,
 101          6,6,9,3,6,6,9,3,
 102          6,3,3,6,3,3,6,6,9,
 103          0 //三轮车end
 104          };
 105          
 106          unsigned char code SOUNDTONE[]=
 107          {
 108          212,212,190,212,159,169,
 109          212,212,190,212,142,159,
 110          212,212,106,126,159,169,190,
 111          119,119,126,159,142,159,
 112          0, //生日快乐end
 113          239,239,212,189,159,159,189,
 114          159,159,142,126,120,120,159,
 115          120,120,142,159,189,142,159,189,
 116          239,212,189,159,142,159,189,212,239,
 117          0 //三轮车end
C51 COMPILER V7.20   MUSIC3                                                                05/01/2007 17:10:31 PAGE 3   

 118          };


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    417    ----
   CONSTANT SIZE    =    116    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       8
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -