📄 md166bv1.lst
字号:
0291 C4 610 SWAP A
0292 7004 611 JNZ TICK_LOP4
0294 C200 F 612 CLR STEP_DIRECT
0296 8005 613 JMP TICK_LOP5
0298 14 614 TICK_LOP4: DEC A
0299 502E 615 JNC TICK_EXIT
029B D200 F 616 SETB STEP_DIRECT
029D 617 TICK_LOP5:
029D A20D 618 _TICK_START: MOV C,EXECUTE
029F 5017 619 JNC _TICK_STOP
02A1 A20A 620 MOV C,MOTOR_FD
02A3 B000 F 621 ANL C,/STEP_DIRECT
02A5 4011 622 JC _TICK_STOP
02A7 A204 623 MOV C,BD_END
02A9 8200 F 624 ANL C,STEP_DIRECT
02AB 400B 625 JC _TICK_STOP
02AD D291 626 SETB XFREE
A51 MACRO ASSEMBLER MD166BV1 05/27/2004 16:38:38 PAGE 10
02AF D290 627 SETB YFREE
02B1 750002 F 628 MOV STEP_MODEL,#02
02B4 D200 F 629 SETB STEP_M_FLAG
02B6 80E5 630 JMP _TICK_START
02B8 C200 F 631 _TICK_STOP: CLR STEP_M_FLAG
02BA 750000 F 632 MOV STEP_MODEL,#00
02BD C280 633 CLR XCW
02BF C293 634 CLR YCW
635 ; SETB XCW
636 ; SETB YCW
02C1 C281 637 CLR XCCW
02C3 C292 638 CLR YCCW
639 ; SETB XCCW
640 ; SETB YCCW
02C5 C291 641 CLR XFREE
02C7 C290 642 CLR YFREE
02C9 22 643 TICK_EXIT: RET
644 ;--------------------------------------------------------------------
02CA E523 645 AUTO_MOVE: MOV A,INPORT3
02CC 54F0 646 ANL A,#0F0H
02CE C4 647 SWAP A
02CF 7004 648 JNZ _AUTO_LOP1
02D1 C200 F 649 CLR STEP_DIRECT
02D3 8005 650 JMP _AUTO_LOP2
02D5 14 651 _AUTO_LOP1: DEC A
02D6 5039 652 JNC _AUTO_EXIT
02D8 D200 F 653 SETB STEP_DIRECT
02DA A20D 654 _AUTO_LOP2: MOV C,EXECUTE
02DC 5033 655 JNC _AUTO_EXIT
02DE A20D 656 _AUTO_START: MOV C,EXECUTE
02E0 40FC 657 JC _AUTO_START
02E2 A200 F 658 MOV C,STEP_DIRECT
02E4 8204 659 ANL C,BD_END
02E6 4016 660 JC _AUTO_STOP
02E8 A20A 661 MOV C,MOTOR_FD
02EA B000 F 662 ANL C,/STEP_DIRECT
02EC 4010 663 JC _AUTO_STOP
02EE D291 664 SETB XFREE
02F0 D290 665 SETB YFREE
02F2 A200 F 666 MOV C,STEP_DIRECT
02F4 4005 667 JC _AUTO_S_LOP1
02F6 120000 F 668 CALL _AUTO_PLUS
02F9 8003 669 JMP _AUTO_STOP
02FB 120000 F 670 _AUTO_S_LOP1: CALL _AUTO_MINUS
671
02FE 750000 F 672 _AUTO_STOP: MOV STEP_MODEL,#00
0301 C200 F 673 CLR STEP_A_FLAG
0303 C200 F 674 CLR T0_HL_FLAG
0305 C280 675 CLR XCW
0307 C293 676 CLR YCW
0309 C281 677 CLR XCCW
030B C292 678 CLR YCCW
030D C291 679 CLR XFREE
030F C290 680 CLR YFREE
0311 22 681 _AUTO_EXIT: RET
682 ;-------------------------------------------------------
0312 750001 F 683 _AUTO_PLUS: MOV STEP_MODEL,#01
0315 C200 F 684 CLR STEP_A_FLAG
0317 C200 F 685 CLR T0_HL_FLAG
0319 D200 F 686 SETB STEP_M_FLAG
031B A204 687 MOV C,BD_END
031D 5010 688 JNC _PLUS_EXIT
031F A208 689 _PLUS_LOP1: MOV C,MOTOR_BD
0321 50FC 690 JNC _PLUS_LOP1
0323 0500 F 691 INC STEP_MODEL
0325 A209 692 _PLUS_LOP2: MOV C,MOTOR_MD
A51 MACRO ASSEMBLER MD166BV1 05/27/2004 16:38:38 PAGE 11
0327 50FC 693 JNC _PLUS_LOP2
0329 0500 F 694 INC STEP_MODEL
032B A20A 695 _PLUS_LOP3: MOV C,MOTOR_FD
032D 50FC 696 JNC _PLUS_LOP3
032F C200 F 697 _PLUS_EXIT: CLR STEP_M_FLAG
0331 750000 F 698 MOV STEP_MODEL,#00
0334 22 699 RET
700 ;-------------------------------------------------------
0335 750001 F 701 _AUTO_MINUS: MOV STEP_MODEL,#01
0338 C200 F 702 CLR STEP_A_FLAG
033A C200 F 703 CLR T0_HL_FLAG
033C D200 F 704 SETB STEP_M_FLAG
033E A209 705 _MINUS_LOP1: MOV C,MOTOR_MD
0340 50FC 706 JNC _MINUS_LOP1
0342 0500 F 707 INC STEP_MODEL
0344 A208 708 _MINUS_LOP2: MOV C,MOTOR_BD
0346 50FC 709 JNC _MINUS_LOP2
0348 0500 F 710 INC STEP_MODEL
034A A204 711 _MINUS_LOP3: MOV C,BD_END
034C 50FC 712 JNC _MINUS_LOP3
034E C200 F 713 CLR STEP_M_FLAG
0350 750000 F 714 MOV STEP_MODEL,#00
0353 22 715 RET
716 ;-------------------------------------------------------
0354 750001 F 717 _SYSTEM_INIT: MOV SEL_BYTE,#01
0357 750000 F 718 MOV tick_clock,#00
035A 750030 F 719 MOV LSB_PERIOD,#LOW(65536-2000) ;1mS
035D 7500F8 F 720 MOV MSB_PERIOD,#HIGH(65536-2000)
0360 85008B F 721 MOV TL1,LSB_PERIOD
0363 85008D F 722 MOV TH1,MSB_PERIOD
0366 438910 723 ORL TMOD,#10H
0369 D2AF 724 SETB EA
036B D2AB 725 SETB ET1
036D D28E 726 SETB TR1
727 WAIT 100
0376 C2B7 736 CLR OOE
0378 22 737 RET
738 ;-------------------------------------------------------
0379 85008C F 739 _STEP_INIT: MOV TH0,T0_TH
037C 85008A F 740 MOV TL0,T0_TL
037F 438901 741 ORL TMOD,#01H
0382 D2AF 742 SETB EA
0384 D2A9 743 SETB ET0
0386 D28C 744 SETB TR0
0388 22 745 RET
746 ;-------------------------------------------------------
0389 A202 747 _MACH_INIT: MOV C,CLAMP_BD
038B 5026 748 JNC _MACH_FAIL
749 ; MOV C,CLAMP_FD
750 ; JC _MACH_FAIL
038D A204 751 MOV C,BD_END
038F 402D 752 JC _MACH_END ;_MACH_MOVE
753 ; MOV T0_TH,#HIGH(65536-20000) ;10mS
754 ; MOV T0_TL,#LOW(65536-20000) ;RAD=1N/10S
755 ; CLR STEP_DIRECT ;0-PLUS;1-MINUS
756 ; MOV STEP_MODEL,#02 ;HIGH SPEED
757 ; SETB STEP_M_FLAG
758 ; MOV R7,#10
759 ;_MACH_LOP1: WAIT 100 ;10*100*10mS=10S
760 ; DJNZ R7,_MACH_LOP1
761 ; CLR STEP_M_FLAG
762 ; MOV STEP_MODEL,#00
763 ; SETB XCW
764 ; SETB YCW
765 ; SETB XCCW
766 ; SETB YCCW
A51 MACRO ASSEMBLER MD166BV1 05/27/2004 16:38:38 PAGE 12
767 ; RET
0391 7500B1 F 768 _MACH_MOVE: MOV T0_TH,#HIGH(65536-20000) ;10mS
0394 7500E0 F 769 MOV T0_TL,#LOW(65536-20000) ;RAD=1N/10S
0397 D200 F 770 SETB STEP_DIRECT ;0-PLUS;1-MINUS
0399 750002 F 771 MOV STEP_MODEL,#02 ;HIGH SPEED
039C D200 F 772 SETB STEP_M_FLAG
039E A204 773 _MOVE_LOP1: MOV C,BD_END
03A0 50FC 774 JNC _MOVE_LOP1
03A2 C200 F 775 CLR STEP_M_FLAG ;CLOSE STEP MOTOR
776 ; SETB XCW
777 ; SETB YCW
778 ; SETB XCCW
779 ; SETB YCCW
03A4 C280 780 CLR XCW
03A6 C293 781 CLR YCW
03A8 C281 782 CLR XCCW
03AA C292 783 CLR YCCW
03AC C291 784 CLR XFREE
03AE C290 785 CLR YFREE
03B0 C200 F 786 CLR STEP_DIRECT ;0-PLUS;1-MINUS
787 ; SETB STEP_M_FLAG
788 ; MOV R7,#10
789 ;_MOVE_LOP2: WAIT 100 ;10*100*10mS=10S
790 ; DJNZ R7,_MOVE_LOP2
791 ; CLR STEP_M_FLAG
792 ; MOV STEP_MODEL,#00
793 ; SETB XCW
794 ; SETB YCW
795 ; SETB XCCW
796 ; SETB YCCW
03B2 22 797 RET
03B3 B248 798 _MACH_FAIL: CPL BUZZER
799 WAIT 50
03BC 80F5 808 JMP _MACH_FAIL
03BE 22 809 _MACH_END: RET
810
811 ;=======================================================
03BF 812 STEP_ACCEL: ;01-ACCELERATE
03BF C0E0 813 PUSH ACC
03C1 20000E F 814 JB STEP_A_FLAG,ACCEL_LOP1
03C4 750016 F 815 MOV T0_TH,#HIGH(65536-59904);RAD(min)=2N/M
03C7 750000 F 816 MOV T0_TL,#LOW (65536-59904)
03CA 85008C F 817 MOV TH0,T0_TH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -