📄 md166bv1.lst
字号:
03CD 85008A F 818 MOV TL0,T0_TL
03D0 D200 F 819 SETB STEP_A_FLAG
03D2 820 ACCEL_LOP1: ;MOV C,STEP_DIRECT
03D2 20000A F 821 JB STEP_DIRECT,ACCEL_LOP2
03D5 C292 822 CLR YCCW
823 ; SETB YCCW
03D7 B293 824 CPL YCW
03D9 C281 825 CLR XCCW
826 ; SETB XCCW
03DB B280 827 CPL XCW
03DD 8008 828 JMP ACCEL_LOP3
03DF C293 829 ACCEL_LOP2: CLR YCW
830 ; SETB YCW
03E1 B292 831 CPL YCCW
03E3 C280 832 CLR XCW
833 ; SETB XCW
03E5 B281 834 CPL XCCW
03E7 E500 F 835 ACCEL_LOP3: MOV A,T0_TH
03E9 64FC 836 XRL A,#HIGH(65536-1024);;RAD(max)=2N/S
03EB 7006 837 JNZ ACCEL_LOP5
03ED E500 F 838 MOV A,T0_TL
03EF 6400 839 XRL A,#LOW(65536-1024)
03F1 600C 840 JZ ACCEL_LOP6
A51 MACRO ASSEMBLER MD166BV1 05/27/2004 16:38:38 PAGE 13
03F3 E500 F 841 ACCEL_LOP5: MOV A,T0_TL
03F5 2480 842 ADD A,#80H;1
03F7 F500 F 843 MOV T0_TL,A
03F9 E500 F 844 MOV A,T0_TH
03FB 3400 845 ADDC A,#0
03FD F500 F 846 MOV T0_TH,A
03FF 847 ACCEL_LOP6:
03FF D0E0 848 ACCEL_END: POP ACC
0401 22 849 RET
850 ;-----------------------------------------------------
0402 851 STEP_HIGH: ;02_HIGH SPEEP
0402 C0E0 852 PUSH ACC
853 ;MOV C,STEP_DIRECT
0404 200006 F 854 JB STEP_DIRECT,HIGH_LOP1
855 ; SETB YCCW
0407 B293 856 CPL YCW
857 ; SETB XCCW
0409 B280 858 CPL XCW
040B 8004 859 JMP HIGH_LOP2
040D 860 HIGH_LOP1:; SETB YCW
040D B292 861 CPL YCCW
862 ; SETB XCW
040F B281 863 CPL XCCW
0411 864 HIGH_LOP2:
0411 D0E0 865 HIGH_END: POP ACC
0413 22 866 RET
867 ;--------------------------------------------------
0414 868 STEP_DECEL: ;03_DECELERATE
0414 C0E0 869 PUSH ACC
870 ;MOV C,STEP_DIRECT
0416 20000A F 871 JB STEP_DIRECT,DECEL_LOP2
0419 C292 872 CLR YCCW
873 ; SETB YCCW
041B B293 874 CPL YCW
041D C281 875 CLR XCCW
876 ; SETB XCCW
041F B280 877 CPL XCW
0421 8008 878 JMP DECEL_LOP3
0423 C293 879 DECEL_LOP2: CLR YCW
880 ; SETB YCW
0425 B292 881 CPL YCCW
0427 C280 882 CLR XCW
883 ; SETB XCW
0429 B281 884 CPL XCCW
042B E500 F 885 DECEL_LOP3: MOV A,T0_TH
042D 6416 886 XRL A,#HIGH(65536-59904);;RAD(max)=2N/S
042F 7006 887 JNZ DECEL_LOP5
0431 E500 F 888 MOV A,T0_TL
0433 6400 889 XRL A,#LOW(65536-59904)
0435 600D 890 JZ DECEL_LOP6
0437 E500 F 891 DECEL_LOP5: MOV A,T0_TL
0439 C3 892 CLR C
043A 9480 893 SUBB A,#80H;1
043C F500 F 894 MOV T0_TL,A
043E E500 F 895 MOV A,T0_TH
0440 9400 896 SUBB A,#0
0442 F500 F 897 MOV T0_TH,A
0444 898 DECEL_LOP6:
0444 D0E0 899 DECEL_END: POP ACC
0446 22 900 RET
901 ;--------------------------------------------------
0447 902 STEP_LOW: ;04_LOW SPEED
0447 C0E0 903 PUSH ACC
0449 200013 F 904 JB STEP_L_FLAG,LOW_LOP1
044C 7500B1 F 905 MOV T0_TH,#HIGH(65536-20000);10mS;24MHZ
044F 7500E0 F 906 MOV T0_TL,#LOW (65536-20000)
A51 MACRO ASSEMBLER MD166BV1 05/27/2004 16:38:38 PAGE 14
0452 85008C F 907 MOV TH0,T0_TH
0455 85008A F 908 MOV TL0,T0_TL
0458 E4 909 CLR A
0459 F500 F 910 MOV WORK_COUNTER0,A
045B F500 F 911 MOV WORK_COUNTER1,A
045D D200 F 912 SETB STEP_L_FLAG
045F E500 F 913 LOW_LOP1: MOV A,WORK_COUNTER0 ;CHANGE WORK_COUNTER TO BCD CODE
0461 2401 914 ADD A,#01
0463 D4 915 DA A
0464 F500 F 916 MOV WORK_COUNTER0,A
0466 7007 917 JNZ LOW_LOP2
0468 E500 F 918 MOV A,WORK_COUNTER1
046A 2401 919 ADD A,#01
046C D4 920 DA A
046D F500 F 921 MOV WORK_COUNTER1,A
046F E500 F 922 LOW_LOP2: MOV A,STEP_L_COUNTER ;20000 X 0.5uS X 6 = 60mS
0471 04 923 INC A ;RAD(LOW)=1N/M
0472 F500 F 924 MOV STEP_L_COUNTER,A
0474 B40618 925 CJNE A,#06,LOW_END
0477 750000 F 926 MOV STEP_L_COUNTER,#00
047A 20000A F 927 JB STEP_DIRECT,LOW_LOP3
047D C292 928 CLR YCCW
929 ; SETB YCCW
047F B293 930 CPL YCW
0481 C281 931 CLR XCCW
932 ; SETB XCCW
0483 B280 933 CPL XCW
0485 8008 934 JMP LOW_LOP4
0487 C293 935 LOW_LOP3: CLR YCW
936 ; SETB YCW
0489 B292 937 CPL YCCW
048B C280 938 CLR XCW
939 ; SETB XCW
048D B281 940 CPL XCCW
048F 941 LOW_LOP4:
048F D0E0 942 LOW_END: POP ACC
0491 22 943 RET
944 ;-------------------------------------------------------
0492 945 STEP_WAIT: ;05_STEP WAITING
0492 750000 F 946 MOV T0_TH,#00
0495 750000 F 947 MOV T0_TL,#00
0498 C280 948 CLR XCW
049A C293 949 CLR YCW
049C C281 950 CLR XCCW
049E C292 951 CLR YCCW
952 ; SETB XCW
953 ; SETB YCW
954 ; SETB XCCW
955 ; SETB YCCW
04A0 0500 F 956 INC WAIT_COUNTER0
04A2 E500 F 957 MOV A,WAIT_COUNTER0
04A4 7002 958 JNZ WAIT_LOP1
04A6 0500 F 959 INC WAIT_COUNTER1
04A8 22 960 WAIT_LOP1: RET
961 ;===================================================
04A9 962 ASTEP_ACCEL: ;01-ACCELERATE
04A9 C0E0 963 PUSH ACC
04AB 200014 F 964 JB STEP_A_FLAG,AACCEL_LOP1
04AE 750016 F 965 MOV T0_TH,#HIGH(65536-59904);RAD(min)=2N/M
04B1 750000 F 966 MOV T0_TL,#LOW (65536-59904)
04B4 7500EA F 967 MOV _T0_TH,#HIGH(59904);RAD(min)=2N/M
04B7 750000 F 968 MOV _T0_TL,#LOW (59904)
04BA 85008C F 969 MOV TH0,T0_TH
04BD 85008A F 970 MOV TL0,T0_TL
04C0 D200 F 971 SETB STEP_A_FLAG
04C2 B200 F 972 AACCEL_LOP1: CPL T0_HL_FLAG
A51 MACRO ASSEMBLER MD166BV1 05/27/2004 16:38:38 PAGE 15
04C4 20000A F 973 JB STEP_DIRECT,AACCEL_LOP2
974 ; SETB YCCW
04C7 C292 975 CLR YCCW
04C9 B293 976 CPL YCW
977 ; SETB XCCW
04CB C281 978 CLR XCCW
04CD B280 979 CPL XCW
04CF 8008 980 JMP AACCEL_LOP3
04D1 C293 981 AACCEL_LOP2: CLR YCW
982 ; SETB YCW
04D3 B292 983 CPL YCCW
04D5 C280 984 CLR XCW
985 ; SETB XCW
04D7 B281 986 CPL XCCW
04D9 200025 F 987 AACCEL_LOP3: JB T0_HL_FLAG,AACCEL_END
04DC 120000 F 988 CALL TWO_DIV
04DF 120000 F 989 CALL TWO_SUB
04E2 E500 F 990 MOV A,_T0_TL ;400H(1024)
04E4 C3 991 CLR C
04E5 9400 992 SUBB A,#00
04E7 E500 F 993 MOV A,_T0_TH
04E9 9404 994 SUBB A,#4
04EB 5006 995 JNC AACCEL_LOP4
04ED 750004 F 996 MOV _T0_TH,#4
04F0 750000 F 997 MOV _T0_TL,#00
04F3 E500 F 998 AACCEL_LOP4: MOV A,_T0_TL
04F5 F4 999 CPL A
04F6 2401 1000 ADD A,#1
04F8 F500 F 1001 MOV T0_TL,A
04FA E500 F 1002 MOV A,_T0_TH
04FC F4 1003 CPL A
04FD 3400 1004 ADDC A,#0
04FF F500 F 1005 MOV T0_TH,A
0501 D0E0 1006 AACCEL_END: POP ACC
0503 22 1007
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -