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

📄 sy.lst

📁 本程序能用单片机实现音乐的输出
💻 LST
字号:
C51 COMPILER V7.50   SY                                                                    08/17/2007 18:50:53 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE SY
OBJECT MODULE PLACED IN sy.OBJ
COMPILER INVOKED BY: D:\keil uvision3\C51\BIN\C51.EXE sy.c BROWSE DEBUG OBJECTEXTEND

line level    source

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

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


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    448    ----
   CONSTANT SIZE    =    116    ----
   XDATA SIZE       =   ----    ----
C51 COMPILER V7.50   SY                                                                    08/17/2007 18:50:53 PAGE 3   

   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 + -