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

📄 hhh.asm

📁 基于51单片机Atmel89C554开发的染色机源程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        ORG     0000H                                                                                                                              ORG     0000H
        LJMP    LPC00
        ORG     000BH
        LJMP    INT0
        ORG     0013H
        LJMP    RDAI0
        ;ORG     0023H
        ;LJMP    LUART
        ORG     0060H
        CCON EQU 0D8H
        SFCF EQU 0B1H
        SFCM EQU 0B2H
        SFAL EQU 0B3H
        SFAH EQU 0B4H
        SFDT EQU 0B5H
        SFST EQU 0B6H
        IPH  EQU 0B7H
        AUXR EQU 8EH
        AUXR1 EQU 0A2H
        CCAP3L EQU 0EDH
        CCAP3H EQU 0FDH
        CCAPM3 EQU 0DDH
        CMOD   EQU 0D9H
LPC00:  CLR     P2.2
        SETB    P2.1
        CLR     P2.0
        MOV     12H,#00H
        MOV     AUXR,#00H
        MOV     DPTR,#0120H
        MOVX    A,@DPTR
        CJNE    A,#0AAH,LPC01
        INC     DPTR
        MOVX    A,@DPTR
        CJNE    A,#0BBH,LPC01
        INC     DPTR
        MOVX    A,@DPTR
        CJNE    A,#0CCH,LPC01
        MOV     TH0,#0CBH
        MOV     TL0,#0EBH
        MOV     TMOD,#01H
        SETB    EA
        SETB    EX1
        SETB    ET0
        SETB    IT1
        SETB    TR0
        CLR     RS0
        CLR     RS1
        CLR     40H
        MOV     46H,#00H
        SETB    P2.5
        MOV     SP,#60H
        MOV     SFCF,#01H
        SETB    13H
        CLR     P1.7
        MOV     R0,#0AH
        MOV     A,#20H
        MOVX    @R0,A
        INC     R0
        MOV     A,#02H
        MOVX    @R0,A
        SETB    P1.7
        CLR     13H
        SETB    11H
        CLR     P1.4
        MOV     R0,#03H
        MOV     A,#99H
        MOVX    @R0,A
        SETB    P1.4
        CLR     11H
        MOV     45H,#0AH
        LCALL   LCDSET
        MOV     4AH,#50H
        MOV     4BH,#00H
        MOV     4CH,#05H
        MOV     4DH,#07H
        MOV     A,4DH
        LCALL   LCPWD
        MOV     A,4CH
        LCALL   LCPWD
        MOV     A,#21H
        LCALL   LCPWC
        DEC     4DH
        CLR     6AH
        CLR     6BH
        MOV     13H,#00H
        MOV     R1,#0E2H
        MOV     A,#10H
        MOV     @R1,A
        LJMP    GYRUN
LPC01:  MOV     23H,#00H
        MOV     24H,#00H
        MOV     25H,#00H
        MOV     26H,#00H
        LCALL   L595W
        CLR     RS0
        CLR     RS1
        MOV     46H,#00H
        SETB    P2.5
        CLR     P2.4
        NOP
        NOP
        NOP
        SETB    P2.4
        MOV     SFCF,#01H
        CLR     P1.2
        MOV     AUXR,#02H
        SETB   13H
        CLR    P1.7
        MOV    R0,#0AH
        MOV    A,#20H
        MOVX   @R0,A
        INC    R0
        MOV    A,#02H
        MOVX   @R0,A
        SETB    P1.7
        CLR     13H
        SETB    11H
        CLR     P1.4
        MOV     R0,#03H
        MOV     A,#99H
        MOVX    @R0,A
        SETB    P1.4
        CLR     11H
        LCALL   LCDSET
SEJ00:  MOV     SP,#60H
        MOV     AUXR,#00H
        CLR     A
        MOV     R7,#0FFH
        MOV     R0,#08H
WZRO0:  MOV     @R0,A
        INC     R0
        DJNZ    R7,WZRO0
        MOV     @R0,A
        CLR     A
        MOV     R2,#03H
        MOV     DPTR,#00H
WZRO2:  MOV     R7,#0FFH
WZRO1:  MOVX    @DPTR,A
        INC     DPTR
        DJNZ    R7,WZRO1
        MOVX    @DPTR,A
        DJNZ    R2,WZRO2
        CLR     P2.2
        SETB    P2.1
        CLR     P2.0
        MOV     12H,#00H
        MOV     5AH,#01H
        MOV     5BH,#01H
        MOV     0CH,#01H
        MOV     R1,#0E2H
        MOV     A,#10H
        MOV     @R1,A
        MOV     TH0,#0CBH
        MOV     TL0,#0EBH
        MOV     TMOD,#01H
        SETB    EA
        SETB    EX1
        SETB    ET0
        SETB    IT1
        SETB    TR0
MAIN0:  JB      60H,MAIN4
        MOV     AUXR,#02H
        MOV     R0,#00H
        SETB    11H
        CLR     P1.4
        MOVX    A,@R0
        SETB    P1.4
        CLR     11H
        JB      ACC.3,MAIN2
MAIN1:  LCALL   DLAY0
        MOV     AUXR,#02H
        MOV     R0,#00H
        SETB    11H
        CLR     P1.4
        MOVX    A,@R0
        SETB    P1.4
        CLR     11H
        JNB     ACC.3,MAIN2
        JB      65H,MAIN5
        SETB    61H
        LCALL   LDDIS0
        SETB    65H
        CLR     66H
MAIN5:  AJMP    MAIN3
MAIN4:  LJMP    MAIRUN
MAIN2:  LCALL   DLAY0
        MOV     R0,#00H
        SETB    11H
        CLR     P1.4
        MOVX    A,@R0
        SETB    P1.4
        CLR     11H
        JB      ACC.3,MAIN1
        JB      66H,MAIN3
        CLR     61H
        LCALL   LDDIS1
        SETB    66H
        CLR     65H
MAIN3:  LCALL  KAY
        LCALL  RDFSZ
        LCALL  FBASE
        LJMP   MAIN0
GYRUNO: AJMP    GYRUN
MAIRUN: JB     67H,GYRUNO
        CLR     A
        MOV     40H,A
        MOV     41H,A
        MOV     42H,A
        MOV     43H,A
        MOV     44H,A
        MOV     45H,A
        MOV     46H,A
        MOV     5FH,A
        MOV     5EH,A
YB1:    JB      40H,YB2
        LCALL   YBDIS
        SETB    40H
        CLR     41H
        AJMP    YB2
YBA:    JNB     79H,YB1
YB2:    MOV     A,40H
        CLR     C
        SUBB    A,#3CH
        JC      WDRUN
        CLR     A
        MOV     40H,A
        LCALL   FZJSQ1
WDRUN:  LCALL   WDJS
        LCALL   SJDIS
        LCALL   KAY
        LCALL   RDFSZ
        LJMP    YBA
GYRUNA: LJMP    GGG1
GYRUN:  JB      42H,GYRUNA
        MOV     AUXR,#00H
        MOV     DPTR,#0120H
        MOV     A,#0AAH
        MOVX    @DPTR,A
        INC     DPTR
        MOV     A,#0BBH
        MOVX    @DPTR,A
        INC     DPTR
        MOV     A,#0CCH
        MOVX    @DPTR,A
        SETB    42H
        SETB    1DH
        SETB    35H
        CLR     A
        MOV     5FH,A
        MOV     5EH,A
        MOV     40H,A
        MOV     41H,A
        MOV     R0,#82H
        CLR     A
        MOV     @R0,A
        INC     R0
        MOV     @R0,A
        MOV     AUXR,#00H
        MOV     DPTR,#15CH
        MOVX    @DPTR,A
        INC     DPTR
        MOVX    @DPTR,A
        CLR     C
        MOV     A,5AH
        MOV     B,#0AH
        DIV     AB
        MOV     AUXR,#00H
        MOV     DPTR,#158H
        MOVX    @DPTR,A
        MOV     A,B
        MOV     DPTR,#159H
        MOVX    @DPTR,A
GGG1:   CLR     C
        MOV     A,5AH
        DEC     A
        MOV     4EH,A
        MOV     B,#0FFH
        MUL     AB
        ADD     A,4EH
        MOV     DPL,A
        MOV     0EH,A
        MOV     A,B
        ADDC    A,#0E0H
        MOV     DPH,A
        MOV     0FH,A
        CLR     C
        MOV     A,0CH
        MOV     B,#0AH
        DIV     AB
        MOV     AUXR,#00H
        MOV     DPTR,#15AH
        MOVX    @DPTR,A
        MOV     A,B
        MOV     DPTR,#15BH
        MOVX    @DPTR,A
        MOV     A,0CH
        DEC     A
        MOV     B,#04H
        MUL     AB
        ADD     A,0EH
        MOV     DPL,A
        MOV     0EH,A
        MOV     A,B
        ADDC    A,0FH
        MOV     DPH,A
        MOV     0FH,A
GYRUN1: MOV     DPL,0EH
        MOV     DPH,0FH
        MOV     R5,#04H
        MOV     R1,#0D0H
GYRUN3: LCALL   FLASH1
        CJNE    A,#0FFH,GYRUN4
        LJMP    GYEND
GYRUN4: MOV     R3,A
        ANL     A,#0F0H
        SWAP    A
        MOV     @R1,A
        INC     R1
        MOV     A,R3
        ANL     A,#0FH
        MOV     @R1,A
        INC     R1
        INC     DPTR
        DJNZ    R5,GYRUN3
        MOV     0EH,DPL
        MOV     0FH,DPH
        MOV     DPTR,#150H
        MOV     R3,#08H
        MOV     AUXR,#00H
        MOV     R1,#0D0H
GYRUN5: MOV     A,@R1
        MOVX    @DPTR,A
        INC     R1
        INC     DPTR
        DJNZ    R3,GYRUN5
        MOV     R1,#0D0H
        MOV     A,@R1
        CJNE    A,#00H,IBWRUN
        LJMP    JRRUN
IBWRUN: CJNE    A,#01H,ISWRUN
        LJMP    BWRUN
ISWRUN: CJNE    A,#02H,IJWRUN
        LJMP    SWRUN
IJWRUN: CJNE    A,#03H,IJLRUN
        LJMP    JWRUN
IJLRUN: CJNE    A,#04H,IMDRUN
        LJMP    JLRUN
IMDRUN: CJNE    A,#05H,IYWRUN
        LJMP    MDRUN
IYWRUN: CJNE    A,#06H,ILFRUN
        LJMP    YWRUN
ILFRUN: CJNE    A,#07H,IQXRUN
        LJMP    LFRUN
IQXRUN: CJNE    A,#08H,GYEND2
        LJMP    QXRUN
GYEND2: LJMP    GYEND
JRRUN:  LJMP    GYEND
JLRUN:  LJMP    GYEND
BWRUN:  LJMP    BWRUN1
JWRUN:  LJMP    JWRUN1
MDRUN:  LJMP    MDRUN1
YWRUN:  LJMP    YWRUN1
LFRUN:  LJMP    LFRUN1
QXRUN:  LJMP    QXRUNQ
SWWW:   LJMP    SWRUN3
SWRUN:  JB      45H,SWWW
        JB      64H,SWWW
        JB      44H,SWRUN2
        SETB    43H
        LCALL   CSJS
        LCALL   PWM2
        MOV     R1,#0D1H
        MOV     A,@R1
        CJNE    A,#00H,SWRUN2
        INC     R1
        MOV     A,@R1
        CJNE    A,#00H,SWRUN2
        CLR     58H
        LJMP    CSSW1
BJ3:    JB      5AH,BJ4
        CLR     A
        MOV     44H,A
        SETB    5AH
BJ4:    CLR     C
        MOV     A,44H
        SUBB    A,#0AH
        JC      SWRUN3
        SETB    46H
        LCALL   OUT0
STOPP:  SETB    22H      ;报警
        SETB    31H
        LCALL   L595W
        LCALL   WD150C
        LCALL   RDFSZ
        LCALL   AIBIN
        MOV     AUXR,#00H
        MOV     DPTR,#120H
        CLR     A
        MOVX    @DPTR,A
        INC     DPTR
        MOVX    @DPTR,A
        INC     DPTR
        MOVX    @DPTR,A
        CLR     5AH
        AJMP    STOPP
SWENDA: LJMP    SWEND
SWRUN2: SETB    44H
        LCALL   WD150C
        JB      62H,BJ3
        MOV     R0,#0DAH
        MOV     R1,#37H
        LCALL   FSUB
        MOV     A,R4
        JNB     ACC.7,SWENDA
        JB      64H,SWRUNB
        MOV     A,41H
        CLR     C
        SUBB    A,#06H
        JC      SWRUN3
        CLR     A
        MOV     41H,A
        MOV     R1,#34H
        MOV     R0,#3DH
        LCALL   FADD
        MOV     R1,#3DH
        LCALL   FSTR
        AJMP    SWRUN3
SWRUNB: CLR     A
        MOV     42H,A
        MOV     58H,A
        AJMP    SWRUN3
SWRUNG: JB      40H,SSRR1
        LCALL   WD150C
        LCALL   SWDIS
        LCALL   JWMB
        LCALL   SJDISB
        SETB     40H
        CLR      41H
        AJMP    SSRR1
SWRUN3: JNB     79H,SWRUNG
SSRR1:  LCALL   MJSQ
        JC      SWRUN8
        CLR     A
        MOV     40H,A
        LCALL   FZJSQ1
SWRUN8: LCALL   WD150C
        LCALL   SJDISB
        LCALL   KAY
        LCALL   RDFSZ
        LCALL   AIBIN
        JNB     70H,SSS1
        LCALL   OUT0
        JB      70H,SWRUN3
SSS1:   MOV     R6,#02H
        MOV     R7,#06H
        MOV     DPTR,#LCD99
        LCALL   DISHZ
        MOV     R6,#02H
        MOV     R7,#07H
        MOV     DPTR,#LCD99
        LCALL   DISHZ
        SETB    1DH
        SETB    35H
SWRUNH: JB      62H,BJJ1
        LCALL   WD150C
        MOV     R0,#0DAH
        MOV     R1,#3DH
        LCALL   FSUB
        MOV     A,R4
        JB      ACC.7,SWRUN4
        JB      64H,SWEND
        MOV     R0,#82H
        CLR     A
        MOV     @R0,A
        CLR     1FH
        CLR     2FH
        CLR     18H
        CLR     2EH
        LCALL   L595W
        AJMP    SWRUN6
BJJ1:   AJMP    BJ3
SWRUN4: MOV     R0,#82H
        MOV     A,@R0
        CJNE    A,#2FH,SWRUN5
        CLR     18H
        CLR     2EH
        SETB    1FH
        SETB    2FH
        LCALL   L595W
        JB      3EH,BJB
        AJMP    SWRUN6
BJB:    AJMP    BJA
SWRUN5: INC     A
        MOV     @R0,A
SWRUN6: JB      64H,SWRUND
        CLR     C
        MOV     A,5FH
        SUBB    A,5DH
        MOV     A,5EH
        SUBB    A,5CH
        JC      SWRUN9
        SETB    64H
        MOV     3DH,37H
        MOV     3EH,38H
        MOV     3FH,39H
SWRUN9: JB      45H,SWRUNA
        LJMP    SWRUN2
SWRUNA: LJMP    SWRUN3
SWEND:  MOV     3DH,37H
        MOV     3EH,38H
        MOV     3FH,39H
        SETB    45H
        JNB     64H,SWRUNA
        CLR     1FH
        CLR     2FH
        CLR     18H
        CLR     2EH
        CLR     22H
        CLR     31H
        CLR     20H
        CLR     30H
        LCALL   L595W
        CLR     62H
        CLR     63H
        CLR     64H
        CLR     40H
        CLR     3EH
        CLR     43H
        CLR     45H
        CLR     46H
        CLR     20H
        CLR     30H
        CLR     44H
        CLR     A
        MOV     40H,A
        MOV     41H,A
        MOV     42H,A
        MOV     43H,A
        MOV     44H,A
        MOV     5EH,A
        MOV     5FH,A
        MOV     R0,#82H
        CLR     A
        MOV     @R0,A
        INC     R0
        MOV     @R0,A
        INC     0CH
        LJMP    GYRUN1
SWRUND: LCALL   MJSQ1
        JC      SWRUNA
        CLR     A

⌨️ 快捷键说明

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