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

📄 md166bv1.lst

📁 步进马达控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
016F C200     F      394                     CLR     STEP_L_FLAG
0171 750004   F      395                     MOV     STEP_MODEL,#04
0174 0500     F      396                     INC     task_p
0176 22              397     cwwait_EXIT:    RET
                     398     ;-------------------------------------------------------                
0177                 399     ccwlow:         ;8      step motor minus direct low speed       
0177 E500     F      400                     MOV     A,WORK_COUNTER1
                     401             ;       INC     A               ;NO-balance technology
0179 9522            402                     SUBB    A,INPORT2       ;WORK_COUNTER1
017B 7007            403                     JNZ     CCWLOW_EXIT
                     404             ;       MOV     A,WORK_COUNTER0
A51 MACRO ASSEMBLER  MD166BV1                                                             05/27/2004 16:38:38 PAGE     7

                     405             ;       SUBB    A,INPORT3       ;WORK_COUNTER0
                     406             ;       JNZ     CCWLOW_EXIT
                     407             ;       MOV     WORK_COUNTER1,#00
                     408             ;       MOV     WORK_COUNTER1,#00
017D C200     F      409                     CLR     STEP_A_FLAG
017F 750001   F      410                     MOV     STEP_MODEL,#01
0182 0500     F      411                     INC     task_p
0184 22              412     ccwlow_EXIT:    RET
                     413     ;-------------------------------------------------------                
0185                 414     clsuck:         ;9      close sucking   
0185 C244            415                     CLR     SUCK
0187 0500     F      416                     INC     task_p
0189 22              417     clsuck_EXIT:    RET
                     418     ;-------------------------------------------------------                
018A                 419     clmotor:                ;10     close tri_motor 
018A C246            420                     CLR     SC_03
018C 0500     F      421                     INC     task_p
018E 22              422     clmotor_EXIT:   RET
                     423     ;-------------------------------------------------------                
018F                 424     ccwaccel:       ;11     step motor minus direct accelerate      
018F A209            425                     MOV     C,MOTOR_MD
0191 5005            426                     JNC     ccwaccel_EXIT
0193 750002   F      427                     MOV     STEP_MODEL,#2
0196 0500     F      428                     INC     task_p
0198 22              429     ccwaccel_EXIT:  RET
                     430     ;-------------------------------------------------------                
0199                 431     ccwhigh:                ;12     step motor minus direct high speed      
0199 A208            432                     MOV     C,MOTOR_BD
019B 5005            433                     JNC     ccwhigh_EXIT
019D 750003   F      434                     MOV     STEP_MODEL,#3
01A0 0500     F      435                     INC     task_p
01A2 22              436     ccwhigh_EXIT:   RET
                     437     ;-------------------------------------------------------                
01A3                 438     ccwdecel:       ;13     step motor minus direct decelerate      
01A3 A204            439                     MOV     C,BD_END
01A5 5005            440                     JNC     ccwdecel_EXIT
                     441             ;       MOV     A,_T0_TH
                     442             ;       SUBB    A,#0EAH
                     443             ;       JNZ     ccwdecel_EXIT
                     444             ;       MOV     A,_T0_TL
                     445             ;       JNZ     ccwdecel_EXIT
                     446     
01A7 750000   F      447                     MOV     STEP_MODEL,#00
01AA 0500     F      448                     INC     task_p
01AC 22              449     ccwdecel_EXIT:  RET
                     450     ;-------------------------------------------------------                
01AD                 451     ccwstop:                ;14     step motor stop 
01AD C200     F      452                     CLR     STEP_A_FLAG
01AF C200     F      453                     CLR     STEP_L_FLAG
01B1 C200     F      454                     CLR     STEP_DIRECT
01B3 C200     F      455                     CLR     T0_HL_FLAG
01B5 C200     F      456                     CLR     STEP_M_FLAG
01B7 D280            457                     SETB    XCW
01B9 D293            458                     SETB    YCW
01BB D281            459                     SETB    XCCW
01BD D292            460                     SETB    YCCW
01BF E4              461                     CLR     A
01C0 F500     F      462                     MOV     WAIT_COUNTER0,A
01C2 F500     F      463                     MOV     WAIT_COUNTER1,A
01C4 F500     F      464                     MOV     WORK_COUNTER0,A
01C6 F500     F      465                     MOV     WORK_COUNTER1,A
01C8 0500     F      466                     INC     task_p
01CA 22              467     ccwstop_EXIT:   RET
                     468     ;-------------------------------------------------------                
01CB                 469     clclamp:                ;15     close clamping  
01CB C245            470                     CLR     CLAMP
A51 MACRO ASSEMBLER  MD166BV1                                                             05/27/2004 16:38:38 PAGE     8

01CD 0500     F      471                     INC     task_p
01CF 22              472     clclamp_EXIT:   RET
                     473     ;-------------------------------------------------------                
01D0                 474     CYC_END:        ;16
01D0 A202            475                     MOV     C,CLAMP_BD
01D2 501E            476                     JNC     CYC_END_EXIT
01D4 D249            477                     SETB    NUM_CT
                     478                     WAIT    1
01DD C249            487                     CLR     NUM_CT
01DF D248            488                     SETB    BUZZER
                     489                     WAIT    20
01E8 C248            498                     CLR     BUZZER
01EA D247            499                     SETB    OUTLAMP
01EC 750000   F      500                     MOV     task_p,#00H
01EF 750080   F      501                     MOV     AUTO_END,#80H
01F2 22              502     CYC_END_EXIT:   RET
                     503     ;--------------------------------------------------------------
                     504     ;00:-- : MACHINE ADJUST         ;BCD CODE  :  -- : --           |
                     505     ;   00 : RESET MOTION                                           |
                     506     ;   01 : CLAMP MOTION                                           |
                     507     ;   02 : SC_03 MOTION                                           |
                     508     ;   03 : SUCK MOTION                                            |
                     509     ;01:-- : TICK MOVE                                              |
                     510     ;   01 : PLUS DIRECT LOW SPEED;  11 : MINUS DIRECT LOW SPEED    |
                     511     ;   02 : PLUS DIRECT MID SPEED;  12 : MINUS DIRECT MID SPEED    |
                     512     ;   03 : PLUS DIRECT HIGH SPEED; 13 : MINUS DIRECT HIGH SPEED   |
                     513     ;02:-- : AUTO MOVE                                              |
                     514     ;   00 : PLUS DIRECT SPEED;      10 : MINUS DIRECT SPEED        |
                     515     ;---------------------------------------------------------------
                     516     ;WORKING--retrorse --CW
                     517     ;REBACK--clock direct --ccw
01F3                 518     manual_mode:    WAIT    2
01FA A20E            527                     MOV     C,MANUAL
01FC 5015            528                     JNC     MANUAL_EXIT
01FE E522            529                     MOV     A,INPORT2
0200 7003            530                     JNZ     MANUAL_LOP1
0202 120000   F      531                     CALL    MACHINE_MOVE    ;00=MACHINE MOVE
0205 14              532     MANUAL_LOP1:    DEC     A
0206 7003            533                     JNZ     MANUAL_LOP2
0208 120000   F      534                     CALL    TICK_MOVE       ;01=TICK MOVE
020B 14              535     MANUAL_LOP2:    DEC     A
020C 7003            536                     JNZ     MANUAL_LOP3
020E 120000   F      537                     CALL    AUTO_MOVE       ;02=AUTO MOVE
0211 80E0            538     MANUAL_LOP3:    JMP     MANUAL_MODE     
0213 C247            539     MANUAL_EXIT:    CLR     OUTLAMP
0215 22              540                     RET
                     541     ;---------------------------------------------------------------------
0216 E523            542     MACHINE_MOVE:   MOV     A,INPORT3
0218 540F            543                     ANL     A,#0FH
021A F500     F      544                     MOV     manual_code,A
021C 120000   F      545     _OUT:           CALL    OUT_LAMP
021F A20D            546                     MOV     C,EXECUTE
0221 5026            547                     JNC     M_MOVE_END
0223 A20D            548     M_M_LOP1:       MOV     C,EXECUTE
0225 40FC            549                     JC      M_M_LOP1
                     550     ;               CLR     OUTLAMP 
0227 900000   F      551                     MOV     DPTR,#MANUAL_VECTOR
022A E500     F      552                     MOV     A,manual_code
022C 25E0            553                     ADD     A,ACC
022E 2500     F      554                     ADD     A,manual_code
0230 73              555                     JMP     @A+DPTR
0231 020000   F      556     MANUAL_VECTOR:  LJMP    MANU_EXE0
0234 020000   F      557                     LJMP    MANU_EXE1
0237 020000   F      558                     LJMP    MANU_EXE2
023A 020000   F      559                     LJMP    MANU_EXE3
023D C247            560     MANU_EXE0:      CLR     OUTLAMP
A51 MACRO ASSEMBLER  MD166BV1                                                             05/27/2004 16:38:38 PAGE     9

023F 22              561                     RET
0240 B245            562     MANU_EXE1:      CPL     CLAMP
0242 22              563                     RET
0243 B246            564     MANU_EXE2:      CPL     SC_03
0245 22              565                     RET
0246 B244            566     MANU_EXE3:      CPL     SUCK
0248 22              567                     RET
0249 22              568     M_MOVE_END:     RET
                     569     ;------------------------------------------------------
024A 7003            570     OUT_LAMP:       JNZ     OUT_L1
024C C247            571                     CLR     OUTLAMP
024E 22              572                     RET
024F 14              573     OUT_L1:         DEC     A       
0250 7005            574                     JNZ     OUT_L2
0252 A245            575                     MOV     C,CLAMP         ;1
0254 9247            576                     MOV     OUTLAMP,C
0256 22              577                     RET
0257 14              578     OUT_L2:         DEC     A
0258 7005            579                     JNZ     OUT_L3
025A A246            580                     MOV     C,SC_03         ;2
025C 9247            581                     MOV     OUTLAMP,C
025E 22              582                     RET
025F 14              583     OUT_L3:         DEC     A
0260 7005            584                     JNZ     OUT_L4
0262 A244            585                     MOV     C,SUCK          ;3
0264 9247            586                     MOV     OUTLAMP,C
0266 22              587                     RET
0267 C247            588     OUT_L4:         CLR     OUTLAMP
0269 22              589                     RET
                     590     ;---------------------------------------------------------------------
026A E523            591     TICK_MOVE:      MOV     A,INPORT3
026C FA              592                     MOV     R2,A
026D 540F            593                     ANL     A,#0FH
026F 14              594                     DEC     A                       ;01 = LOW SPEED
0270 7008            595                     JNZ     TICK_LOP1
0272 750015   F      596                     MOV     T0_TH,#HIGH(65536-60000);30mS   LOW SPEED
0275 7500A0   F      597                     MOV     T0_TL,#LOW(65536-60000) ;RAD=1N/30S
0278 8014            598                     JMP     TICK_LOP3
027A 14              599     TICK_LOP1:      DEC     A
027B 7008            600                     JNZ     TICK_LOP2
027D 7500B1   F      601                     MOV     T0_TH,#HIGH(65536-20000);10mS   MID SPEED
0280 7500E0   F      602                     MOV     T0_TL,#LOW(65536-20000) ;RAD=1N/10S
0283 8009            603                     JMP     TICK_LOP3
0285 14              604     TICK_LOP2:      DEC     A
0286 7041            605                     JNZ     TICK_EXIT
0288 7500F8   F      606                     MOV     T0_TH,#HIGH(65536-2000) ;1mS   HIGH SPEED
028B 750030   F      607                     MOV     T0_TL,#LOW(65536-2000)  ;RAD=1N/S
028E EA              608     TICK_LOP3:      MOV     A,R2
028F 54F0            609                     ANL     A,#0F0H

⌨️ 快捷键说明

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