📄 main.lst
字号:
600 7 --vAbsolutionPosition;
601 7 vSoftTimer0=-5;
602 7
603 7 break;
604 7
605 7 }
606 6 break;
607 6 }
608 5 }
609 4 break;
610 4 }
611 3
612 3 case DOUBLEMOTION :
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 11
613 3 if(!vOrientFlag)
614 3 {
615 4 if(vPresetPosition>vAbsolutionPosition)
616 4 vOrientFlag=1;
617 4 // else if(vPresetPosition==vAbsolutionPosition) TR2=0;
618 4 else
619 4 vOrientFlag=-1;
620 4 }
621 3 //
622 3 switch(vOrientFlag)
623 3 {
624 4 default:break;
625 4
626 4 case 1:
627 4 {
628 5 switch(vaccDecFlag)
629 5 {
630 6 default :break;
631 6 case PAUSE:
632 6 if(!(vPauseTime--))
633 6 {
634 7 vaccDecFlag=ACCELERATION;
635 7 if(vAbsolutionPosition==vPresetPosition1)
636 7 vPresetPosition=vPresetPosition2;
637 7 else
638 7 vPresetPosition=vPresetPosition1;
639 7 vOrientFlag=0;
640 7 }
641 6 break;
642 6 case DECELERATION:
643 6 if(currentCount==15)
644 6 currentCount=0;
645 6 else
646 6 ++currentCount;
647 6 VMotorOut(SIN16[currentCount]) ;
648 6
649 6 ++vAbsolutionPosition;
650 6 if(accDecCount==15)
651 6 {
652 7 vSoftTimer0=DECTABLE[accDecCount]/250;
653 7 accDecCount=0;
654 7 vaccDecFlag=PAUSE;
655 7 vPauseTime=200;
656 7 VMotorOut(SIN16[currentCount]) ;
657 7
658 7 }
659 6 else
660 6 {
661 7 vSoftTimer0=DECTABLE[accDecCount]/250;
662 7 ++accDecCount;
663 7 }
664 6
665 6 // VMotorOut(SIN16[currentCount-1]) ;
666 6 break;
667 6 case ACCELERATION:
668 6 if(currentCount==15)
669 6 currentCount=0;
670 6 else
671 6 ++currentCount;
672 6 VMotorOut(SIN16[currentCount]) ;
673 6
674 6 ++vAbsolutionPosition;
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 12
675 6 if(accDecCount==15)
676 6 {
677 7 vSoftTimer0=ACCTABLE[accDecCount]/250;
678 7 accDecCount=0;
679 7 vaccDecFlag=NORMALMOTION;
680 7 vPresetPosition=vPresetPosition-16;
681 7 }
682 6 else
683 6 {
684 7 vSoftTimer0=ACCTABLE[accDecCount]/250;
685 7 ++accDecCount;
686 7 }
687 6 break;
688 6 case NORMALMOTION:
689 6 if(vPresetPosition!=vAbsolutionPosition)
690 6 {
691 7 if(currentCount==15)
692 7 currentCount=0;
693 7 else
694 7 ++currentCount;
695 7 VMotorOut(SIN16[currentCount]) ;
696 7
697 7 ++vAbsolutionPosition;
698 7 vSoftTimer0=-5;
699 7 // vSoftTimer0=ACCDEC[accDecCount];
700 7 }
701 6 else
702 6 vaccDecFlag=DECELERATION;
703 6 break;
704 6
705 6 }
706 5 break;
707 5 }
708 4 case -1:
709 4 {
710 5 switch(vaccDecFlag)
711 5 {
712 6 default :break;
713 6 case PAUSE:
714 6 if(!(vPauseTime--))
715 6 {
716 7 vaccDecFlag=ACCELERATION;
717 7 if(vAbsolutionPosition==vPresetPosition1)
718 7 vPresetPosition=vPresetPosition2;
719 7 else
720 7 vPresetPosition=vPresetPosition1;
721 7 vOrientFlag=0;
722 7 }
723 6 break;
724 6 case DECELERATION:
725 6 if(currentCount==0)
726 6 currentCount=15;
727 6 else
728 6 --currentCount;
729 6 VMotorOut(SIN16[currentCount]) ;
730 6
731 6 --vAbsolutionPosition;
732 6 if(accDecCount==15)
733 6 {
734 7 vSoftTimer0=DECTABLE[accDecCount]/250;
735 7 accDecCount=0;
736 7 vaccDecFlag=PAUSE;
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 13
737 7 vPauseTime=200;
738 7 VMotorOut(SIN16[currentCount]) ;
739 7
740 7 }
741 6 else
742 6 {
743 7 ++accDecCount;
744 7 vSoftTimer0=DECTABLE[accDecCount]/250;
745 7 }
746 6
747 6 // VMotorOut(SIN16[currentCount+1]) ;
748 6 break;
749 6 case ACCELERATION:
750 6 if(currentCount==0)
751 6 currentCount=15;
752 6 else
753 6 --currentCount;
754 6 VMotorOut(SIN16[currentCount]) ;
755 6
756 6 --vAbsolutionPosition;
757 6 if(accDecCount==15)
758 6 {
759 7 vSoftTimer0=ACCTABLE[accDecCount]/250;
760 7 accDecCount=0;
761 7 vPresetPosition=vPresetPosition+16;
762 7 vaccDecFlag=NORMALMOTION;
763 7 }
764 6 else
765 6 {
766 7 vSoftTimer0=ACCTABLE[accDecCount]/250;
767 7 ++accDecCount;
768 7 }
769 6
770 6 break;
771 6 case NORMALMOTION:
772 6 if(vPresetPosition!=vAbsolutionPosition)
773 6 {
774 7 if(currentCount==0)
775 7 currentCount=15;
776 7 else
777 7 --currentCount;
778 7 VMotorOut(SIN16[currentCount]) ;
779 7
780 7 --vAbsolutionPosition;
781 7 vSoftTimer0=-5;
782 7 // vSoftTimer0=ACCDEC[accDecCount];
783 7 }
784 6 else
785 6 vaccDecFlag=DECELERATION;
786 6 break;
787 6
788 6 }
789 5 break;
790 5 }
791 4 }
792 3
793 3 break;
794 3 case MULMOTION :
795 3 if(!vOrientFlag)
796 3 {
797 4 if(vPresetPosition>vAbsolutionPosition)
798 4
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 14
799 4 vOrientFlag=1;
800 4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -