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

📄 main.lst

📁 单片机演奏乐曲的程序
💻 LST
字号:
C51 COMPILER V7.07   MAIN                                                                  10/12/2005 17:27:19 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include <reg51.h>
   2          void Music(unsigned char number);
   3          void delay10ms(unsigned char time);
   4          void delay50us(unsigned char time);
   5          unsigned char code SOUNDLONG[];
   6          unsigned char code SOUNDTONE[]; 
   7          sbit spk=P3^5;
   8          void main()
   9          { 
  10   1              while(1) 
  11   1              {  
  12   2                      Music(1);  //生日快乐  
  13   2                      delay10ms(250); 
  14   2                      delay10ms(250); 
  15   2                      Music(2);  //三轮车  
  16   2                      delay10ms(250);
  17   2                      delay10ms(250); }
  18   1      }
  19          
  20          void Music(unsigned char number)
  21          { 
  22   1              unsigned int k,n; 
  23   1              unsigned int SoundLong,SoundTone; 
  24   1              unsigned int i,j,m; 
  25   1              for(k=0;k<number-1;k++) 
  26   1              {  
  27   2                      while(SOUNDLONG[i] !=0)
  28   2                      {i++;}  
  29   2                      i++;  
  30   2                      if(i>=57) 
  31   2                      i=0; 
  32   2              } 
  33   1              for(k=0;k<number-1;k++) 
  34   1              {  
  35   2                      while(SOUNDTONE[j] !=0)
  36   2                      {j++;} 
  37   2                      j++;  
  38   2                      if(j>=57) 
  39   2                      j=0; 
  40   2              } 
  41   1              do {
  42   2                      if(i>=57) 
  43   2                              i=0;
  44   2                      if(j>=57)
  45   2                              j=0;
  46   2                  SoundLong=SOUNDLONG[i];  
  47   2                      SoundTone=SOUNDTONE[j];  
  48   2                      i++;  
  49   2                      j++;
  50   2                      for(n=0;n<SoundLong;n++)
  51   2                      {   
  52   3                              for(k=0;k<12;k++)   
  53   3                              {    
  54   4                                      spk=0;
  55   4                                  for(m=0;m<SoundTone/2;m++);
C51 COMPILER V7.07   MAIN                                                                  10/12/2005 17:27:19 PAGE 2   

  56   4                              spk=1;
  57   4                                  for(m=0;m<SoundTone/2;m++);
  58   4                         }  
  59   3                      }  
  60   2                      delay50us(6); 
  61   2                      }while((SOUNDLONG[i] !=0) || (SOUNDTONE[j] !=0));
  62   1      }//延时程序
  63          
  64          void delay10ms(unsigned char time)
  65          { 
  66   1              unsigned char a,b,c; 
  67   1              for(a=0;a<time;a++)  
  68   1                      for(b=0;b<10;b++)
  69   1                              for(c=0;c<120;c++);
  70   1      }
  71          void delay50us(unsigned char time)
  72          { 
  73   1              unsigned char a,b; 
  74   1              for(a=0;a<time;a++)  
  75   1                      for(b=0;b<6;b++);
  76   1      }
  77          
  78          unsigned char code SOUNDLONG[]= {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, /
             -/生日快乐end  
  79                                                                          6,6,9,3,6,6,12,6,6,6,6,6,6,12,6,6,9,3,6,6,9,3,6,3,3,6,3,3,6,6,9,  0 //三轮车end 
  80                                                                          };
  81          
  82          unsigned char code SOUNDTONE[]={212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,159,169,19
             -0,119,119,126,159,142,159,0, //生日快乐end
  83                                                                          239,239,212,189,159,159,189,159,159,142,126,120,120,159,120,120,142,159,189,142,159,189,239,212,18
             -9,159,142,159,189,212,239,0//三轮车end
  84                                                                          };
  85          
  86          
  87          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    448    ----
   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 + -