📄 newmoving.lst
字号:
723 1 P2=0xFF;
724 1 P3=0xFF;
725 1 oA=0;
726 1 oB=0;
727 1 oC=0;
728 1 uiExpectedStopRunNumber=SLOWSTOPRUNNUMBER;
729 1 uiStartTargetDelayCount=0;
730 1 uiParkCount=0;
731 1 uiRunTime=0;
732 1 //uiContinueRunNumber=0;
733 1
734 1 uiSpeed_0_Disp=0;
735 1 uiSpeed_1_Disp=0;
736 1
737 1
C51 COMPILER V6.23a NEWMOVING 06/28/2002 18:26:38 PAGE 13
738 1 ucStartRunNumber=0;
739 1 ucMotorStepNumber=0;
740 1 bMotorStartFlag=1;
741 1 bStopRunFlag=0;
742 1 bAutoRunFirstStartkeyPress=0;
743 1 bAutoSpeedDisp=0;
744 1
745 1
746 1 ucStartTargetDelay[0]=MANUAL_DELAY_MIN;
747 1 ucStartTargetDelay[1]=AUTO_DELAY_MIN;
748 1 ucVideoDelay=6;
749 1
750 1 ucSpeedCode=1;
751 1 ucModeCode=1;
752 1 ucDisplayCode=0;
753 1 ucFunctionCode=0x41;
754 1
755 1 ucDispBit=0;
756 1 ucStopRunNumber=0;
757 1 ucMixBullet=1;
758 1 ucMixTeamNumber=1;
759 1 ucCountBullet=1;
760 1
761 1 if(oRightStopHall==1) //gg
762 1 {
763 2 bDirectFlag=0;
764 2 }
765 1 else
766 1 {
767 2 bDirectFlag=1;
768 2 }
769 1
770 1 bExpectedLeftHour=!bDirectFlag;
771 1 bExpectedRightHour=bDirectFlag;
772 1
773 1 oLeftLamp=bDirectFlag;
774 1 oRightLamp=!bDirectFlag;
775 1 oVideoSwitch=bDirectFlag;
776 1
777 1 bPointRunFlag=0;
778 1 bRunFlag=0;
779 1 bSpeedFlag=0;
780 1 bBulletSegmentFlag=0;
781 1 bContinueRunFlag=0;
782 1 bVideoDelayFlag=0;
783 1 bStartTargetDelayFlag=0;
784 1 bKeyPressFlag=1;
785 1 bParkTimeFlag=0;
786 1
787 1 Speed[1].ucTL0=FAST_TL0;
788 1 Speed[1].ucTH0=FAST_TH0;
789 1 Speed[1].ucDisp=SPEED_STAND;
790 1
791 1 Speed[0].ucTL0=SLOW_TL0;
792 1 Speed[0].ucTH0=SLOW_TH0;
793 1 Speed[0].ucDisp=SPEED_STAND;
794 1 TMOD=0x11;
795 1
796 1 TH0=0xFC;
797 1 TL0=0xBF;
798 1
799 1 TH1=0xEC;
C51 COMPILER V6.23a NEWMOVING 06/28/2002 18:26:38 PAGE 14
800 1 TL1=0x78;
801 1
802 1 ET0=1;
803 1 ET1=1;
804 1 EA=1;
805 1
806 1 IP=0xc2;
807 1
808 1 TR0=1;
809 1 TR1=1;
810 1
811 1
812 1 while(1)
813 1 {
814 2 if((!bRunFlag)&&(!bContinueRunFlag)&&(bKeyPressFlag))
815 2 {
816 3 ucCurrentKeyPressInput=P1;
817 3
818 3 if((ucCurrentKeyPressInput!=ucLastKeyPressInput)&&(ucCurrentKeyPressInput!=0xFF))
819 3 {
820 4 for(ucTemp=0;ucTemp<250;ucTemp++)
821 4 {
822 5 }
823 4
824 4 if(ucCurrentKeyPressInput==P1)
825 4 {
826 5 //bKeyPressFlag=1;
827 5 uFunction();
828 5 }
829 4 }
830 3 ucLastKeyPressInput=ucCurrentKeyPressInput;
831 3 }
832 2 cDisplayAnimate();
833 2 //uHour();
834 2
835 2 uiExpectedStartTargetDelay=100*ucStartTargetDelay[bAutoManulCode];
836 2 if(uiStartTargetDelayCount>=uiExpectedStartTargetDelay)
837 2 {
838 3 bStartTargetDelayFlag=0;
839 3 uiStartTargetDelayCount=0;
840 3 bMotorStartFlag=1;
841 3 switch(ucModeCode)
842 3 {
843 4 case 1:
844 4 if(bRunCode==1)
845 4 {
846 5 bRunFlag=1;
847 5 bMotorStartFlag=1;
848 5 }
849 4 break;
850 4 case 2:
851 4 if(bRunCode==1)
852 4 {
853 5 bRunFlag=1;
854 5 bMotorStartFlag=1;
855 5 }
856 4 break;
857 4 case 3:
858 4 break;
859 4 default:
860 4 break;
861 4 }
C51 COMPILER V6.23a NEWMOVING 06/28/2002 18:26:38 PAGE 15
862 3 }
863 2 if(!bFixSpeedCode)
864 2 {
865 3 uMixSpeedEstimate();
866 3 }
867 2
868 2 }
869 1 }
870
871 void uTiming0() interrupt 1 using 2
872 {
873 1
874 1 ET0=0;
875 1 TR0=0;
876 1 if(bMotorStartFlag)
877 1 {
878 2 ucStartRunNumber++;
879 2 if(ucStartRunNumber>MOTOR_START_NUMBER)
880 2 {
881 3 bMotorStartFlag=0;
882 3 ucStartRunNumber=0;
883 3 }
884 2 TH0=START_TH0; //F9B5,12M
885 2 TL0=START_TL0;
886 2 }
887 1 else
888 1 {
889 2 if(bPointCode)
890 2 {
891 3 TH0=Speed[0].ucTH0;
892 3 TL0=Speed[0].ucTL0;
893 3 }
894 2 else
895 2 {
896 3 if(bSpeedFlag)
897 3 {
898 4 TH0=Speed[1].ucTH0; //Speed[1].ucTH0,FE76,6M
899 4 TL0=Speed[1].ucTL0; //Speed[1].ucTL0,FCE4,12M;
900 4 }
901 3 else
902 3 {
903 4 TH0=Speed[0].ucTH0; //Speed[0].ucTH0,0xFCda,6M;
904 4 TL0=Speed[0].ucTL0; //Speed[0].ucTL0,0xF9B2,12M;
905 4 }
906 3 }
907 2 }
908 1
909 1 TR0=1;
910 1 ET0=1;
911 1 ///////////////////////////////////////////////
912 1 if(bRunFlag)
913 1 {
914 2 uMotorControl();
915 2 }
916 1 else if(bPointRunFlag)
917 1 {
918 2 ucCurrentKeyPressInput=P1;
919 2 if(ucCurrentKeyPressInput==0xDF)
920 2 {
921 3 uMotorControl();
922 3 }
923 2 }
C51 COMPILER V6.23a NEWMOVING 06/28/2002 18:26:38 PAGE 16
924 1
925 1 else if(bContinueRunFlag)
926 1 {
927 2 uMotorControl();
928 2 uContinueRun();
929 2 }
930 1
931 1 else if(bStopRunFlag)
932 1 {
933 2 uStopRun();
934 2 }
935 1
936 1 else
937 1 {
938 2 /*if((!bPointRunFlag)&&(!bRunFlag)&&(!bContinueRunFlag)&&(!bStopRunFlag))
939 2 {
940 2 oA=0;
941 2 oB=0;
942 2 oC=0;
943 2 }*/
944 2 if((bPointRunFlag)&&(ucCurrentKeyPressInput==0xFF))
945 2 {
946 3 oA=0;
947 3 oB=0;
948 3 oC=0;
949 3 }
950 2 }
951 1 }
952
953 void uTiming1() interrupt 3 using 3
954 {
955 1
956 1 //unsigned int uiExpectedStartTargetDelay;
957 1 unsigned int uiExpectedVideoDelay;
958 1 //uiExpectedStartTargetDelay=100*ucStartTargetDelay[bAutoManulCode];
959 1 uiExpectedVideoDelay=100*ucVideoDelay;
960 1 ET1=0;
961 1
962 1 TH1=0xD8; //0xEC; //方式1,16位,65536-5000=60536=EC78,6M,10ms
963 1 TL1=0xF0; //0x78; //方式1,16位,65536-10000=55536=D8F0,12M,10ms
964 1
965 1 ET1=1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -