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

📄 dl050301.asm

📁 印刷或包装机控制中的上料控制器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        MOV    R2, #30H
        MOV    R3, #08H
        LCALL  WR24WC02
        ORL    5AH, #10H
        RET
OUTRESET:
       RET
;***********KEYRESETDOWN PROCESS END***************
;***********TIMER0 INITIAL VALUE ,TIMMING AND PULL BAG START************
CTLOUT:
         JB    7AH,CHECKSPEED
         SETB  7AH
         SJMP  LOAD
CHECKSPEED:

         JB   7BH,LOAD
         INC   SPEEDERRTIMER
         MOV   A,SPEEDERRTIMER
         CJNE  A,#02H,CTL4
         MOV   SPEEDERRTIMER,#00H
         SETB  SPEEDERR
         SJMP  CTL4
LOAD:
         CLR  7BH
         SETB RD
         MOV  TH0,#0FEH
         MOV  TL0,#0BH
         JB   58H,CTL1
         SJMP  CTL2
CTL1:
     MOV 3AH,54H
     MOV  3BH,55H
     MOV  A,#00H
     MOV  38H,A
     MOV 39H,A
     MOV  3CH,A
     MOV 3DH,A
     MOV  0BH,#3AH

     MOV  09H,#00H
     SJMP CTL3
CTL2:
      MOV  38H,56H
      MOV  39H,57H
      MOV  3AH,54H
      MOV  3BH,55H
      MOV  3CH,60H
      MOV  3DH,61H
      MOV 09H,#01H
      MOV 0BH,#38H
      MOV 0AH,#06h


CTL3:
      SETB TR0
      SETB P2.0
      SETB 59H
      ANL 5AH,#0FEH
CTL4:
      RET

L0587H:

       JNB 77H,L05A8H
       JB 7BH,L05A8H ;EXCHANGE 77,7B?

       LCALL  L05DFH
       CLR   69H
L05A8H:
       RET

L05D8H:
      CLR  79H
      SETB  77H
      SETB 69H
      RET
L05DFH:
       SETB  7BH
       CLR  TR0
       ORL  5AH,#01H
       CLR  P2.0
       CLR 59H
       CLR 7AH
       JB  79H,L05D8H

BAGINC:
        CLR  EX1
        INC    4FH
        MOV    A, 4FH
        CJNE   A, #0AH, L0662H
        MOV    4FH, #00H
        MOV    SPEEDERRTIMER,#00H
        INC    4EH
        MOV    A, 4EH
        CJNE   A, #0AH, L0662H
        MOV    4EH, #00H
        CLR    6EH
        INC    4DH
        MOV    A, 4DH
        CJNE   A, #0AH, L0662H
        MOV    4DH, #00H
        INC    4CH
        MOV    A, 4CH
        CJNE   A, #0AH, L0662H
        MOV    4CH, #00H
        INC    4BH
        MOV    A, 4BH
        CJNE   A, #0AH, L0662H
        MOV    4BH, #00H
        INC    4AH
        MOV    A, 4AH
        CJNE   A, #0AH, L0662H
        MOV    4AH, #00H
        INC    49H
        MOV    A, 49H
        CJNE   A, #0AH, L0662H
        MOV    49H, #00H
L0662H:
      JNB  INT1,NOINT
      CLR  6EH
NOINT:
      SETB  EX1
      SETB P2.1
      MOV  TH1,#0D8H
      MOV  TL1,#0EFH
      SETB TR1
      MOV  52H,#00H
      MOV  53H,#00H
L06A0H:
      RET
       ;***********************TIMER0 END**************
 ;************************RUN LAMP OFF AND APPROACH SWITCH(P2.1)*******

TIMER0:
      CPL   P2.0
      CPL   59H
      PUSH  ACC
       PUSH PSW
      PUSH B
      PUSH DPL
      PUSH DPH
      SETB RS0

      JNB 59H,JAJ10
      CLR ET0
      MOV R0,#52H
      INC @R0
      CJNE @R0,#00H,JAJ2
      INC R0
      INC @R0
      CJNE @R0,#00H,JAJ2
      CLR TR0
      CLR RD
      LCALL ERROR
JAJ2:
     SETB ET0
     CJNE R3,#38H,JAJ5
     MOV R0,#38H
     DEC @R0
     CJNE @R0,#0FFH,JAJ3
     INC R0
     DEC @R0
JAJ3:
     DJNZ  R2,JAJ4
     INC R1
     ;MOV A,R1
     ;MOV B,#01H

     ;MUL AB
     MOV R2, #06h

JAJ4:
     MOV A,38H
     ORL A,39H


     JNZ JAJ10
     CLR TR0
    ; sjmp $
     MOV R3,#3AH
     SJMP JAJ10
JAJ5:
     CJNE R3,#3AH,JAJ7
     MOV R0,#3AH
     DEC @R0
     CJNE @R0,#0FFH,JAJ6
     INC R0
     DEC @R0

JAJ6:
     MOV  A,3AH
     ORL A,3BH
     JNZ JAJ10
     ;sjmp $
     JB 58H,SIGNAL
     MOV R3,#3CH
     DEC  R1
     ;MOV A,R1
     ;MOV B,#01H
     ;MUL AB
     MOV R2,#06h
     SJMP JAJ10
 JAJ7:
     CJNE  R3,#3CH,JAJ11
     MOV R0,#3CH
     DEC @R0
     CJNE @R0,#0FFH,JAJ8
     INC R0
     DEC @R0
JAJ8:
     DJNZ  R2,JAJ9
     DEC R1
     ;MOV A,R1
     ;MOV B,#01H
     ;MUL AB
     MOV R2,#06h

JAJ9:
     MOV A,3CH
     ORL A,3DH

     JNZ JAJ10
     MOV  R3,#00H
     MOV 18H,R0
     MOV 19H,R1
     MOV 1AH,R2
SIGNAL:
     LCALL L0587H
     SJMP JAJ11
JAJ10:
     JB 58H,JAJ101
     MOV DPTR,#ABC
     MOV A,R1
     RL A
     MOV B,A
     MOVC A,@A+DPTR
     CLR C
     ADD A,#02H
JAJ100:
     JNC JAJ1000
     MOV  TH0,#01H
JAJ1000:
     CLR C
     CLR TR0
     ADD A,TL0
     CLR TR0
     JNC  JAJ10000
     MOV TH0,#01H
JAJ10000:
     MOV TL0,A
     ;MOV 60H,A
     MOV A,B
     INC A
     MOV DPTR,#ABC
     MOVC A,@A+DPTR
     ADD A, TH0
     MOV TH0,A
     ;MOV  61H,A
     SETB TR0
     SJMP  JAJ11
JAJ101:
     MOV  TH0,#0FEH
     MOV  TL0,#0BH
     SETB TR0
;JAJ1001:
     ;ADD  TL0,60H

     ;SETB TR0
JAJ11:
     POP DPH
     POP DPL
     POP B
     POP PSW
     POP ACC
     RETI
ABC:
        DB 0BH,  0FEH,  0BH, 0FEH, 0BH, 0FEH,  014H, 0FEH, 01EH, 0FEH ; 10
        DB 01EH, 0FEH, 033H, 0FEH, 04DH, 0FEH, 064H, 0FEH ; 15
        DB 079H, 0FEH, 08CH, 0FEH, 09DH, 0FEH, 0ADH, 0FEH, 0BBH, 0FEH ; 20
        DB 0C8H, 0FEH, 0D5H, 0FEH, 0E0H, 0FEH, 0EAH, 0FEH, 0F4H, 0FEH ; 25
        DB 0FDH, 0FEH, 006H, 0FFH, 00EH, 0FFH, 016H, 0FFH, 01DH, 0FFH ; 30
        DB 023H, 0FFH, 02AH, 0FFH, 030H, 0FFH, 035H, 0FFH, 03BH, 0FFH ; 35
        DB 040H, 0FFH, 045H, 0FFH, 049H, 0FFH, 04EH, 0FFH, 052H, 0FFH ; 40
        DB 056H, 0FFH, 05AH, 0FFH, 05EH, 0FFH, 061H, 0FFH, 064H, 0FFH ; 45
        DB 068H, 0FFH, 06BH, 0FFH, 06EH, 0FFH, 071H, 0FFH, 074H, 0FFH ; 50
        DB 076H, 0FFH, 079H, 0FFH, 07BH, 0FFH, 07EH, 0FFH, 080H, 0FFH ; 55
        DB 082H, 0FFH, 084H, 0FFH, 087H, 0FFH, 089H, 0FFH, 08BH, 0FFH ; 60
        DB 08DH, 0FFH, 08EH, 0FFH, 090H, 0FFH, 092H, 0FFH, 094H, 0FFH ; 65
        DB 095H, 0FFH, 097H, 0FFH, 098H, 0FFH, 09AH, 0FFH, 09BH, 0FFH ; 70
        DB 09BH, 0FFH, 09CH, 0FFH, 09DH, 0FFH, 09EH, 0FFH, 09EH, 0FFH ; 75
        DB 09FH, 0FFH, 0A0H, 0FFH, 0A0H, 0FFH, 0A1H, 0FFH, 0A1H, 0FFH  ;80
        DB 0A2H, 0FFH, 0A2H,0FFH,   0A3H, 0FFH,0A3H, 0FFH, 0A3H, 0FFH
TIMER1:
     PUSH   ACC
     PUSH   PSW
     MOV    TH0,#0D8H
     MOV    TL0,#0EFH

     CLR    P2.1
     SETB   71H

     pop  psw
     pop acc
     RETI
;***********************DATA PROCESS**********************************
DATAPROCESS:
        CLR   C
        MOV    A, 44H
        SWAP   A
        ORL    A, 45H
        MOV    R2, A
        MOV    A,46H
        SWAP A
        ORL    A,47H
        MOV    R3,A
        LCALL L0A8CH
        MOV A,R3
        MOV 58H,A
        MOV A,R2
        MOV 59H,A
        JNZ DATAPROCESS1
        CLR C
        MOV A,58H
        SUBB A,#10H
        JNC DATAPROCESS1
        MOV 58H,#10H
DATAPROCESS1:
        CLR C
        MOV A,58H
        RLC A
        MOV 54H,A
        MOV  A,59H
        RLC A
        MOV  55H,A
        MOV  A,54H
        CLR C
        RLC A
        MOV  54H,A
        MOV  A,55H
        RLC A
        MOV 55H,A
READSPEED:
        MOV    A, 40H
        MOV   DPTR,#SPEED_TAB
        MOVC A,@A+DPTR
        MOV   63H,A
        SJMP   STEP
SPEED_TAB:
        DB    8H
        DB    16H
        DB    20H
        DB    26H
        DB    30H
        DB    38H
        DB    3CH
        DB    42H
        DB    48H
        DB    55H

STEP:
        MOV A,63H
        CLR C
        SUBB A,#12
        JNC UPDOWN
        SETB 58H
        SJMP  PROTECT
UPDOWN:
        INC A
        MOV  63H,A
        SUBB  A,#0AH
        MOV   64H,A
        MOV  R2,#00H
        MOV  R3,63H
        MOV  R6,#00H
        MOV  R7,#06h
        LCALL L0AC6H
        MOV  56H,R5
        MOV  57H,R4
        CLR  C
        ;MOV  A,56H
        ;RLC  A
        ;MOV  3EH,A
        ;MOV  A,57H
        ;RLC A
        ;MOV  3FH,A
        MOV  R2,#00H
        MOV  R3,64H
        MOV  R6,#00H
        MOV  R7,#06h
        LCALL L0AC6H
        MOV  60H,R5
        MOV  61H,R4
        CLR  C
        MOV  A,56H
        ADD  A,60H
        MOV  3EH,A
        MOV  A,57H
        ADDC  A,61H
        MOV  3FH,A
        CLR  C
        MOV  A,54H
        SUBB A,3EH
        MOV  54H,A
        MOV  A,55H
        SUBB A,3FH
        MOV  55H,A
        JC   ERROR
        MOV  A,55H
        JNZ  PROTECT
        MOV  A,54H
        JZ   ERROR
        CLR  70H
PROTECT:
        MOV    DPTR, #0034H
        INC    0A2H
        MOV    DPTR, #0078H
        INC    0A2H
        MOV    A, 82H
        CJNE   A, #78H, DATAEND
        LJMP   DATAEND
DATAEND:
        RET


ERROR:

        SETB  70H
        CLR   TR0
        RET

;*********************DATA PROCESS OVER ****************
;**********************4LED DEMONSTRATE*****************
DEMO:
        MOV    DPTR, #TABLE
        JB     7EH, L0834H
        MOV    A, 31H
        CJNE   A, #01H, L0834H
        MOV    80H, #0FFH
        SJMP   LED1
L0834H:
        MOV    A, @R0
        MOVC   A, @A+DPTR
        MOV    80H, A

LED1:
        CLR    P2.4
        LCALL  L08F8H
        SETB   P2.4
DISPLAY2:
        INC    R0
        MOV    DPTR, #TABLE
        JB     7EH, L0852H
        MOV    A, 31H
        CJNE   A, #02H, L0852H
        MOV    80H, #0FFH
        SJMP   LED2
L0852H:

        MOV    A, @R0
        MOVC   A, @A+DPTR
        MOV    80H, A
        MOV    A,30H
        CJNE   A,#02H,LED2
        CLR    P0.3
LED2:
        CLR    P2.5
        LCALL  L08F8H
        SETB   P2.5
DISPLAY3:
        INC    R0
         MOV    DPTR, #TABLE
        JB     7EH, L086BH
        MOV    A, 31H
        CJNE   A, #03H, L086BH
        MOV    80H, #0FFH
        SJMP   LED3
L086BH:

        MOV    A, @R0
        MOVC   A, @A+DPTR
        MOV    80H, A


LED3:
        CLR    P2.6
        LCALL  L08F8H
        SETB   P2.6
DISPLAY4:
        INC    R0
         MOV    DPTR, #TABLE
        JB     7EH, L088EH
        MOV    A, 31H
        CJNE   A, #04H, L088EH
        MOV    80H, #0FFH
        SJMP   LED4
L088EH:

        MOV    A, @R0
        MOVC   A, @A+DPTR
        MOV    80H, A

LED4:
        CLR    P2.7
        LCALL  L08F8H
        SETB   P2.7
DISPLAYLAMP:

        MOV    80H, 5AH
        MOV    A,30H
        JNB    70H, SPEEDCHECK
        MOV    C,7EH
        MOV    P0.1,C
        JB     7EH,SPEEDCHECK
        CLR    RD
 SPEEDCHECK:
        JNB   SPEEDERR,INTLED
        MOV   C,7EH
        MOV   P0.4,C
        JB    7EH,INTLED
        CLR   RD
INTLED:
        JNB  64H,LAMP
        CLR  P0.2
LAMP:
        CLR    P2.3
        LCALL  L08F8H
        SETB   P2.3
        INC    37H
        MOV    A, 37H
        CJNE   A, #1EH, L08C2H
        MOV    37H, #00H
        CPL    7EH
L08C2H:
        RET
 ;*****************4LED DEMONSTRATE OVER**********************
 ;*****************SEARCH FOR START AND CURSOR SIGNAL****************
L08F8H:
        MOV    35H, #04H
L08FBH:
        MOV    36H, #32H
L08FEH:
        JB     60H, L096CH
        JNB    P1.0, L0971H
        MOV    65H, #0FAH
L0907H:
        JNB    P1.0, L0971H
        DJNZ   65H, L0907H
        SETB   60H
        JB     79H,L0971H
        JNB    77H,L0971H
        ;JNB  71H,L0971H
        ;CLR  71H
        CLR    TR1
        CLR    P2.1
        CLR    69H
        JB     70H,L0971H
        JB      SPEEDERR,L0971H

        LCALL  CTLOUT
        SJMP   L0971H
L096CH:
        JB     P1.0, L0971H
        CLR    60H
L0971H:
        DJNZ   36H, L099BH;judge for 50*4=200 TIMES ,RET.
        DJNZ   35H, L099EH
STARTOK:
       RET

L099BH:
        LJMP   L08FEH
L099EH:
        LJMP   L08FBH
;*****************SEARCH START AND CURSOR OVER*********
       MOV    32H, #0FAH
L09A4H:
        NOP                     ;WHAT USE?
        NOP
        DJNZ   32H, L09A4H
        RET
;*****************DELAY 100MS BEGIN**************
L09AAH:
        MOV    32H, #0CH
L09ADH:
        MOV    33H, #0FAH
L09B0H:
        DJNZ   33H, L09B0H
        DJNZ   32H, L09ADH
        RET
DELAY100MS:
        MOV    32H, #0C8H
        SJMP   L09ADH
        MOV    34H, #0FAH
L09BFH:
        LCALL  L09AAH
        DJNZ   34H, L09BFH
        RET
DROPOWER:

        CLR    EX1

        JB     7FH, L09EFH
        JB     6EH, L09EFH
        SETB   6EH

SAVEDATA:

⌨️ 快捷键说明

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