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

📄 xunji.lst

📁 启动定时保护无线加按键设定
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   XUNJI                                                                 09/02/2011 23:08:54 PAGE 1   


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

stmt level    source

   1          #include"reg51.h"
   2          sbit p20=P2^0;sbit p21=P2^1;sbit p22=P2^2;sbit p23=P2^3;
   3          //1车P20=1A,P21=1B,P23=2A,P22=2B,2车p20=1A,P21=1B,P22=2A,P23=2B;
   4          sbit left=P3^6;//左寻
   5          sbit right=P3^7;//右寻
   6          sbit zhong=P3^5;//黑线探测p35;
   7          sbit qian=P1^6;//前避障
   8          sbit you=P1^7;//右避障  
   9          sbit p15=P1^5;sbit p27=P2^7;sbit p32=P3^2;sbit p26=P2^6;//fmq
  10          unsigned char flag_left_or_right,flag_along_right,flag_chaoche,flag_stop,flag_bizhang,flag_xunji_zhuan;//1
             ---left;2--right;
  11          bit flag_change=0;
  12          unsigned int flag=0,timer=0;
  13          unsigned int n;
  14          //********************************************************************************************************
             -********//
  15          
  16          void delay1ms()
  17          {
  18   1              unsigned char i,j;      
  19   1              for(i=0;i<10;i++)
  20   1              for(j=0;j<33;j++)
  21   1                 ;             
  22   1      } 
  23          void delay(unsigned int n)//
  24          {
  25   1              unsigned int i;
  26   1              for(i=0;i<n;i++)
  27   1              delay1ms();
  28   1      }
  29          /*
  30          void delay100us()
  31          {
  32                  unsigned char j;        
  33                  for(j=0;j<33;j++)
  34                     ;
  35          }void delayus(unsigned int n)//
  36          {
  37                  unsigned int i;
  38                  for(i=0;i<n;i++)
  39                  delay100us();
  40          }*/
  41          /**********************************************************************
  42          void send232byte(unsigned char bytebuf)
  43          {
  44                  SBUF=bytebuf;
  45                  while(!TI);     
  46              TI=0;       
  47          }**************************************************************************/
  48          //********************************************************************************************************
             -********//
  49          void turn_left(void)    {       p20=0;p21=0;p22=1;p23=0;        }//左转
  50          void turn_right(void)   {       p20=1;p21=0;p22=0;p23=0;        }//右转
  51          void turn_cleft(void)   {       p20=0;p21=1;p22=1;p23=0;        }//左原地转
  52          void turn_cright(void)  {       p20=1;p21=0;p22=0;p23=1;        }//右原地转
C51 COMPILER V7.06   XUNJI                                                                 09/02/2011 23:08:54 PAGE 2   

  53          void go_along(void)             {       p20=1;p21=0;p22=1;p23=0;        }//直走
  54          void go_back(void)              {       p20=0;p21=1;p22=0;p23=1;        }//后
  55          void stop(void)                 {       p20=0;p21=0;p22=0;p23=0;        }//停止
  56          void go_along_right(void)       {       go_along();delay(14);turn_right();delay(2);     }
  57          void go_along_slow_r(void)      {       go_along();delay(10);stop();delay(20);  }
  58          void go_back_slow(void)         {       go_back();delay(10);stop();delay(25);   }
  59          void go_along_left(void)        {       go_along();delay(10);turn_left();delay(1);      }
  60          void turn_left_go(void)         {       turn_cleft();delay(3);turn_left();delay(7);     }
  61          void turn_left_go_low(void)     {turn_cleft();delay(4);stop();delay(1);turn_left();delay(5);stop();delay(1);}
  62          void turn_right_go(void)        {       turn_cright();delay(4);turn_right();delay(7);}
  63          void turn_left_low(void)        {       turn_left_go();delay(14);stop();delay(8);       }
  64          void turn_right_low(void)       {       turn_right_go();delay(14);stop();delay(8);  }
  65          //********************************************************************************************************
             -********//
  66          void xunji_bizhang_normal(void)
  67          {
  68   1                      if(left==0&&right==0)
  69   1                      {
  70   2                       go_along_right();
  71   2                      } 
  72   1                      if(left==0&&right==1)        
  73   1              {
  74   2                      turn_left_go();
  75   2                       }
  76   1                      if(left==1&&right==0)        
  77   1                       {
  78   2                      turn_right_go();
  79   2              }
  80   1                      if(left==1&&right==1)        
  81   1              {
  82   2                       go_along_right();
  83   2              }
  84   1      }
  85          void xunji_bizhang_low_speed(void)
  86          {
  87   1                      if(left==0&&right==0)
  88   1                      {
  89   2                       go_along_right();delay(5);stop();delay(95);
  90   2                      } 
  91   1                      if(left==0&&right==1)        
  92   1              {
  93   2                      turn_left_go_low();
  94   2                       }
  95   1                      if(left==1&&right==0)        
  96   1                       {
  97   2                      turn_right_go();
  98   2              }
  99   1                      if(left==1&&right==1)        
 100   1              {
 101   2                       go_along_right();delay(5);stop();delay(95);
 102   2              }
 103   1      }
 104          void xunji_bizhang_chaoche_over(void)
 105          {
 106   1                      if(left==0&&right==1)        
 107   1              {
 108   2                      turn_left_go_low();
 109   2                       }
 110   1                      if(right==0)         
 111   1                       {
 112   2                      go_along();delay(15);stop();delay(85);
 113   2              }
C51 COMPILER V7.06   XUNJI                                                                 09/02/2011 23:08:54 PAGE 3   

 114   1                      if(left==1&&right==1)        
 115   1              {
 116   2                       go_along();delay(15);stop();delay(85);
 117   2              }
 118   1      }
 119          void chaoche_bizhang(void)
 120          {
 121   1                      flag_bizhang=1;
 122   1                      while(qian!=1)  {turn_left();}  
 123   1                      stop();delay(500);
 124   1                      go_along();delay(600);
 125   1                      stop();delay(500);
 126   1                      while(you!=1) //如果有再直走;
 127   1                      {go_along_slow_r();}    stop();delay(500);
 128   1                      while(you==1)//转到有
 129   1                      {turn_right();delay(40);stop();delay(60);}stop();delay(500);
 130   1                      while(you!=1)//转到没有
 131   1                      {turn_right();delay(40);stop();delay(60);}stop();delay(500);
 132   1                      while(you==1)//走到有
 133   1                      {go_along_slow_r();}    stop();delay(500);
 134   1                      while(you!=1)//走到没有
 135   1                      {go_along_slow_r();}    stop();delay(500);
 136   1                      while(you==1)//退到有
 137   1                      {go_back_slow();}       stop();delay(500);
 138   1                      while(you!=1)//转到没有 
 139   1                      {turn_right();delay(40);stop();delay(60);}stop();delay(500);
 140   1                      go_along();delay(500);
 141   1                      stop();delay(500);
 142   1                      turn_left();delay(120);                 
 143   1                      stop();delay(1000);
 144   1                      flag_xunji_zhuan=1;
 145   1                      flag_bizhang=0;
 146   1      }
 147          void xunji_bizhang(void)
 148          {
 149   1        if(zhong==0)
 150   1        {     
 151   2                      if(flag_chaoche==0)

⌨️ 快捷键说明

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