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

📄 jiujing.lst

📁 刚刚开始编写C的时候得一个程序
💻 LST
字号:
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE JIUJING
OBJECT MODULE PLACED IN .\JIUJING.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\JIUJING.C DEBUG OBJECTEXTEND

stmt level    source

   1          
   2          #include<reg51.h>
   3          #include<math.h>
   4          #include<absacc.h>
   5          #include"jiujing.h"
   6          
   7          /*********************************************************************************************************
             -/
   8          void  main ()
   9          {
  10   1          init();
  11   1          CLRDOG=!CLRDOG;
  12   1          EA = 1;
  13   1          IT1 = 1;
  14   1          EX0 = 1;
  15   1          while(TIME_counter<=2000)
  16   1      
  17   1          while(1)
  18   1          {
  19   2             Sampling_DC();
  20   2             delay_time(10);
  21   2             CLRDOG=!CLRDOG;
  22   2             switch (LED)
  23   2              {
  24   3                   case 0:
  25   3                      {
  26   4                          P1 = 0Xff;
  27   4                          LED9 = 1;
  28   4                          LED10 = 1;
  29   4                      }break;
  30   3                   case 1:
  31   3                     {
  32   4                          P1 =0Xfe;
  33   4                          LED9 = 1;
  34   4                          LED10 = 1;
  35   4                          delay_time(200);
  36   4                          P1 = 0Xff;
  37   4                     }break;
  38   3                   case 2:
  39   3                     {
  40   4                          P1 =0Xfc;
  41   4                          LED9 = 1;
  42   4                          LED10 = 1;
  43   4                          delay_time(200);
  44   4                          P1 = 0Xff;
  45   4                      }break;
  46   3                   case 3:
  47   3                      {
  48   4                          P1 =0Xf8;
  49   4                          LED9 = 1;
  50   4                          LED10 = 1;
  51   4                          delay_time(200);
  52   4                          P1 = 0Xff;
  53   4                      }break;
  54   3                   case 4:
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 2   

  55   3                      {
  56   4                          P1 =0Xf0;
  57   4                          LED9 = 1;
  58   4                          LED10 = 1;
  59   4                          delay_time(200);
  60   4                          P1 = 0Xff;
  61   4                      }
  62   3                   case 5:
  63   3                      {
  64   4                          P1 =0Xe0;
  65   4                          LED9 = 1;
  66   4                          LED10 = 1;
  67   4                          delay_time(200);
  68   4                          P1 = 0Xff;
  69   4                      }break;
  70   3                   case 6:
  71   3                      {
  72   4                          P1 =0Xc0;
  73   4                          LED9 = 1;
  74   4                          LED10 = 1;
  75   4                          delay_time(200);
  76   4                          P1 = 0Xff;
  77   4                      }break;
  78   3                   case 7:
  79   3                      {
  80   4                          P1 =0X80;
  81   4                          LED9 = 1;
  82   4                          LED10 = 1;
  83   4                          delay_time(200);
  84   4                          P1 = 0Xff;
  85   4                      }break;
  86   3                   case 8:
  87   3                       {
  88   4                          P1 =0X00;
  89   4                          LED9 = 1;
  90   4                          LED10 = 1;
  91   4                          delay_time(200);
  92   4                          P1 = 0Xff;
  93   4                       }break;
  94   3                   case 9:
  95   3                       {
  96   4                          P1 =0X00;
  97   4                          LED9 = 0;
  98   4                          LED10 = 1;
  99   4                          delay_time(200);
 100   4                          P1 = 0Xff;
 101   4                          LED9 = 1;
 102   4                       }break;
 103   3                   case 10:
 104   3                       {
 105   4                          P1 =0X00;
 106   4                          LED9 = 0;
 107   4                          LED10 = 0;
 108   4                          delay_time(200);
 109   4                          P1 = 0Xff;
 110   4                          LED9 = 1;
 111   4                          LED10 = 1;
 112   4                       }break;
 113   3                   default:break;
 114   3              }
 115   2             if(RXD_REDAY==1)
 116   2              {
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 3   

 117   3                   if(TIME_counter>255)
 118   3                    {
 119   4                        send(0x1b);
 120   4                        send(23);
 121   4                        RXD_REDAY = 0;
 122   4                    }
 123   3                   send_comm();
 124   3                   RXD_REDAY = 0;
 125   3              }
 126   2          }
 127   1      }
 128          
 129          /****************************************************************************************************/
 130          
 131          void init()
 132          {
 133   1          P0 = 0Xff;
 134   1          P1 = 0Xff;
 135   1          P2 = 0Xff;
 136   1      
 137   1          init_comm();
 138   1      
 139   1          TH0 = 0Xfb;
 140   1          TL0 = 0X80;
 141   1      
 142   1          ET0=1;
 143   1          PX0=1;
 144   1          return;
 145   1      
 146   1      
 147   1      }
 148          /**************************************************************************************************/
 149          
 150          void Int0() interrupt 0 using 0
 151          {
 152   1          EX0 = 0;
 153   1          END = 1;
 154   1          EX0 = 1;
 155   1          return;
 156   1      }
 157          /*************************************************************************************************/
 158          
 159          void Timer0() interrupt 1 using 1
 160          {
 161   1          TH0 = 0X15;
 162   1          CLRDOG=!CLRDOG;
 163   1          TL0 = 0xa0;
 164   1          TIME_counter++;
 165   1          return;
 166   1      }
 167          
 168          /******************************************************************************************************/
 169          uint Ad574(void)
 170          {
 171   1          uint ad;
 172   1          uint  Adh,Adl;
 173   1          END =0;
 174   1          STARTAD574 = 0;
 175   1          //while(!END);
 176   1      
 177   1          Adh = AD574H;
 178   1          Adl = AD574L;
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 4   

 179   1          Adh<<=4;
 180   1          Adl<<=4;
 181   1          ad = Adh|Adl;
 182   1          return(ad);
 183   1      }
 184          
 185          /***************************************************************************************************/
 186          void  delay_time(uint k)
 187          {
 188   1          uchar m,n;
 189   1          for( m=0;m<k;m++)
 190   1           {
 191   2                for(n=0;n<255;n++)
 192   2                 {
 193   3                 }
 194   2           }
 195   1      }
 196          /******************************************************************************************************/
 197          void init_comm()
 198          {
 199   1           TMOD = 0X21;
 200   1           TH1 = 0Xfd;
 201   1           TL1 = 0Xfd;
 202   1           PCON = PCON&0X7f;
 203   1           SCON =0X40;
 204   1           REN =1;
 205   1           TR1 = 1;
 206   1           ES = 1;
 207   1           return;
 208   1      }
 209          /*************************************************************************************************/
 210          void serial() interrupt 4 using 3
 211          {
 212   1          uchar RXD_buf;
 213   1          ES =0;
 214   1          RXD_buf = SBUF;
 215   1          switch (RXD_number)
 216   1           {
 217   2               case 0: if(RXD_buf == 0X1b)
 218   2                         {
 219   3                             RXD_REDAY =1;
 220   3                             RXD_number++;
 221   3                         }
 222   2                       else
 223   2                         {
 224   3                              RXD_number = 0;
 225   3                         }break;
 226   2      
 227   2                case 1: if((RXD_buf >= 1)&&(RXD_buf<=255))
 228   2                          {
 229   3                              TIME_counter = RXD_buf;
 230   3                              RXD_number = 0;
 231   3                          }
 232   2                         else
 233   2                          {
 234   3                              RXD_number = 0;
 235   3                              TIME_counter = 200;
 236   3                          }break;
 237   2                default:break;
 238   2           }
 239   1          RI = 0;
 240   1          ES = 1;
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 5   

 241   1          return;
 242   1      }
 243          /****************************************************************************************************/
 244          
 245          void send(uchar i)
 246          {
 247   1          SBUF =i;
 248   1          while(!TI);
 249   1          TI = 0;
 250   1          return;
 251   1      }
 252          /***************************************************************************************************/
 253          void  send_comm()
 254          {
 255   1          uchar message;
 256   1          message = 0X1b;
 257   1          send(message);
 258   1          message = LED;
 259   1          send(message);
 260   1          return;
 261   1      }
 262          
 263          
 264          /******************************************************************************************************/
 265          void  Sampling_DC(void)
 266          {
 267   1          uchar i;
 268   1          int value, r,big[2] = 0,sml = 4096;
 269   1          DC_END= 0;
 270   1          while(!DC_END)
 271   1           {
 272   2               for(i=0;i<2;i++)
 273   2                {
 274   3                   r=Ad574();
 275   3                   if( r >= big[i]){ big[i] = r;}
 276   3                   if( r >= sml)
 277   3                    {
 278   4                       DC_END=1;
 279   4                       big[0] = big[1];
 280   4                    }
 281   3                   delay_time(10);
 282   3                }
 283   2               if(big[1]<=big[0])
 284   2                {
 285   3                    DC_END = 1;
 286   3                }
 287   2           }
 288   1          value = big[0];
 289   1          if((value>0)&&(value<=409))
 290   1           {
 291   2              LED=1;
 292   2           }
 293   1      
 294   1          if((value>409)&&(value<=818))
 295   1           {
 296   2              LED=2;
 297   2           }
 298   1      
 299   1          if((value>818)&&(value<=1227))
 300   1           {
 301   2              LED=3;
 302   2           }
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 6   

 303   1      
 304   1          if((value>1227)&&(value<=1636))
 305   1           {
 306   2              LED=4;
 307   2           }
 308   1      
 309   1          if((value>1636)&&(value<=2045))
 310   1           {
 311   2              LED=5;
 312   2           }
 313   1      
 314   1          if((value>2045)&&(value<=2454))
 315   1           {
 316   2              LED=6;
 317   2           }
 318   1      
 319   1          if((value>2454)&&(value<=2863))
 320   1           {
 321   2              LED=7;
 322   2           }
 323   1      
 324   1          if((value>2863)&&(value<=3272))
 325   1           {
 326   2              LED=8;
 327   2           }
 328   1      
 329   1          if((value>3272)&&(value<=3681))
 330   1           {
 331   2              LED=9;
 332   2           }
 333   1      
 334   1          if((value>3681)&&(value<=4096))
 335   1           {
 336   2              LED=10;
 337   2           }
 338   1          else
 339   1           {
 340   2              LED =0;
 341   2           }
 342   1          return;
 343   1      }
 344          
 345          
 346          
 347          
 348          
 349          
 350          
 351          
 352          
 353          
 354          
 355          
 356          
 357          
 358          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    904    ----
   CONSTANT SIZE    =      4    ----
   XDATA SIZE       =   ----    ----
C51 COMPILER V6.12  JIUJING                                                                11/09/2005 14:43:16 PAGE 7   

   PDATA SIZE       =   ----    ----
   DATA SIZE        =      4       6
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      3    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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