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

📄 main123.lst

📁 本文件用于智能云台电机控制和图像处理
💻 LST
📖 第 1 页 / 共 5 页
字号:
 285                                                                  }
 286                                                                           cDirectVertical=1 ;    
 287                                                                           T0_stop();
 288                                                                           if(cDirectVerticalLim==1 )
 289                                                                                   break; 
 290                                                                                   cDirectVerticalLim=0;
 291                                                                           T1_start();
 292                                                                           break;
 293                                                                   case   0x0010:           //向下
 294                                                                            if(cAutoScan==1)
 295                                                                  {
 296                                                                  T0_stop();
 297                                                                  cAutoScan=0;    //自动扫描标志
 298                                                                  }
C51 COMPILER V8.05a   MAIN123                                                              11/06/2008 11:08:29 PAGE 6   

 299                                                                           cDirectVertical=-1 ;
 300                                                                           T0_stop();
 301                                                                           if(cDirectVerticalLim==-1 )
 302                                                                                   break;
 303                                                                                   cDirectVerticalLim=0;  
 304                                                                           T1_start();
 305                                                                           break;
 306                                                                   case   0x001f:           //自动扫描 1 pattern start 
 307                                                                           
 308                                                                           cAutoScan=1;    //自动扫描标志
 309                                                                           cDirectHorizon=1;
 310                                                                           T0_start();
 311                                                                           break;
 312                                                                            case  0x0023:           //自动扫描 2 run pattern
 313                                                                           
 314                                                                           cAutoScan=1;    //自动扫描标志
 315                                                                           cDirectHorizon=1;
 316                                                                           T0_start();
 317                                                                           break;
 318                                                                            case  0x0007:           //自动扫描   3  preset类功能
 319                                                                           
 320                                                                           cAutoScan=1;    //自动扫描标志
 321                                                                           cDirectHorizon=1;
 322                                                                           T0_start();
 323                                                                           break;
 324                            /*
 325                                                                    case  0x0021:           //自动扫描关闭
 326                                                                           T1_stop();
 327                                                                           T0_stop();
 328                                                                           Focus_stop();
 329                                                                           Zoom_stop();
 330                                                                            cAutoScan=0;    //自动扫描标志
 331                                                                           break;
 332                                                                           */
 333                                                                   case   0x0004:           //向左        左右由T0控制
 334                                                                           if(cAutoScan==1)
 335                                                                  {
 336                                                                  T0_stop();
 337                                                                  cAutoScan=0;    //自动扫描标志
 338                                                                  }
 339                                                                           cDirectHorizon=1;
 340                                                                           T1_stop();
 341                                                                           if(cDirectHorizonLim ==1 )
 342                                                                                   break; 
 343                                                                                   cDirectHorizonLim =0;
 344                                                                           T0_start();
 345                                                                           break;
 346                                                                   case   0x0002:           //向右
 347                                                                           if(cAutoScan==1)
 348                                                                  {
 349                                                                  T0_stop();
 350                                                                  cAutoScan=0;    //自动扫描标志
 351                                                                  }
 352                                                                           cDirectHorizon=-1;
 353                                                                           T1_stop();
 354                                                                           if(cDirectHorizonLim ==-1 )
 355                                                                                   break; 
 356                                                                                   cDirectHorizonLim =0;
 357                                                                           T0_start();
 358                                                                           break;
 359                                                                   case   0:                //结束所有运动  1标准
 360                                                                           T1_stop();
C51 COMPILER V8.05a   MAIN123                                                              11/06/2008 11:08:29 PAGE 7   

 361                                                                           T0_stop();
 362                                                                           CameraStop();
 363                                                                           
 364                                                                           break;
 365                                                                           
 366                                                                   default :break;
 367                                                                   }
 368                                                                   
 369                                                                  break; 
 370                                                           }
 371                                                           else
 372                                                           {                                                         //不是本球机的接收码ID不正确或者是一误码都必须会结束
 373                                                                   cKeyCodeReceiveState=0;
 374                                                                   break;                                    //处理并且清除接收标志
 375                                                           }
 376                                                           
 377                                                     default: break;
 378                                                    }
 379          
 380                                                   }
 381                                                   }
 382                                                   break;
 383                                                  
 384          
 385                   case 12:                                                       //PELCO-D协议
 386                   
 387                          while(1)
 388                          {
 389                                  WDT_cls();
 390                          
 391                          if(12!=cProtocal)   // 利用协议出错处理
 392                                  {
 393                                  goto ERRor;
 394                                  }       
 395                                  
 396                                  if(cKeyCodeReceiveState)
 397                                  {
 398                                          cKeyCodeReceiveState=0; //取走第一个码
 399                                          switch(cKeyCodeReceive)
 400                                          {
 401                                          case 0xff:                //防误码先接收一个FF后接下来进行 判断是否下个码
 402                                                  
 403                                  
 404                                                  while(!cKeyCodeReceiveState)  //对于键盘发出的选择球机也是七位FF开始的码
 405                                                  {
 406                                                          _nop_();
 407                                                  }
 408                                                  //  cKeyCodeReceiveState=0;
 409                                                  if(cKeyCodeReceive==0xff)          //判断是否是误码,FF说明是误码
 410                                                  {                                                          //不进行处理转入从头开始的循环
 411                                                          //不清标志
 412                                                          break;
 413                                                  }
 414                                                  else if( cKeyCodeReceive==id)   //说明是正确的键盘码转入处理程序
 415                                                  {
 416                                          
 417                                                          x=2;
 418                                                          pKeyCode=sKeyCode;      
 419                                                          *pKeyCode=0xff;    //起始同步码
 420                                                          ++pKeyCode;
 421                                                          *pKeyCode=id;      //ID码
 422                                                          cKeyCodeReceiveState=0;//已取走第二个码
C51 COMPILER V8.05a   MAIN123                                                              11/06/2008 11:08:29 PAGE 8   

 423                                                          do
 424                                                          {
 425                                                          //      x=x + *pKeyCode ;       //从第二个开始累加校验
 426                                                                  while(!cKeyCodeReceiveState)  //读码等待
 427                                                                  {
 428                                                                          _nop_();
 429                                                                  }
 430                                                                  ++pKeyCode;     
 431                                                                  *pKeyCode=cKeyCodeReceive;

⌨️ 快捷键说明

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