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

📄 qiantaiv11.lst

📁 LED照明行业地砖及护栏控制器程序 从现况来看
💻 LST
字号:
C51 COMPILER V7.06   QIANTAIV11                                                            12/08/2004 15:27:00 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE QIANTAIV11
OBJECT MODULE PLACED IN qiantaiv11.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE qiantaiv11.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          //************************************
   2          //****护栏灯管控制程序********* 
   3          //****  2004-06-19    mcu at89c2051 172800BPS  OSC 11.0592MHZ
   4          // ding li zhao ming
   5          //************************************
   6          #include <reg51.h>
   7          #include <stdio.h>//一般I/O函数
   8          #include <stdlib.h>//标准函数
   9          #include <absacc.h>//绝对地址
  10          #include <intrins.h>//内部函数  
  11          #include <setjmp.h>
  12          #define uchar unsigned char
  13          #define uint unsigned int
  14          #define Byte unsigned char
  15          #define Word unsigned int
  16          #define ulong unsigned long
  17          #define bool bit
  18          #define true 1
  19          #define false 0
  20          #define V_TH0   0xff  /* 时间常数高8位 (65536-500)/256                  */
  21          #define V_TL0   0x80  /* 时间常数低8位 (65536-500)%256   11.0592*/
  22          #define ADD 2
  23          
  24          //******************************
  25          uchar code x64cr[]=
  26          {
  27          31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,
  28          30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0,
  29          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
  30          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
  31          0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,
  32          31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,
  33          
  34          };
  35          //*****************************************************************************
  36          uchar code x64cg[]=
  37          {
  38          0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,
  39          31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,
  40          31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,
  41          31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0,
  42          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
  43          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
  44          
  45          };
  46          //*************************************
  47          uchar code x64cb[]=
  48          {
  49          0,0,0,0,0,0,0,0,
  50          0,0,0,0,0,0,0,0,
  51          0,0,0,0,0,0,0,0,
  52          0,0,0,0,0,0,0,0,
  53          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
  54          0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,
  55          31,31,31,31,31,31,31,31,
C51 COMPILER V7.06   QIANTAIV11                                                            12/08/2004 15:27:00 PAGE 2   

  56          31,31,31,31,31,31,31,31,
  57          31,31,31,31,31,31,31,31,
  58          31,31,31,31,31,31,31,31,
  59          31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,
  60          31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0,
  61          
  62          };
  63          //******************************
  64          uchar   code    x7cr[]=
  65          {
  66          31,31,0,0,0,31,31,
  67          };
  68          //******************************
  69          uchar   code    x7cg[]=
  70          {
  71          0,31,31,31,0,0,31,
  72          };
  73          //******************************
  74          uchar   code    x7cb[]=
  75          {
  76          0,0,0,31,31,31,31,
  77          };
  78          
  79          //******************************
  80          
  81          sbit red0=P1^0;
  82          sbit grn0=P1^1;
  83          sbit blu0=P1^2;
  84          
  85          sbit red1=P1^3;
  86          sbit grn1=P1^4;
  87          sbit blu1=P1^5;
  88          
  89          sbit red2=P1^6;
  90          sbit grn2=P1^7;
  91          sbit blu2=P2^7;
  92          
  93          
  94          
  95          
  96          
  97          //**************************************************************
  98          uchar   mode;
  99          uchar   pointer;
 100          uchar   dis_red0,dis_red1,dis_red2;
 101          uchar   dis_grn0,dis_grn1,dis_grn2;
 102          uchar   dis_blu0,dis_blu1,dis_blu2;
 103          
 104          uchar   pwm,rl;
 105          uchar bdata flags;
 106          sbit flag0=flags^0;
 107          sbit flag1=flags^1;
 108          sbit flag2=flags^2;
 109          sbit flag3=flags^3;
 110          
 111          //*****************************************
 112          //       延时
 113          //**************************************
 114          void delay(uint tim)
 115          {
 116   1      uint i;
 117   1      while(tim!=0)
C51 COMPILER V7.06   QIANTAIV11                                                            12/08/2004 15:27:00 PAGE 3   

 118   1              {
 119   2              for(i=0;i<500;i++);
 120   2              tim--;
 121   2              }
 122   1      }
 123          //********************************
 124          // 多彩流动
 125          //***************************************
 126          void    qczz(uint speed)
 127          {
 128   1      uchar i,j;
 129   1      for(i=0;i<8;i++)
 130   1              for(j=0;j<7;j++)
 131   1                      {
 132   2              dis_red0=x7cr[j];
 133   2              dis_red1=x7cr[j+1];
 134   2              dis_red2=x7cr[j+2];
 135   2      
 136   2              dis_grn0=x7cg[j];
 137   2              dis_grn1=x7cg[j+1];
 138   2              dis_grn2=x7cg[j+2];
 139   2      
 140   2              dis_blu0=x7cb[j];
 141   2              dis_blu1=x7cb[j+1];
 142   2              dis_blu2=x7cb[j+2];
 143   2              delay(speed);
 144   2              }
 145   1              for(j=0;j<3;j++)
 146   1                      {
 147   2              dis_red0=x7cr[j];
 148   2              dis_red1=x7cr[j+1];
 149   2              dis_red2=x7cr[j+2];
 150   2      
 151   2              dis_grn0=x7cg[j];
 152   2              dis_grn1=x7cg[j+1];
 153   2              dis_grn2=x7cg[j+2];
 154   2      
 155   2              dis_blu0=0;
 156   2              dis_blu1=0;
 157   2              dis_blu2=0;
 158   2              delay(speed);
 159   2              }
 160   1      }
 161          //********************************
 162          // 多彩流动
 163          //***************************************
 164          void    qcld(uint speed,uchar step)
 165          {
 166   1      uchar j;
 167   1      for(j=0;j<189;j+=step)
 168   1              {
 169   2              dis_red0=x64cr[j];
 170   2              dis_red1=x64cr[j+1];
 171   2              dis_red2=x64cr[j+2];
 172   2      
 173   2              dis_grn0=x64cg[j];
 174   2              dis_grn1=x64cg[j+1];
 175   2              dis_grn2=x64cg[j+2];
 176   2      
 177   2              dis_blu0=x64cb[j];
 178   2              dis_blu1=x64cb[j+1];
 179   2              dis_blu2=x64cb[j+2];
C51 COMPILER V7.06   QIANTAIV11                                                            12/08/2004 15:27:00 PAGE 4   

 180   2              delay(speed);
 181   2              }
 182   1      }
 183          //************************************
 184          //七彩过渡
 185          //**********************************
 186          
 187          void    qcgd(uint speed)
 188          {
 189   1      uchar i;
 190   1      dis_red0=dis_red1=dis_red2=0;
 191   1      dis_grn0=dis_grn1=dis_grn2=0;
 192   1      dis_blu0=dis_blu1=dis_blu2=0;
 193   1      for(i=1;i<32;i++)
 194   1              {dis_red0=dis_red1=dis_red2=i;
 195   2              delay(speed);
 196   2              }
 197   1      for(i=1;i<32;i++)
 198   1              {//dis_red0=dis_red1=dis_red2=dis_red3=i;
 199   2              dis_grn0=dis_grn1=dis_grn2=i;           //yello
 200   2              delay(speed);
 201   2              }
 202   1      for(i=31;i<255;i--)
 203   1              {dis_red0=dis_red1=dis_red2=i; //green
 204   2              delay(speed);
 205   2              }
 206   1      for(i=1;i<32;i++)
 207   1              {//dis_red0=dis_red1=dis_red2=dis_red3=i;
 208   2              dis_blu0=dis_blu1=dis_blu2=i;
 209   2              delay(speed);
 210   2              }
 211   1      for(i=31;i<255;i--)
 212   1              {//dis_red0=dis_red1=dis_red2=dis_red3=i; //blue
 213   2              dis_grn0=dis_grn1=dis_grn2=i;           
 214   2              delay(speed);
 215   2              }
 216   1      for(i=1;i<32;i++)
 217   1              {dis_red0=dis_red1=dis_red2=i;
 218   2              delay(speed);
 219   2              }
 220   1      for(i=31;i<255;i--)
 221   1              {dis_grn0=dis_grn1=dis_grn2=i; //green
 222   2              delay(speed);
 223   2              }
 224   1      }
 225          
 226          //*****************************************
 227          //*********************************
 228          void main(void)
 229          {
 230   1      
 231   1      TMOD=0x01;
 232   1      TL0=V_TL0;
 233   1      TH0=V_TH0;
 234   1      TR0=1;
 235   1      ET0=1;
 236   1      TR1=1;
 237   1      EA=1;
 238   1      rl=0x01;
 239   1      while(1)
 240   1              {
 241   2              qczz(100);
C51 COMPILER V7.06   QIANTAIV11                                                            12/08/2004 15:27:00 PAGE 5   

 242   2              qczz(50);
 243   2              qcgd(100);
 244   2              qcld(20,1);
 245   2              qcld(40,2);
 246   2              qcld(80,4);
 247   2              qcld(60,8);
 248   2              qcld(100,16);
 249   2              qcld(80,8);
 250   2              qcld(60,4);
 251   2              qcld(40,2);
 252   2              qcld(20,1);
 253   2      
 254   2              qcld(20,2);
 255   2              qcld(40,4);
 256   2              qcld(60,8);
 257   2              qcld(80,16);
 258   2              qcld(60,8);
 259   2              qcld(40,4);
 260   2              qcld(20,2);
 261   2              qcld(90,16);
 262   2              qcld(90,16);
 263   2              qcld(90,16);
 264   2              qcld(180,31);
 265   2              qcld(180,31);
 266   2              qcld(180,31);
 267   2              qcld(180,31);
 268   2      
 269   2              }
 270   1      }
 271          
 272          //**************************************
 273          void pwmout(void)
 274          {
 275   1      red0=(bit)(dis_red0&rl);
 276   1      red1=(bit)(dis_red1&rl);
 277   1      red2=(bit)(dis_red2&rl);
 278   1      grn0=(bit)(dis_grn0&rl);
 279   1      grn1=(bit)(dis_grn1&rl);
 280   1      grn2=(bit)(dis_grn2&rl);
 281   1      blu0=(bit)(dis_blu0&rl);
 282   1      blu1=(bit)(dis_blu1&rl);
 283   1      blu2=(bit)(dis_blu2&rl);
 284   1      }
 285          //*******************************************
 286          void timer1() interrupt  1  
 287          {TR0=0;
 288   1       pwm++;
 289   1              switch(pwm)
 290   1                      {
 291   2                      case    1:
 292   2                              pwmout();
 293   2                              rl=0x02;
 294   2                      break;
 295   2                      case    2:
 296   2                              pwmout();
 297   2                              rl=0x04;
 298   2                      break;
 299   2                      case    4:
 300   2                              pwmout();
 301   2                              rl=0x08;
 302   2                      break;
 303   2                      case    8:
C51 COMPILER V7.06   QIANTAIV11                                                            12/08/2004 15:27:00 PAGE 6   

 304   2                              pwmout();
 305   2                              rl=0x10;
 306   2                      break;
 307   2                      case    16:
 308   2                              pwmout();
 309   2                              rl=0x01;
 310   2                      break;
 311   2                      case    31:
 312   2                              pwm=0;
 313   2                      break;
 314   2                      default:        break;
 315   2                      }
 316   1              TL0=V_TL0;
 317   1              TH0=V_TH0;
 318   1              TR0=1;
 319   1      }//end sub


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    789    ----
   CONSTANT SIZE    =    596    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     14       4
   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 + -