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

📄 main.lst

📁 本文件用于智能云台电机控制和图像处理
💻 LST
📖 第 1 页 / 共 5 页
字号:
 195   1              WdtCls();
 196   1      
 197   1      */      
 198   1              /*------------------- 接收相机类型初始程序
 199   1              if(!programFlyOff)
 200   1              {
 201   1              IntSet();
 202   1              IntEnable();
 203   1              TxdBaud9600();
 204   1              T1Start();
 205   1              x=0;
 206   1                      while(1)
 207   1                               {      
 208   1                                       WdtCls();
 209   1                                              
 210   1                              if(!cKeyCodeReceiveState)       continue;
 211   1                      
 212   1                              if(0xff!=cKeyCodeReceive)
 213   1                              {
 214   1                                       cKeyCodeReceiveState=0;
 215   1                                       continue;                                      //首码错则结束  进  入  循  环
 216   1                                       }
 217   1                      
 218   1                                 cKeyCodeReceiveState=0; 
 219   1                                      while(!cKeyCodeReceiveState)  //读码等待
 220   1                                                                       {
 221   1                                                                              WdtCls();
 222   1                                                                       }
 223   1                                                                       
 224   1                                                                       x=cKeyCodeReceive;
 225   1                                                                       cKeyCodeReceiveState=0; 
 226   1                                                                       cameraType=(unsigned char )x;
 227   1                                                              
 228   1                                       while(!cKeyCodeReceiveState)  //读码等待
 229   1                                                                       {
 230   1                                                                              WdtCls();
 231   1                                                                       }
 232   1                                                                       x+=(cKeyCodeReceive<<8);
 233   1                                                                       cKeyCodeReceiveState=0; //取走键盘码
 234   1                                                                       
 235   1                                      switch(x)
 236   1                                      {
 237   1                                      case  0: TxdBaud2400();break;
 238   1                                      case  CAMERAMODEL+SONY: TxdBaud9600();break;
 239   1                                      case  2: TxdBaud4800();break;
 240   1                                      case  3: TxdBaud19200();break;
 241   1                                      default: break;
C51 COMPILER V8.01   MAIN                                                                  01/09/2009 17:53:57 PAGE 5   

 242   1                                      }
 243   1                                      break;
 244   1                      }
 245   1      
 246   1               }                        //判断是否程度跑飞进行串口初始波特接着进行有关初始定位工作,直到定位完成将跑飞标志置位
 247   1      -----------------------*/
 248   1      /*---------------------------水平位检测部分-----------------
 249   1      
 250   1      if(!programFlyOff)
 251   1      {
 252   1      IntDisable();
 253   1      HIntSet();
 254   1      HMotorOut(A3279INITATE) ;
 255   1      //HMotorOut(SIN16[0]) ;
 256   1      
 257   1      //HVolecity(-4000);
 258   1      IntEnable();
 259   1      //hRotationManner=STOPROTATION ;
 260   1      //hRotationManner= SINGLEMOTION;
 261   1      //hRotationManner=FREEMOTION;
 262   1      //hRotationManner= DOUBLEMOTION ;
 263   1       hRotationManner= MULMOTION ;
 264   1      //              hOrientFlag=-1;
 265   1                      haccDecFlag=ACCELERATION ;
 266   1      //hRotationManner=TWOROTATION;
 267   1      hPresetPosition1=0;
 268   1      hPresetPosition2=1999;
 269   1      hPresetPosition=hPresetPosition1;
 270   1      hAbsolutionPosition=hPresetPosition2 ;
 271   1      
 272   1      T2Start();
 273   1      
 274   1       
 275   1      }
 276   1      while(1)
 277   1              WdtCls();
 278   1      
 279   1      
 280   1      ------------------------------------*/
 281   1      /*---------------------------垂直位检测部分-----------------
 282   1      
 283   1      if(!programFlyOff)
 284   1      {
 285   1      IntDisable();
 286   1      VIntSet();
 287   1      VMotorOut(A3279INITATE) ;
 288   1      //HMotorOut(SIN16[0]) ;
 289   1      
 290   1      //HVolecity(-4000);
 291   1      IntEnable();
 292   1      //hRotationManner=STOPROTATION ;
 293   1      //hRotationManner= SINGLEMOTION;
 294   1      //vRotationManner=FREEMOTION;
 295   1      // vRotationManner= DOUBLEMOTION ;
 296   1      vRotationManner= MULMOTION ;
 297   1      //              vOrientFlag=-1;
 298   1              vaccDecFlag=ACCELERATION ;
 299   1              //      vaccDecFlag=NORMALMOTION ;
 300   1      //hRotationManner=TWOROTATION;
 301   1      vPresetPosition1=0;
 302   1      vPresetPosition2=1999;
 303   1      vPresetPosition=hPresetPosition1;
C51 COMPILER V8.01   MAIN                                                                  01/09/2009 17:53:57 PAGE 6   

 304   1      vAbsolutionPosition=hPresetPosition2 ;
 305   1      
 306   1      T0Start();
 307   1      
 308   1       
 309   1      }
 310   1      while(1)
 311   1              WdtCls();
 312   1              ------------------------------------*/
 313   1      /*
 314   1      if(!programFlyOff)
 315   1      {
 316   1      IntDisable();
 317   1      HIntSet();
 318   1      HMotorOut(A3279INITATE) ;        //试验运动方向及停止
 319   1      //GeneralHRotation(100) ;
 320   1      HVolecity(-2000);
 321   1      IntEnable();
 322   1      T2Start();
 323   1      }
 324   1      
 325   1      Delay();
 326   1      //vStopFlag=1;
 327   1      T0Stop();
 328   1      while(1)
 329   1              WdtCls();
 330   1      
 331   1      */
 332   1      /*---------------------------垂直位检测部分---------------
 333   1      if(!programFlyOff)
 334   1      {
 335   1      IntDisable();
 336   1      VIntSet();
 337   1      VMotorOut(A3279INITATE) ;
 338   1      
 339   1      VVolecity(-200);
 340   1      IntEnable();
 341   1      T0Start();
 342   1      }
 343   1              while(1)
 344   1              WdtCls();
 345   1      
 346   1       ----------------------------------------------------------*/
 347   1      
 348   1      HMotorOut(A3279INITATE) ;
 349   1      HMotorOut(A3279INITATE) ;
 350   1      
 351   1      
 352   1      while(1)
 353   1      //for(y=0;y<50;++y)
 354   1              { 
 355   2               for(count=0;count<4;count++)
 356   2      {
 357   3      for(x=0;x<10;x++)
 358   3      WdtCls();
 359   3      HMotorOut(SIN4[count]) ;
 360   3      }
 361   2      } 
 362   1      while(1)
 363   1              WdtCls();
 364   1      /*---------------------------步距角部分---------------
 365   1      ----------------------------------------------------------*/
C51 COMPILER V8.01   MAIN                                                                  01/09/2009 17:53:57 PAGE 7   

 366   1      
 367   1      
 368   1              programFlyOff=1;//进入正常设置
 369   1              IntSet();  
 370   1              cKeyCodeReceiveState=0;           //复位接收状态
 371   1              pKeyCode=sKeyCode;                               //接收码清零程序
 372   1                                       for(x=0;x<5;x++)                                        //预设20个字符
 373   1                                       {
 374   2                                               *pKeyCode =0;
 375   2                                           ++pKeyCode ;
 376   2                                       }
 377   1                                       pKeyCode=sKeyCode;        //重新指向代码
 378   1                      while(1)
 379   1              WdtCls();
 380   1              switch(cameraType)                               //与说明手册上控制位一致
 381   1              
 382   1              {
 383   2               default:  goto ERRor;
 384   2      
 385   2       case 0:        //SONY   
 386   2                      while(1)
 387   2                               {      
 388   3                      
 389   3                                       WdtCls();      
 390   3                              if(0!=cameraType)   // 利用协议出错处理
 391   3                               goto ERRor;
 392   3                              if(!cKeyCodeReceiveState)       continue;
 393   3                      
 394   3                              if(0xff!=cKeyCodeReceive)
 395   3                              {
 396   4                                       cKeyCodeReceiveState=0;
 397   4                                       continue;                                      //首码错则结束  进  入  循  环

⌨️ 快捷键说明

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