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

📄 text1.lst

📁 这是我在07年索尼杯做电动车跷跷板题目的源码
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   TEXT1                                                                 09/06/2007 19:50:59 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: F:\keil 7.06\keil 7.06\安装的\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include <AT89X52.H>
   2          #include <intrins.h>
   3          #define uchar   unsigned char
   4          #define uint    unsigned int
   5          
   6          sbit A_input1 = P1^4;
   7          sbit A_input2 = P1^5;
   8          sbit A_enable = P1^2;//控制驱动机
   9          sbit B_input1 = P1^6;
  10          sbit B_input2 = P1^7;
  11          sbit B_enable = P1^3;//控制舵动机
  12          //sbit endd = P2^0;     //接后面的红外检测
  13          sbit left =P0^7; 
  14          sbit midleft=P0^6;  
  15          sbit midrigh=P0^5;  
  16          sbit righ=P0^4;  
  17          sbit intrep1=P0^3;//接1中断  
  18          sbit K1=P2^0;  //按键  
  19          sbit K2=P2^1;
  20          sbit K3=P2^2;
  21          sbit K4=P2^3;
  22          sbit  CLK=P0^0;
  23          sbit  DAT=P0^1;
  24          sbit  CS =P0^2;
  25          sbit led =P1^1;
  26          uint s,s1,c4,c5,c6;
  27          uchar DATA_7SEG[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90 };
  28          unsigned int set,shu1,shu2,c8,c9,m,time1,time2,time3,time4,time5,time6,time7,t,t1;
  29          int ph,ph1,we,wr,wt,wy,g1,f1,f2,f3,f4,f5,nn=8,mm,qq;
  30          long c1,c2,c3;
  31          long adc,w,wz,w1;
  32          
  33          /*延时子函数*/
  34          void delay(uint kk)
  35          {
  36   1      uint i1,j1;
  37   1      for(i1=0;i1<kk;i1++)
  38   1      {
  39   2      for(j1=0;j1<248;j1++)
  40   2      {;}
  41   2      }
  42   1      }
  43          
  44          uchar TLC549ADC(void)
  45          {
  46   1              uchar i,x;
  47   1              CLK=0;
  48   1          DAT=1;
  49   1          CS=0;
  50   1              for(i=0;i<8;i++)
  51   1              {
  52   2                      CLK=1; 
  53   2                      ;
  54   2              ;
  55   2              x<<=1;
C51 COMPILER V7.06   TEXT1                                                                 09/06/2007 19:50:59 PAGE 2   

  56   2              if(DAT==1) x++;
  57   2              CLK=0; 
  58   2              ;
  59   2            ;
  60   2              }
  61   1        
  62   1              CS=1;
  63   1              return (x);
  64   1      }
  65          
  66          void xiansishij()
  67          {P3=DATA_7SEG[time3];P2_4=0;delay(1);
  68   1      P2_4=1;
  69   1      P3=DATA_7SEG[time6];P2_7=0;delay(1);
  70   1      P2_7=1;
  71   1      P3=DATA_7SEG[time5];P2_6=0;delay(1);
  72   1      P2_6=1;
  73   1      P3=DATA_7SEG[time4]&0x7f;P2_5=0;delay(1);
  74   1      P2_5=1;
  75   1      }
  76          
  77          void guiji()
  78          {int z;
  79   1      
  80   1      if((midleft==0)&&(midrigh==0)&&(left==0)&&(righ==0))             
  81   1      
  82   1                        {        
  83   2                                 B_input1=0;
  84   2                                 B_input2=0;
  85   2                                 B_enable=0;
  86   2                                                         A_input1 = 1;
  87   2                                 A_input2 = 0;
  88   2                                 A_enable = 1;
  89   2                               }
  90   1      
  91   1       if(midleft==1){ 
  92   2                    B_input1=1;
  93   2                    B_input2=0;
  94   2                    B_enable = 1;
  95   2                   for(z=0;z<40;z++);
  96   2                               
  97   2                       B_input1=0;
  98   2                         B_input2=1;
  99   2                          B_enable = 1;
 100   2                                for(z=0;z<20;z++);
 101   2                                    
 102   2                                         
 103   2                                         }
 104   1       if(midrigh==1){ 
 105   2                  B_input1=0;
 106   2                    B_input2=1;
 107   2                    B_enable=1;
 108   2                   for(z=0;z<40;z++);
 109   2                               
 110   2                                 B_input1=1;
 111   2                         B_input2=0;
 112   2                          B_enable = 1;
 113   2                                for(z=0;z<20;z++);
 114   2                                     
 115   2                                         
 116   2                                }
 117   1      if(left==1){  //c8=0x02;
C51 COMPILER V7.06   TEXT1                                                                 09/06/2007 19:50:59 PAGE 3   

 118   2                    //c9=0x00;
 119   2                    B_input1=1;
 120   2                    B_input2=0;
 121   2                    B_enable = 1;
 122   2                    for(z=0;z<40;z++);
 123   2                                
 124   2                              B_input1=0;
 125   2                    B_input2=1;
 126   2                    B_enable = 1;
 127   2                                for(z=0;z<20;z++);
 128   2                                    // B_input1=0;
 129   2                        // B_input2=0;
 130   2                         //B_enable=0;
 131   2                                         
 132   2                                         }
 133   1      if(righ==1){  //c8=0x02;
 134   2                    //c9=0x00;
 135   2                    B_input1=0;
 136   2                    B_input2=1;
 137   2                    B_enable=1;
 138   2                    for(z=0;z<40;z++);
 139   2                               
 140   2                               B_input1=1;
 141   2                         B_input2=0;
 142   2                          B_enable = 1;
 143   2                                for(z=0;z<20;z++);
 144   2                                     //B_input1=0;
 145   2                         //B_input2=0;
 146   2                         //B_enable=0;
 147   2                                         
 148   2                                         }
 149   1                } 
 150          
 151          
 152          void xiansi()
 153          {P3=0xc0;P2_4=0;delay(2);
 154   1      P2_4=1;
 155   1      P3=DATA_7SEG[c1]&0x7f;P2_7=0;delay(2);
 156   1      P2_7=1;
 157   1      P3=DATA_7SEG[c2];P2_6=0;delay(2);
 158   1      P2_6=1;
 159   1      P3=DATA_7SEG[c3];P2_5=0;delay(2);
 160   1      P2_5=1;
 161   1      }
 162          
 163          
 164          void xiansi1()
 165          {P3=0xc0;P2_4=0;delay(2);
 166   1      P2_4=1;
 167   1      P3=DATA_7SEG[c4];P2_7=0;delay(2);
 168   1      P2_7=1;
 169   1      P3=DATA_7SEG[c5];P2_6=0;delay(2);
 170   1      P2_6=1;
 171   1      P3=DATA_7SEG[c6]&0x7f;P2_5=0;delay(2);
 172   1      P2_5=1;
 173   1      }
 174          
 175          
 176          
 177          void dianya()  //看平衡电压的函数
 178          { led=0;
 179   1        adc=TLC549ADC();
C51 COMPILER V7.06   TEXT1                                                                 09/06/2007 19:50:59 PAGE 4   

 180   1        w1=(adc*500)/255;
 181   1        ph1++; 
 182   1      if(ph1>5)
 183   1       {
 184   2        w=w1;
 185   2        ph1=0;
 186   2        }
 187   1        c1=w%10;
 188   1        c2=(w/10)%10;
 189   1        c3=(w/100)%10;
 190   1        xiansi();
 191   1        led=0;
 192   1        }
 193          
 194          
 195           void xiansishu()
 196           {P3=0xc0;P2_4=0;delay(1);
 197   1      P2_4=1;
 198   1      P3=0xc0;P2_7=0;delay(1);
 199   1      P2_7=1;
 200   1      P3=DATA_7SEG[f3];P2_6=0;delay(1);
 201   1      P2_6=1;
 202   1      P3=DATA_7SEG[f4]&0x7f;P2_5=0;delay(1);
 203   1      P2_5=1;
 204   1      }
 205          
 206          void xiangais()
 207          {P3=0xc0;P2_4=0;delay(1);
 208   1      P2_4=1;
 209   1      P3=0xc0;P2_7=0;delay(1);
 210   1      P2_7=1;
 211   1      P3=DATA_7SEG[mm];P2_6=0;delay(1);
 212   1      P2_6=1;
 213   1      P3=DATA_7SEG[qq]&0x7f;P2_5=0;delay(1);
 214   1      P2_5=1;

⌨️ 快捷键说明

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