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

📄 sprek.lst

📁 运行于51单片机的音乐彩灯源代码
💻 LST
字号:
C51 COMPILER V8.01   SPREK                                                                 05/11/2006 18:37:13 PAGE 1   


C51 COMPILER V8.01, COMPILATION OF MODULE SPREK
OBJECT MODULE PLACED IN sprek.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sprek.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include "..\h\config.h"
   2          
   3          
   4          char const aMusic1[]={
   5           0x18, 0x30, 0x1C, 0x10,
   6           0x20, 0x40, 0x1C, 0x10,
   7           0x18, 0x10, 0x20, 0x10,
   8           0x0C, 0x10, 0x18, 0x40,
   9           0x1C, 0x20, 0x20, 0x20,
  10           0x1C, 0x20, 0x18, 0x20,
  11           0x20, 0x80, 0x0F, 0x20,
  12           0x30, 0x1C, 0x10, 0x18,
  13           0x20, 0x15, 0x20, 0x1C,
  14           0x20, 0x20, 0x20, 0x26,
  15           0x40, 0x20, 0x20, 0x2B,
  16           0x20, 0x26, 0x20, 0x20,
  17           0x20, 0x30, //0xFF, 0xFF,
  18           0x20, 0x20, 0x1C, 0x10,
  19           0x18, 0x10, 0x20, 0x20,
  20           0x26, 0x20, 0x2B, 0x20,
  21           0x30, 0x20, 0x2B, 0x40,
  22           0x20, 0x20, 0x1C, 0x10,
  23           0x18, 0x10, 0x20, 0x20,
  24           0x26, 0x20, 0x2B, 0x20,
  25           0x30, 0x20, 0x2B, 0x40,
  26           0x20, 0x30, 0x1C, 0x10,
  27           0x18, 0x20, 0x15, 0x20,
  28           0x1C, 0x20, 0x20, 0x20,
  29           0x26, 0x40, 0x20, 0x20,
  30           0x2B, 0x20, 0x26, 0x20,
  31           0x20, 0x20, 0x30, 0x80,
  32           0x20, 0x30, 0x1C, 0x10,
  33           0x20, 0x10, 0x1C, 0x10,
  34           0x20, 0x20, 0x26, 0x20,
  35           0x2B, 0x20, 0x30, 0x20,
  36           0x2B, 0x40, 0x20, 0x15,
  37           0x1F, 0x05, 0x20, 0x10,
  38           0x1C, 0x10, 0x20, 0x20,
  39           0x26, 0x20, 0x2B, 0x20,
  40           0x30, 0x20, 0x2B, 0x40,
  41           0x20, 0x30, 0x1C, 0x10,
  42           0x18, 0x20, 0x15, 0x20,
  43           0x1C, 0x20, 0x20, 0x20,
  44           0x26, 0x40, 0x20, 0x20,
  45           0x2B, 0x20, 0x26, 0x20,
  46           0x20, 0x20, 0x30, 0x30,
  47           0x20, 0x30, 0x1C, 0x10,
  48           0x18, 0x40, 0x1C, 0x20,
  49           0x20, 0x20, 0x26, 0x40,
  50           0x13, 0x60, 0x18, 0x20,
  51           0x15, 0x40, 0x13, 0x40,
  52           0x18, 0x80, 0x00, 0x00,
  53          
  54           };
  55          const char aMusic2[]={
C51 COMPILER V8.01   SPREK                                                                 05/11/2006 18:37:13 PAGE 2   

  56            0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20,
  57            0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20,
  58            0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20,
  59            0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,
  60            0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10,
  61            0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20,
  62            0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20,
  63            0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,
  64            0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x60,0x39,0x10,0x30,0x10,
  65            0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80,
  66            0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20,
  67            0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20,
  68            0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10,
  69            0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x00};
  70          char const *aMusic[MUSIC_MAX];
  71          //////////////////////////////////////////////////////////////////////////////////////////////
  72          //** 函数名称 :
  73          //** 函数功能 :
  74          //** 入口参数 :             
  75          //** 出口参数 :
  76          //   使用方法 :
  77          //   注意事项 :
  78          //////////////////////////////////////////////////////////////////////////////////////////////
  79          char MUsic_reg=0;
  80          void  delay(char timer)
  81          {
  82   1        while(timer--)
  83   1        {
  84   2         _nop_(); 
  85   2         _nop_();
  86   2         _nop_();
  87   2         _nop_();
  88   2         _nop_();
  89   2         _nop_();
  90   2         _nop_();
  91   2         _nop_();   
  92   2         _nop_();
  93   2         _nop_();
  94   2         _nop_();
  95   2         _nop_();
  96   2         _nop_();
  97   2         _nop_();
  98   2         _nop_();
  99   2         _nop_();   
 100   2         _nop_();
 101   2         _nop_();
 102   2         _nop_();
 103   2         _nop_();   
 104   2         _nop_();
 105   2         _nop_();
 106   2         _nop_();
 107   2         _nop_();
 108   2         _nop_();   
 109   2         _nop_();
 110   2         _nop_();
 111   2         _nop_();
 112   2        
 113   2      
 114   2        }
 115   1      
 116   1      }
 117          //////////////////////////////////////////////////////////////////////////////////////////////
C51 COMPILER V8.01   SPREK                                                                 05/11/2006 18:37:13 PAGE 3   

 118          //** 函数名称 :
 119          //** 函数功能 :
 120          //** 入口参数 :             
 121          //** 出口参数 :
 122          //   使用方法 :
 123          //   注意事项 :
 124          //////////////////////////////////////////////////////////////////////////////////////////////
 125          void  timer1init(void)
 126          {
 127   1        TMOD|=0x10;
 128   1        IE|=0x88;
 129   1        TH1=0x0Dc;
 130   1        TL1=0x00;
 131   1      }
 132          void  time1start(void)
 133          {
 134   1        TR1=1;
 135   1      }
 136          void  time1stop(void)
 137          {
 138   1        TR1=0;
 139   1      }
 140          //////////////////////////////////////////////////////////////////////////////////////////////
 141          //** 函数名称 :
 142          //** 函数功能 :
 143          //** 入口参数 :             
 144          //** 出口参数 :
 145          //   使用方法 :
 146          //   注意事项 :
 147          //////////////////////////////////////////////////////////////////////////////////////////////
 148          void  timer1exp(void) interrupt 3
 149          {
 150   1       MUsic_reg++; 
 151   1        TH1=0x0Dc;
 152   1        TL1=0x00; 
 153   1      }
 154          //////////////////////////////////////////////////////////////////////////////////////////////
 155          //** 函数名称 :
 156          //** 函数功能 :
 157          //** 入口参数 :             
 158          //** 出口参数 :
 159          //   使用方法 :
 160          //   注意事项 :
 161          //////////////////////////////////////////////////////////////////////////////////////////////
 162          
 163          char ID_speak=0;
 164           bit MUSIC_OK=1;//为1时,不允许播放音乐
 165          
 166          void   Speak(void)
 167          {
 168   1       int h_speak=0;
 169   1       char i=0,x=0;
 170   1       while(((i=aMusic[ID_speak][h_speak++])!=0)&&(MUSIC_OK==0)) //是停止符
 171   1       {
 172   2           x=aMusic[ID_speak][h_speak++];
 173   2            if(i==0xff)  //是停顿符
 174   2            {
 175   3                 time1stop();
 176   3                 SPEAK=1;
 177   3                 delay(i); 
 178   3            }
 179   2                
C51 COMPILER V8.01   SPREK                                                                 05/11/2006 18:37:13 PAGE 4   

 180   2            else {
 181   3              
 182   3                      time1start();
 183   3              while(x!=MUsic_reg)
 184   3                      {
 185   4                       delay(i);
 186   4                       SPEAK=~SPEAK;
 187   4                      }
 188   3                      MUsic_reg=0;
 189   3              }
 190   2                      SPEAK=1;
 191   2       }
 192   1       SPEAK=1;
 193   1       time1stop();
 194   1      }
 195          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    194    ----
   CONSTANT SIZE    =    407    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      6    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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