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

📄 1.lst

📁 本人设计的汽车用燃油加热器控制程序
💻 LST
字号:
C51 COMPILER V7.06   1                                                                     09/14/2005 22:34:03 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE 1
OBJECT MODULE PLACED IN 1.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL C51\C51\BIN\C51.EXE 1.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include<reg52.h>
   2          #include<stdio.h>
   3          #include<intrins.h>
   4          #include<string.h>
   5          #define uchar unsigned char
   6          #define uint unsigned int
   7          
   8                             /* 0   1     2    3    4     5   6    7   8     9   H     L   n    */
   9          uchar code table[]={0x14,0x77,0x4c,0x45,0x27,0x85,0x84,0x57,0x04,0x05,0x26,0xf4,0xe6,0xff,0xff};
  10          uchar idata buf[]={0,1,2,3,4,5,6,7,8,9,10,11,12};
  11          uchar idata buf1[]={0,1,2,3,4,5,6,7,8,9,10,11,12};
  12          void dis(uchar idata *t);
  13          sbit keysub=P3^6;
  14          sbit keyadd=P3^5;
  15          sbit out=P2^4;
  16          sbit setting=P3^7;
  17          bit flag=1;
  18          uint hh=25;uint ll=50;uint h=50;uint l=25; uchar nn=20;
  19           key(){char i;uchar dy=250; 
  20   1               TR0=1;ET0=1;
  21   1               
  22   1                                    do{ buf1[2]=nn/10;
  23   2                                  buf1[0]=nn%10;
  24   2                                  buf1[1]=0x0c;
  25   2                                      buf1[3]=0x0a;
  26   2                                                              dis(buf1+3);}while(!setting);
  27   1                                  _nop_();
  28   1                        do{               _nop_();
  29   2                                                              buf1[2]=nn/10;
  30   2                                  buf1[0]=nn%10;
  31   2                                  buf1[1]=0x0c;
  32   2                                      buf1[3]=0x0a;
  33   2                                                              dis(buf1+3);
  34   2                                  _nop_();  
  35   2             if(!keyadd)do{if(++nn>30){nn=30;}
  36   3                                  buf1[2]=nn/10;
  37   3                                  buf1[0]=nn%10;
  38   3                                  buf1[1]=0x0c;
  39   3                                      buf1[3]=0x0a;
  40   3                                                                      for(i=0;i<50;i++){
  41   4                                                              while(--dy);
  42   4                                                              while(--dy);
  43   4                                  dis(buf1+3); 
  44   4                                                              while(--dy);}
  45   3                                              }while(!keyadd);
  46   2                if(!keysub)do{if(1<nn){--nn;}
  47   3                              else{nn=1;}
  48   3                                                           buf1[2]=nn/10;
  49   3                                   buf1[0]=nn%10;
  50   3                                   buf1[1]=0x0c;
  51   3                                   buf1[3]=0x0a;
  52   3                                      for(i=0;i<50;i++){
  53   4                                                              while(--dy);
  54   4                                                              while(--dy);
  55   4                                                              dis(buf1+3);
C51 COMPILER V7.06   1                                                                     09/14/2005 22:34:03 PAGE 2   

  56   4                                                              while(--dy);}
  57   3                                        }while(!keysub);
  58   2                           }while(setting);
  59   1      
  60   1                      do{                 _nop_();
  61   2                                                              buf1[2]=nn/10;
  62   2                                  buf1[0]=nn%10;
  63   2                                  buf1[1]=0x0c;
  64   2                                      buf1[3]=0x0a;
  65   2                                                              dis(buf1+3);
  66   2                      }while(!setting);
  67   1               _nop_();
  68   1               _nop_();
  69   1       TR0=0;ET0=0;
  70   1        hh=ll=h=l=(500/nn);
  71   1         TR0=1;ET0=1;
  72   1       
  73   1          
  74   1       }  
  75          
  76          
  77          
  78          void main(){
  79   1          
  80   1         TMOD=0x11;
  81   1         TH0=0xfc;
  82   1         TL0=0x4a;
  83   1         
  84   1         EA=1;
  85   1         ET0=1;
  86   1         TR0=1;                    
  87   1         TH1=0xd8;
  88   1         TL1=0xf0;
  89   1         ET1=0;
  90   1         TR1=0;   
  91   1         while(1){ 
  92   2      
  93   2               
  94   2                            
  95   2        if(!setting){
  96   3        _nop_();
  97   3        _nop_();
  98   3        _nop_();
  99   3        TR0=0;ET0=0;
 100   3         key();
 101   3                    } 
 102   2               else{              buf1[2]=nn/10;
 103   3                              buf1[0]=nn%10;
 104   3                              buf1[1]=0x0d;
 105   3                              buf1[3]=0x0d;
 106   3                              dis(buf1+3);
 107   3                              _nop_();
 108   3                                  _nop_();}
 109   2       } 
 110   1      }
 111          void dis  (uchar idata *t){
 112   1          uchar i;uchar m=100;uchar rl=0x01;
 113   1              for(i=0;i<=3;i++){      
 114   2                 P1=table[*t];
 115   2                 P3=~rl;
 116   2                 
 117   2                 rl=(rl<<1);
C51 COMPILER V7.06   1                                                                     09/14/2005 22:34:03 PAGE 3   

 118   2                 t--;
 119   2                 while(--m);
 120   2                
 121   2              }
 122   1      
 123   1      }
 124           time0() interrupt 1 using 1{
 125   1            
 126   1            TH0=0xfc;
 127   1            TL0=0x4a;
 128   1                P1=0xff;P3=0xff;
 129   1                if(flag){if(h!=0){--h;}
 130   2                        else {out=!out;h=hh;}
 131   2                                }
 132   1            else {if(l!=0){--l;}
 133   2                          else{out=!out;l=ll;}
 134   2                              }
 135   1      
 136   1           
 137   1      }
 138          
 139          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    421    ----
   CONSTANT SIZE    =     15    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      9       2
   IDATA SIZE       =     26    ----
   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 + -