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

📄 car01.lst

📁 启动定时保护无线加按键设定
💻 LST
📖 第 1 页 / 共 2 页
字号:
 177   2                if(jichu==1)
 178   2                {
 179   3                       if(flag_chaoche==0)
 180   3                       {      
 181   4                              xunji_bizhang_normal();
 182   4                       }
 183   3                       if(flag_chaoche==1)
 184   3                        {
 185   4                              if(flag_xunji_zhuan==0)
 186   4                              {
 187   5                                      xunji_bizhang_low_speed();
 188   5                                      if(qian==0)
 189   5                                      {
 190   6                                              chaoche_bizhang();
 191   6                                      }
 192   5                              }
 193   4                                if(flag_xunji_zhuan==1)
 194   4                               {
 195   5                                      xunji_bizhang_chaoche_over();
 196   5                               }
 197   4                        }
 198   3                }
 199   2        }
 200   1        if(zhong==1) flag++;
 201   1        if(flag_stop==1)      
 202   1        {
 203   2              stop();delay(5000);flag_stop=0;flag_chaoche=0;
 204   2        }
 205   1      }
 206          //********************************************************************************************************
             -***//
 207          //********************************************************************************************************
             -***//
 208          void xunji_stop_normal(void)//停车走法循迹          
 209          {
 210   1              if(left==0&&right==0)
 211   1              {
 212   2               go_along_right();
 213   2              } 
 214   1              if(left==0&&right==1)        
 215   1          {
 216   2               turn_left_go_low();
 217   2              }
 218   1              if(left==1&&right==0)        
 219   1              {
 220   2               turn_right_go();
 221   2          }
 222   1              if(left==1&&right==1)        
 223   1          {
 224   2               go_along_right();
 225   2          }
 226   1      }
 227          void xunji_stop_low_speed(void)//停车走法低速循迹                 
 228          {
 229   1              if(left==0&&right==0)
 230   1              {
 231   2               go_along_right();delay(5);stop();delay(95);
 232   2              } 
C51 COMPILER V8.02   CAR01                                                                 09/04/2011 23:23:06 PAGE 5   

 233   1              if(left==0&&right==1)        
 234   1          {
 235   2               turn_left_go_low();
 236   2              }
 237   1              if(left==1&&right==0)        
 238   1              {
 239   2               turn_right_go();
 240   2          }
 241   1              if(left==1&&right==1)        
 242   1          {
 243   2               go_along_right();delay(5);stop();delay(95);
 244   2              }
 245   1      }
 246          void xunji_very_low_speed(void)//停车区超低速走              
 247          {
 248   1              if(left==0&&right==0)
 249   1              {
 250   2               go_along_right_lowlow();delay(2);stop();delay(98);
 251   2              } 
 252   1              if(left==0&&right==1)        
 253   1          {
 254   2               turn_left_verylow();
 255   2              }
 256   1              if(left==1&&right==0)        
 257   1              {
 258   2               turn_right_go_verylow();
 259   2          }
 260   1              if(left==1&&right==1)        
 261   1          {
 262   2               go_along_right_lowlow();delay(2);stop();delay(98);
 263   2              }
 264   1      //      if(flag_ok==1){stop();delay(5000);flag_chaoche=0;flag_stop=0;}
 265   1      }
 266          void xunji_stop(void)//停车走法循迹函数                           
 267          {
 268   1        if(zhong==0)
 269   1        {     
 270   2          if(jichu==0)
 271   2              {
 272   3                xunji_stop_normal();
 273   3              }
 274   2      
 275   2              if(jichu==1)
 276   2              {
 277   3             if(flag_chaoche==0)
 278   3                 {
 279   4                      xunji_stop_normal();
 280   4              }
 281   3              if((flag_chaoche==1)&&(flag_stop!=1))
 282   3                 {
 283   4                      xunji_stop_low_speed();
 284   4              }
 285   3            if((flag_chaoche==1)&&(flag_stop==1))
 286   3                  {
 287   4                      xunji_very_low_speed();
 288   4                  } 
 289   3              }
 290   2        }
 291   1        if(zhong==1) flag++;
 292   1      }
 293          //********************************************************************************************************
             -***//
C51 COMPILER V8.02   CAR01                                                                 09/04/2011 23:23:06 PAGE 6   

 294          
 295          void TIMER0_ROUTINE(void) interrupt 1
 296          {
 297   1              timer++;
 298   1              TH0=0x4c; //周期50MS
 299   1              TL0=0x00;
 300   1              if(timer==180){timer=0;TR0=0;ET0=0;flag_stop=1;}
 301   1      }
 302          void ri_inter() interrupt 4 using 1
 303          {
 304   1              unsigned char key;
 305   1              RI=0;
 306   1              key=SBUF;
 307   1              if(key==3)      {flag_ok=1;flag_chaoche=0;flag_stop=0;}
 308   1              if(key==2)      {flag_start=1;}
 309   1      }
 310          void main()
 311          {
 312   1              TMOD=0x21;      
 313   1              SCON=0x50;      //8 bit 
 314   1              TL1=0xfd;       //9600  
 315   1              TH1=0xfd;
 316   1              TR1=1;
 317   1              ES=1;
 318   1              EA=1;//           
 319   1              flag=0;
 320   1              while(1)
 321   1              {       
 322   2                      if(flag_change==0){xunji_stop();        }                                  //停车标志 等待 超车函数 
 323   2                      if(flag_change==1){xunji_bizhang();     }                                  // 在超车区壁障超车 
 324   2                      switch(flag)
 325   2                      {
 326   3                      case 0:break;            
 327   3                      case 1:stop();delay(2000);      //开始停车时间 
 328   3                                      if(flag_change==0){send232byte(2);delay(50);}
 329   3                                      go_along_right();delay(50);flag++;break;//1
 330   3                      case 2:break;
 331   3                      case 3:stop();delay(50);zhuanwan4();flag++;break;//2
 332   3                      case 4:break;
 333   3                      case 5:stop();delay(50);zhuanwan4();flag++;break;//3
 334   3                      case 6:break;
 335   3                      case 7:go_along();delay(100);zhuanwan3();flag++;break;//4
 336   3                      case 8:while(right!=1){go_along();}stop();delay(50);go_back();delay(40);turn_left();delay(40);
 337   3                                      flag_chaoche=1;
 338   3                                      if(flag_change==0){     TH0=0x4c;TL0=0x00;TR0=1;ET0=1;}
 339   3                                      flag++;break;//
 340   3                      case 9:break;
 341   3                      case 10:flag_chaoche=0;flag_xunji_zhuan=0;stop();delay(50);zhuanwan3();flag++;break;//5
 342   3                      case 11:break;
 343   3                      case 12:stop();delay(1000);if(flag_change==1){send232byte(3);delay(50);}flag=2;flag_change=!flag_change;
             -break;//6
 344   3                      default:while(1){stop();delay(50);}break;
 345   3                      }
 346   2      
 347   2              }
 348   1      }
 349          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1606    ----
   CONSTANT SIZE    =   ----    ----
C51 COMPILER V8.02   CAR01                                                                 09/04/2011 23:23:06 PAGE 7   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     12    ----
   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 + -