📄 main123.lst
字号:
581 if(cAutoScan==1)
582 {
583 T0_stop();
584 cAutoScan=0; //自动扫描标志
585 }
586
587 cDirectHorizon=-1;
588 T1_stop();
589 if(cDirectHorizonLim ==-1 )
590 break;
591 cDirectHorizonLim =0;
592 T0_start();
593 break;
594
595
596 case 0: //结束所有运动 标准的
597
598 T1_stop();
599 T0_stop();
600 CameraStop();
601
602 break;
603 case 0x051: //结束所有运动 硬盘机
604
605 T1_stop();
606 T0_stop();
607 CameraStop();
608
C51 COMPILER V8.05a MAIN123 11/06/2008 11:08:29 PAGE 11
609 break;
610 default :break;
611 }
612
613 break;
614 }
615 else
616 { //不是本球机的接收码ID不正确或者是一误码都必须会结束
617 cKeyCodeReceiveState=0;
618 break; //处理并且清除接收标志
619 }
620
621 default: break;
622 }
623 }
624 }
625 break;
626
627 case 8: //B01协议
628 while(1)
629 {
630 WDT_cls();
631
632 if(8!=cProtocal) // 利用协议出错处理
633 {
634 goto ERRor;
635 }
636 if(cKeyCodeReceiveState)
637 {
638
639
640 switch((unsigned char)cKeyCodeReceive)
641 {
642 case 0xa0: //防误码先接收一个FF后接下来进行 判断是否下个码
643
644
645 cKeyCodeReceiveState=0; //取走第一个码
646 while(!cKeyCodeReceiveState) //对于键盘发出的选择球机也是七位FF开始的码
647 {
648 _nop_();
649
650 }
651
652 if(0xa0==(unsigned char)cKeyCodeReceive) //判断是否是误码,FF说明是误码
653 { //不进行处理转入从头开始的循环
654 //不清标志
655
656
657 break;
658 }
659 else if( (unsigned char)cKeyCodeReceive==id) //说明是正确的键盘码转入处理程序
660 {
661
662 x=2;
663 pKeyCode=sKeyCode;
664 *pKeyCode=0xa0; //起始同步码
665
666 ++pKeyCode;
667 *pKeyCode=id; //ID码
668
669 cKeyCodeReceiveState=0;//已取走第二个码
670 do
C51 COMPILER V8.05a MAIN123 11/06/2008 11:08:29 PAGE 12
671 {
672
673 while(!cKeyCodeReceiveState) //读码等待
674 {
675 _nop_();
676 }
677 ++pKeyCode;
678 *pKeyCode=cKeyCodeReceive;
679
680 cKeyCodeReceiveState=0; //取走键盘码
681 ++x;
682 }while(x!=11); //读码结束标志
683
684 x= ((unsigned int)sKeyCode[3]<<8)+sKeyCode[4]; //构造一译码关键字
685
686 WDT_cls();
687
688 switch(x)
689 {
690 case 0x1000: //光圈开
691 if(cAutoScan==1)
692 {
693 T0_stop();
694 cAutoScan=0; //自动扫描标志
695 }
696 CameraStop();
697 IrisOpen();
698 break;
699 case 0x0800: //光圈关
700 if(cAutoScan==1)
701 {
702 T0_stop();
703 cAutoScan=0; //自动扫描标志
704 }
705 CameraStop();
706 IrisClose();
707 break;
708 case 0x0200: //焦距拉近 因电路接线 必须单操作
709 if(cAutoScan==1)
710 {
711 T0_stop();
712 cAutoScan=0; //自动扫描标志
713 }
714 CameraStop();
715 Focus_near();
716 break;
717
718 case 0x0100: //焦距拉远
719 if(cAutoScan==1)
720 {
721 T0_stop();
722 cAutoScan=0; //自动扫描标志
723 }
724 CameraStop();
725 Focus_far() ;
726 break;
727
728 case 0x0040: //视角宽
729
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -