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

📄 mcu89c51hoter.asm

📁 这是用8951开发的便携式心电监护仪
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        MOV     IE,#0
        MOV     PSW,#0
        MOV     R0,#15
        MOV     R1,#6
PSL2:   MOV     A,@R0
        MOVX    @DPTR,A
        DEC     R0
        INC     DPTR
        DJNZ    R1,PSL2
        POP     IE
        RET
;=========================
TAAT:   MOV   A, 56H
        JNZ   TAT1
        MOV   A, 57H
        JNZ   TAT1
        RET
TAT1:   MOV     A,55H
        JNZ     TAT2
        RET
TAT2:   MOV   A, 7FH
        CLR   C
        SUBB  A, 57H
        MOV   R0, A
        MOV   A, 7EH
        SUBB  A, 56H
        ANL   A, #0FH
        CLR   C
        RRC   A
        JZ    TAT4
TAT3:   MOV   A, #0
        RET
TAT4:   MOV     A,R0
        RRC     A
        CLR     C
        SUBB    A,55H
        JZ      TAAR
        JNC     TAT5
        CPL     A
        INC     A
TAT5:   MOV     B,A
        MOV     A,55H
        DIV     AB
        CLR     C
        SUBB    A,#3
        JC      TAT3
TAAR:   MOV     A,#1
        RET
;=======================
ORG     0800H
TTMT:   MOV   A, IE
        MOV   IE, #0
        MOV   4AH, 0FH
        MOV   4BH, 0EH
        MOV   4CH, 0DH
        MOV   4DH, 0CH
        MOV   4EH, 0BH
        MOV   4FH, 0AH
        MOV   IE, A
        RET
PTABT:  MOV   PSW, #0
        MOV   R0, #74
        MOV   R1, #6
        MOV   A, 6AH
        MOV   DPL, A
        ADD   A, #18
        MOV   6AH, A
        MOV   A, 69H
        MOV   DPH, A
        ADDC  A, #0
        MOV   69H, A
        INC   68H
PTL:    MOV   A, @R0
        MOVX  @DPTR, A
        INC   DPTR
        INC   R0
        DJNZ  R1, ptl
        MOV   A, #3
        MOVX  @DPTR, A
        INC   DPTR
        MOV   A, 64H
        MOVX  @DPTR, A
        INC   DPTR
        MOV   A, DPL
        ADD   A, #4
        MOV   49H, A
        MOV   A, DPH
        ADDC  A, #0
        MOV   48H, A
        RET
;=====================
ORG     0855H
TACI:   MOV   A, 40H
        JNZ   TA1
        MOV   A,#35
        CLR   C
        SUBB  A,68H
        JC    FULT
        MOV   40H, #1
        LCALL TTMT
FULT:   RET
TA1:    MOV   A, 41H
        JNZ   TA2
        RET
TA2:    MOV   41H, #0
        XCH   A, 42H
        XCH   A, 43H
        XCH   A, 44H
        XCH   A, 45H
        XCH   A, 46H
        JNZ   TA3
        RET
TA3:    ADD   A, 46H
        JC    TA4
        ADD   A, 45H
        JC    TA4
        ADD   A, 44H
        JC      TA4
        ADD   A, 43H
        JC      TA4
        ADD   A, 42H
        JC      TA4
        SUBB  A, #60
        JC      TA41
        SUBB  A, #60
        JNC     TA4
        RET
TA4:    MOV   A, 40H
        DEC   A
        JZ      TACL
        SJMP    TAEE
TA41:   MOV   A, 40H
        DEC   A
        JZ      TA5
        RET
TA5:    LCALL   PTABT
        PUSH  69H
        PUSH  6AH
        MOV   69H, DPH
        MOV   6AH, DPL
        MOV     A,7FH
        SUBB    A,#160
        MOV     DPL,A
        MOV     A,7EH
        SUBB    A,#5
        ANL     A,#0FH
        MOV     DPH,A
        MOV   R0, #2
        MOV   R1, #238
        LCALL   TRAN
        POP   6AH
        POP   69H
        INC   40H
        RET
;======================
TACN:   MOV   A, 40H
        JNZ     TA6
        RET
TA6:    DEC   A
        JZ    TA7
        MOV   A, 41H
        CLR   C
        SUBB  A, #60
        JNC     TAEE
        RET
TA7:    MOV   A, 41H
        SUBB  A, #60
        JNC   TACL
        RET
TAEE:   LCALL TTMT
        MOV   DPH, 48H
        MOV   DPL, 49H
        MOV     PSW,#0
        MOV   R0, #4AH
        MOV   R1, #6
TEL:    MOV   A, @R0
        MOVX  @DPTR, A
        INC   DPTR
        INC   R0
        DJNZ    R1,TEL
TACL:   MOV   40H, #0
        MOV   41H, #0
        MOV   42H, #0
        MOV   43H, #0
        MOV   44H, #0
        MOV   45H, #0
        MOV   46H, #0
        RET
;=======================
PTABS:  MOV   PSW, #0
        MOV   A, 6AH
        MOV   71H, A
        ADD   A, #18
        MOV   6AH, A
        MOV   A, 69H
        MOV   70H, A
        ADDC  A, #0
        MOV   69H, A
PTC:    MOV   DPH, 70H
        MOV   DPL, 71H
        MOV   R0, #5AH
        MOV   R1, #6
PSL:    MOV   A, @R0
        MOVX  @DPTR, A
        INC   DPTR
        INC   R0
        DJNZ  R1, PSL
        MOV   70H, DPH
        MOV   71H, DPL
        RET
TTMS:   MOV   A, IE
        MOV   IE, #0
        MOV   5AH, 0FH
        MOV   5BH, 0EH
        MOV   5CH, 0DH
        MOV   5DH, 0CH
        MOV   5EH, 0BH
        MOV   5FH, 0AH
        MOV   IE, A
        RET
;=======================
STI:    MOV   A, 58H
        JNZ   S21
        MOV   A,#35
        CLR   C
        SUBB  A,68H
        JC    FULS
        LCALL TTMS
        MOV   58H, #1
FULS:   RET
S21:    MOV     58H,#1
        MOV   A, 59H
        INC   A
        JNZ   S22
        RET
S22:    CLR   C
        SUBB  A, #11
        JNC   S23
        RET
S23:    LCALL PTABS
        INC   68H
        MOV   59H, #255
        MOV   A, #4
        MOVX  @DPTR, A
        INC   DPTR
        MOV   A, 72H
        MOVX  @DPTR, A
        INC   DPTR
        PUSH  69H
        PUSH  6AH
        MOV   69H, DPH
        MOV   6AH, DPL
        INC   DPTR
        INC   DPTR
        INC   DPTR
        INC   DPTR
        MOV   70H, DPH
        MOV   71H, DPL
        MOV   A, 7FH
        CLR   C
        SUBB  A, #120
        MOV     DPL,A
        MOV     A,7EH
        SUBB    A,#5
        ANL   A, #0FH
        MOV   DPH, A
        MOV   R0, #2
        MOV   R1, #238
        LCALL   TRAN
        POP   6AH
        POP   69H
        RET
STN:    MOV   A, 58H
        JNZ   STO1
        RET
STO1:   MOV   A, 59H
        INC   A
        JNZ   STO3
        INC   58H
STN1:   CLR   C
        SUBB  A, #250
        JNC   STO2
        RET
STO2:   LCALL TTMS
        MOV     PSW,#0
        LCALL PTC
STO3:   MOV   58H, #0
        MOV   59H, #0
        RET
;=======================
DSTU:   MOV   A, #0
        MOV   R0, #0
        MOV   P2, #0
D100:   MOVX  @R0, A
        DJNZ  R0, D100
D101:   MOVX  A, @DPTR
        INC   DPTR
        MOV   R0, A
        MOVX  A, @R0
        INC   A
        MOVX  @R0, A
        DJNZ  R1, D101
        MOV   R0, #0
        MOV   R1, #0
        MOV   R4, #0
D102:   MOVX  A, @R0
        CLR   C
        SUBB  A, R4
        JC    D103
        ADD   A, R4
        MOV   R4, A
        MOV   1H, R0
D103:   DJNZ  R0, D102
        RET
DDSTU:  MOV   P2, #0
        MOV   R0, #0
        MOV   A, #0
D104:   MOVX  @R0, A
        DJNZ  R0, D104
        MOVX  A, @DPTR
        INC   DPTR
        MOV   R4, A
D1L1:   MOVX  A, @DPTR
        XCH   A, R4
        CLR   C
        SUBB  A, R4
        JNC   D105
        CPL   A
        INC   A
D105:   MOV   R0, A
        MOVX  A, @R0
        INC   A
        MOVX  @R0, A
        INC   DPTR
        DJNZ  R1, D1L1
        MOV   R0, #255
D106:   MOVX  A, @R0
        CLR   C
        SUBB  A, #4
        JNC   D107
        DJNZ  R0,D106
        MOVX  A, @R0
D107:   RET
;=======================
CHL:    MOV   55H, #0
        MOV   56H, #0
        MOV   57H, #0
        SJMP  C10
C00:    PUSH  ACC
C10:    INC   DPTR
        INC   DPTR
        MOVX  A, @DPTR
        JZ    C11
        INC   A
        JZ    C11
        POP   ACC
C12:    MOV   A, #18
        ADD   A, DPL
        MOV   DPL, A
        JNC   C13
        INC   DPH
        ANL   DPH, #0FH
C13:    MOV   A, #0
        RET
C11:    POP   ACC
        JZ    C12
        DEC   A
        SJMP  C00
;======================
ORG     0A80H
RR1:    MOV   A, 56H
        JNZ   RRC1
        MOV   A, 57H
        JNZ   RRC1
        MOV   A, #1
        RET
RRC1:   MOV   A, 55H
        JNZ   RRC2
        MOV   A, #1
        RET
RRC2:   MOV   A, DPL
        CLR   C
        SUBB  A, 57H
        MOV   R0, A
        MOV   A, DPH
        SUBB  A, 56H
        ANL   A, #0FH
        CLR   C
        RRC   A
        JZ    RRC3
        LJMP  RR2
RRC3:   MOV   A, R0
        RRC   A
        MOV   R0, A
        CLR   C
        SUBB  A, 55H
        JC    RRC6
        SUBB  A, 55H
        JC    RRC4
        LJMP  RR2
RRC4:   CPL   A
        INC   A
        MOV   B, A
        MOV   A, 55H
        DIV   AB
        CLR   C
        SUBB  A, #3
        JNC   RRC5
        LJMP  0BF0H
RRC5:   MOV   A, #1
        RET
RRC6:   CPL   A
        INC   A
        MOV   B, A
        MOV   A, 55H
        DIV   AB
        CLR   C
        SUBB  A, #3
        MOV   A, #1
        RET
;=======================
RR2:    MOV   7EH, DPH
        MOV   7FH, DPL
        MOV   A, DPL
        CLR   C
        SUBB  A, 57H
        MOV   R1, A
        MOV   A, DPH
        SUBB  A, 56H
        ANL   A, #0FH
        MOV   R0, A
        MOV   A, R1
        JNZ   R21
        INC   R1
R21:    MOV   A, 57H
        ADD   A, 55H
        MOV   DPL, A
        MOV   DPH, 56H
        JNC   R22
        INC   DPH
        ANL   DPH, #0FH
R2L1:   MOVX  A, @DPTR
        MOV   R4, A
        INC   DPTR
        ANL   DPH, #0FH
        MOVX  A, @DPTR
        CLR   C
        SUBB  A, R4
        JNC   R230
        CPL   A
        INC   A
        SUBB  A, #3
        JNC   R28
R22:    DJNZ  R1,R2L1
R20:    MOV   A, R0
        JZ    R23
        DEC   R0
        SJMP  R2L1
R23:    MOV   DPH, 7EH
        MOV   DPL, 7FH
        MOV   A, #1
        RET
R230:   SUBB  A, #4
        JC    R22
        MOV   R4, #1
R24:    MOVX  A, @DPTR
        MOV   R5, A
        INC   DPTR
        ANL   DPH, #0FH
        MOVX  A, @DPTR
        CLR   C
        SUBB  A, R5
        JC    R22
        SUBB  A, #4
        JC    R22
        INC   R4
        MOV   A, R4
        SUBB  A, #3
        JNC   R25
        SJMP  R24
R25:    MOVX  A, @DPTR
        INC   R4
        MOV   R5, A
        INC   DPTR
        ANL   DPH, #0FH
        MOVX  A, @DPTR
        SUBB  A, R5
        JNC   R25
        MOV   A, R4
        SUBB  A, #12
        JC    R26
R250:   MOV   A, R1
        SUBB  A, #24
        JZ    R20
        JC    R20
        SJMP  R22
R26:    MOV   R4, DPH
        MOV   R5, DPL
        INC   DPTR
        INC   DPTR
        ANL   DPH, #0FH
R27:    MOVX  A, @DPTR
        MOV   R6, A
        INC   DPTR
        ANL   DPH, #0FH
        MOVX  A, @DPTR
        XCH   A, R6
        CLR   C
        SUBB  A, R6
        JC    R28
        SUBB  A, #2
        JNC   R27
R28:    MOV   A, DPL
        CLR   C
        SUBB  A, R5
        CLR   C
        SUBB  A, #4
        JC    R250
        MOV   DPH, R4
        MOV   DPL, R5
        MOV   A, #1
        RET
;=======================
PRS3:   PUSH    DPH
        PUSH    DPL
        MOV     DPTR,#LIC1
        MOV     R0,#6
        LCALL   SIO5
        POP     DPL
        POP     DPH
        INC     DPTR
        MOVX    A,@DPTR
        PUSH    DPH
        PUSH    DPL
        LCALL   SIO4
        MOV     DPTR,#LIB2
        MOV     R0,#4
        LCALL   SIO5
        MOV     DPTR,#LII1
        MOV     R0,#11
        LCALL   SIO5
        LJMP    TDC
;===========================
FEBD:   MOV     A,#35
        CLR     C
        SUBB    A,68H
        JNC     FE10
        RET
FE10:   MOV     PSW,#0
        INC     68H
        MOV     A,#111
        LCALL   DIS1
        SETB    P1.3
        MOV     DPH,69H
        MOV     DPL,6AH
        PUSH    IE
        MOV     IE,#0
        MOV     R0,#0FH
        MOV     R1,#6
FEL1:   MOV     A,@R0
        MOVX    @DPTR,A
        INC     DPTR
        DEC     R0
        DJNZ    R1,FEL1
        MOV     A,#7
        MOVX    @DPTR,A
        INC     DPTR
        MOV     A,64H
        MOVX    @DPTR,A
        INC     DPTR
        MOV     69H,DPH
        MOV     6AH,DPL
        MOV     A,R3
        SUBB    A,#239
        MOV     DPL,A
        MOV     A,R2
        SUBB    A,#5
        ANL     A,#0FH
        MOV     DPH,A
        POP     IE
        MOV     R0,#2
        MOV     R1,#238
        LCALL   TRAN
        MOV     DPH,69H
        MOV     DPL,6AH
        MOV     R0,#0FH
        MOV     R1,#6
        PUSH    IE
        MOV     IE,#0
FEL2:   MOV     A,@R0
        MOVX    @DPTR,A
        INC     DPTR
        DEC     R0
        DJNZ    R1,FEL2
        POP     IE
        MOV     69H,DPH
        MOV     6AH,DPL
FEL3:   LCALL   KSEK
        INC     A
        JNZ     FEL3
        MOV     A,64H
        LCALL   DIS1
        RET
;===========================
CRAM:   MOV   A, #0
        MOV   DPTR, #0H
CL1:    MOVX  @DPTR, A
        INC   DPTR
        DEC   A
        JNZ   CL1

⌨️ 快捷键说明

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