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

📄 mcu89c51hoter.asm

📁 这是用8951开发的便携式心电监护仪
💻 ASM
📖 第 1 页 / 共 5 页
字号:
SF204:  MOV     B,A
        MOV     A,54H
        DIV     AB
        CLR     C
        SUBB    A,#2
        JC      SF203
        SJMP    SFSF
;=====================
ORG     16D2H
A1SC:   MOV   R0, #3
        MOVX  A, @R0
        ADD   A, #128
        MOV   6FH, A
        DEC   R0
        MOVX  A, @R0
        ADDC  A, #0
        MOV   6EH, A
        MOV   70H, #2
        MOV   71H, #100
        MOV   R0, #0
        MOVX  A, @R0
        ADD   A, ACC
        MOV   R0, A
        MOV   R1, #2
        MOVX  A, @R1
        MOV   R4, A
        INC   R1
        MOVX  A, @R1
        MOV   R5, A
        INC   R0
        MOVX  A, @R0
        CLR   C
        SUBB  A, R5
        MOV   R1, A
        DEC   R0
        MOVX  A, @R0
        SUBB  A, R4
        XCH   A, R4
        MOV   R0, #0
        MOVX  A, @R0
        DEC   A
        MOV   R0, A
        XCH   A, R4
        LCALL DIVP
        MOV   A, R1
        MOV   64H, A
        RET
;=======================
ANAL1:  MOV   A, 67H
        JZ    A1C
        RET
A1C:    MOV   A, 0AH
        SUBB  A, #23
        JNC   A1G
        RET
A1G:    MOV   6DH, #1
        MOV   DPTR, #600H
        LCALL   A1H
        JZ      A1M
        RET
A1M:    MOV     PSW,#0
        MOV   R2, #0
        MOV   R3, #0
        MOV   6DH, #0
        MOV     0AH,#00
A111:   MOV     A,0AH
        SUBB    A,#23H
        JC      A111
        MOV     DPTR,#600
        MOV     6DH,#1
        LCALL   A1H
        JNZ     A112
        LJMP    ERRM
A112:   RET
A1H:    PUSH    2
        PUSH    3
        MOV   P2, #0
        MOV   R0, #0
        MOV   A, #0
        MOVX  @R0, A
        LCALL DIFF
        MOV   R0, #0
        MOVX  A, @R0
        JNZ     A1H1
A1H0:   POP     3
        POP     2
        RET
A1H1:   CLR   C
        SUBB  A, #4
        JNC    A1H2
        MOV     A,#0
        SJMP    A1H0
A1H2:   LCALL SUB4
        LCALL A1SS
        MOV   A, 64H
        JNZ    A1H3
        SJMP    A1H0
A1H3:   MOV   A, #29
        MOV   R1, #76
        MOV   R0, 64H
        LCALL DIVB
        MOV   A, R1
        MOV   DPH, 69H
        MOV   DPL, 6AH
        MOVX  @DPTR, A
        INC   DPTR
        INC   DPTR
        MOV   69H, DPH
        MOV   6AH, DPL
        MOV   8H, #0
        MOV   64H, A
        LCALL DIS1
        MOV   DPH, 6EH
        MOV   DPL, 6FH
        MOV   R0,#2
        MOV   R1, #10
        LCALL TRAN
        PUSH  54H
        MOV   R0, #80
        MOV   A, #0
        MOV   R1, #8
A1N:    MOV   @R0, A
        INC   R0
        DJNZ  R1, A1N
        POP   54H
        POP     3
        POP     2
        MOV     A,#1
        MOV   67H, #1
        MOV   PSW, #0
        MOV   74H, R2
        MOV   75H, R3
        MOV   61H, #0
        MOV   6DH, #0
        RET
;=======================
ETM:    MOV   A,6DH
        JZ    ET01
        RET
ET01:   MOV   A,67H
        JNZ   ETS
        RET
ETS:    MOV   A,#10
        CLR   C
        SUBB  A,7DH
        JNC   ET10
        SETB  P1.5
ET10:   INC   7DH
ET11:   MOV   A, 40H
        JZ    ET2
        MOV   A, 41H
        INC   A
        JZ    ET2
        MOV   41H, A
ET2:    MOV   A, 58H
        JZ    ET3
        MOV   A, 59H
        INC   A
        JZ    ET3
        MOV   59H, A
ET3:    MOV   A,77H
        JZ    ETE
        MOV   A,73H
        INC   A
        JZ    ETE
        MOV   73H,A
ETE:    RET
;=======================
ORG     1800H
TTM:    MOV   A, IE
        MOV   IE, #0
        MOV   6EH, 0FH
        MOV   6FH, 0EH
        MOV   70H, 0DH
        MOV   71H, 0CH
        MOV   72H, 0BH
        MOV   73H, 0AH
        MOV   IE, A
        RET
;=======================
PTAB:   MOV   PSW, #0
        MOV   R0, #110
        MOV   R1, #6
        MOV   DPH, 69H
        MOV   DPL, 6AH
PTL1:   MOV   A, @R0
        MOVX  @DPTR, A
        INC   DPTR
        INC   R0
        DJNZ  R1, PTL1
        MOV   69H, DPH
        MOV   6AH, DPL
        RET
OTAB:   MOV   67H, #0
        MOV   68H, #0
        MOV   69H, #16
        MOV   6AH, #0
        MOV   6BH, #20
        MOV   6CH, #0
        RET
SKEY:   DEC   A
        JZ    SK10
        RET
SK10:   MOV   A, 8H
        JNZ   SK12
sk11:   MOV   8H, #2
        MOV   60H, #4
        LCALL DIS2
        RET
SK12:   DEC   A
        JZ    SK11
        DEC   A
        JNZ   SK13
        MOV   8H, #3
        MOV   60H, #4
        LCALL DIS6
        RET
SK13:   DEC   A
        JZ    SK14
        RET
SK14:   MOV   8H, #4
        MOV   60H, #4
        LCALL DIS5
        RET
;=======================
KSTOP:  MOV   A, 6DH
        XRL   A, #80H
        JZ    REST
        MOV   6DH, #128
        MOV     61H,#1
        MOV     8,#1
        PUSH    IE
        MOV     IE,#0
        LCALL   PFO3
        POP     IE
        RET
REST:   MOV   A, #36
        CLR   C
        SUBB  A, 68H
        JNC    KR
RESC:   MOV     61H,#0
        MOV     8,#0
        MOV     6DH,#0
        RET
KR:     LCALL PSTOP
        SJMP    RESC
;=======================
KRTN:   LCALL KSEK
        INC   A
        JNZ   KRTN
        MOV   A, #255
KD1:    ADD   A, #255
        JNZ   KD1
KRL1:   LCALL KSEK
        INC   A
        JNZ   KRL1
MONT:   MOV   PSW, #0
        LCALL ANAL1
        LCALL ANAL2
        LCALL 1FFFH
        LCALL 1FFFH
        LCALL PWF
        LCALL KSEK
        INC   A
        JZ    MONT
        DEC   A
        LCALL KTAB
        CLR   C
        SUBB  A, #10
        JC    MONT
        JNZ   K11
        LCALL KSTOP
        LJMP  KRTN
K11:    DEC   A
        JNZ   K12
        LCALL FEBD
        LJMP  KRTN
K12:    DEC   A
        JNZ   K13
        LCALL PRINT
        LJMP  KRTN
K13:    DEC   A
        JNZ   K14
        LCALL KRH
        LJMP  KRTN
K14:    DEC   A
        JNZ   K15
        LCALL KRL
        LJMP  KRTN
K15:    LCALL SK10
        LJMP  KRTN
;=======================
COMHR:  MOV   PSW, #0
        MOV   R0, #0
        MOV   R1, #0
        MOV   R6, #0
COL0:   PUSH  ACC
        LCALL DIS1
COL1:   LCALL KSEK
        INC   A
        JNZ   COL1
COL2:   LCALL KSEK
        INC   A
        JZ    COL2
        DEC   A
        LCALL KTAB
        CLR   C
        SUBB  A, #10
        JC    CO1
        POP   ACC
        RET
CO1:    POP   4H
        ADD   A, #10
        XCH   A, R6
        XCH   A, R1
        MOV   R0, A
        MOV   B, #10
        MUL   AB
        ADD   A, R1
        MOV   B, #10
        MUL   AB
        ADD   A, R6
        SJMP  COL0
;=======================
ORG     1956H
TRAN:   MOV     A,R0
        CLR     C
        SUBB    A,3
        JC      TR10
        MOV     R0,#2
TR10:   MOV   A, R1
        JNZ   TR11
        DEC   R1
TR11:   MOV   A, 6CH
        ADD   A, R1
        MOV   66H, A
        MOV   A, 6BH
        ADDC  A, R0
        JC    TR2
        SUBB  A, #128
        JC    TR3
TR2:    MOV   A, #255
        MOV   DPH, 69H
        MOV   DPL, 6AH
        MOVX  @DPTR, A
        INC   DPTR
        MOVX  @DPTR, A
        INC   DPTR
        MOVX  @DPTR, A
        INC   DPTR
        MOVX  @DPTR, A
        INC   DPTR
        MOV   69H, DPH
        MOV   6AH, DPL
        RET
TR3:    PUSH  DPH
        PUSH  DPL
        MOV   DPH, 69H
        MOV   DPL, 6AH
        PUSH  ACC
        MOV   A, 6BH
        MOVX  @DPTR, A
        INC   DPTR
        MOV   A, 6CH
        MOVX  @DPTR, A
        INC   DPTR
        POP   ACC
        ADD   A, #128
        MOVX  @DPTR, A
        INC   DPTR
        MOV   A, 66H
        MOVX  @DPTR, A
        INC   DPTR
        MOV   69H, DPH
        MOV   6AH, DPL
TRL1:   POP   DPL
        POP   DPH
        MOVX  A, @DPTR
        INC   DPTR
        INC     DPTR
        ANL   DPH, #0FH
        PUSH  DPH
        PUSH  DPL
        MOV   DPH, 6BH
        MOV   DPL, 6CH
        MOVX  @DPTR, A
        INC   DPTR
        MOV   6BH, DPH
        MOV   6CH, DPL
        DJNZ  R1, TRL1
        MOV   A, R0
        JZ    TR4
        DEC   R0
        SJMP  TRL1
TR4:    POP   DPL
        POP   DPH
        RET
;=======================
ORG     19F0H
FORP:   MOV   PSW, #0
        MOV   A, 68H
        JNZ   PRTT
        LCALL DIS1
        RET
PRTT:   MOV   76H, #16
        MOV   77H, #12
PRTC:   PUSH  ACC
        MOV   DPH, 76H
        MOV   DPL, 77H
        LCALL PRTY
        MOV   R0, #1
        LCALL SIO3
        MOV   A, #45
        LCALL SIO1
        MOV   A, #32
        LCALL SIO1
        MOV   R0, #6
PPL1:   INC   DPTR
        DJNZ  R0,PPL1
        LCALL PRTY
        MOV   R0, #1
        LCALL SIO3
        MOV   76H, DPH
        MOV   77H, DPL
        MOV   A, DPL
        CLR   C
        SUBB  A, #12
        MOV   DPL, A
        MOV   A, DPH
        SUBB  A, #0
        MOV   DPH, A
        MOVX  A, @DPTR
        CLR   C
        SUBB  A, #128
        JNZ   PR11
        MOV   DPTR, #LB2
        MOV   R0, #16
        LCALL SIO5
NC8:    POP   ACC
        DEC   A
        JNZ   PRTC
        RET
PR11:   MOVX  A, @DPTR
        CLR   C
        SUBB  A, #129
        JNZ   PR12
        MOV   DPTR, #LB3
        MOV   R0, #12
        LCALL SIO5
        SJMP  NC8
PR12:   MOVX  A, @DPTR
        CLR   C
        SUBB  A, #3
        JNZ   PR13
        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, #LIA1
        MOV   R0, #13
        LCALL SIO5
TDC:    POP   DPL
        POP   DPH
        INC   DPTR
        LCALL DRAWB
        SJMP  NC8
PR13:   MOVX  A, @DPTR
        CLR   C
        SUBB  A, #4
        JNZ   PR20
        INC   DPTR
        MOVX  A, @DPTR
        PUSH  DPH
        PUSH  DPL
        MOV   R1, A
        MOV   DPTR, #LID1
        MOV   R0, #6
        LCALL SIO5
        MOV   A, R1
        MOV   R0, #43
        MOV   C, ACC.7
        JNC   PR14
        MOV   R0, #45
        CPL   A
        INC   A
PR14:   MOV   R1, A
        MOV   A, R0
        LCALL SIO1
        MOV   A, R1
        CLR   C
        SUBB  A, #50
        JNC   PR15
        ADD   A, #50
PR15:   MOV   R1, A
        MOV   A, #48
        JC    PR16
        INC   A
PR16:   LCALL SIO1
        MOV   A, #2EH
        LCALL SIO1
        MOV   A, #0
        XCH   A, R1
        MOV   R0, #50
        LCALL DIVB
        MOV   A, R1
        MOV   B, #10
        MUL   AB
        XCH   A, B
        LJMP  PRS1
PR20:   LJMP  PRS2
;=============================
ORG     1B00H
SIO0:   MOV   IE,#0
        MOV   PCON, #128
        MOV   SCON, #64
        MOV   TMOD, #32
        MOV   TCON, #64
        MOV   TH1, #247
        MOV   TL1, #247
        RET
SIO1:   MOV   SBUF, A
SO1:    MOV   C, TI
        JNC   SO1
        CLR   TI
SO2:    MOV   C, P3.0
        JNC   SO2
        RET
SIO3:   MOVX  A, @DPTR
        SWAP  A
        ANL   A, #0FH
        ORL   A, #30H
        LCALL SIO1
        MOVX  A, @DPTR
        ANL   A, #0FH
        ORL   A, #30H
        LCALL SIO1
        INC   DPTR
        DJNZ  R0, SO3
        MOV   A, #32
        LJMP  SIO1
SO3:    MOV   A, R1
        LCALL SIO1
        SJMP  SIO3
;=========================
SIO4:   MOV   B, #10
        DIV   AB
        ORL   B, #30H
        PUSH  B
        MOV   B, #10
        DIV   AB
        ORL   A, #30H
        LCALL SIO1
        MOV   A, B
        ORL   A, #30H
        LCALL SIO1
        POP   ACC
        ORL   A, #30H
        LCALL SIO1
        RET
;=========================
SIO5:   MOV   A, #0
S5L:    PUSH  ACC
        MOVC  A, @A+DPTR
        LCALL SIO1
        POP   ACC
        INC   A
        DJNZ  R0, S5L
        RET
SIO6:   MOV   R1, A
        SWAP  A
        ANL   A, #0FH
        ORL   A, #30H
        LCALL SIO1
        MOV   A, R1
        ANL   A, #0FH
        ORL   A, #30H
        LCALL SIO1
        RET
;=============================
SSI1:   MOV   SBUF,A
SSL1:   MOV   C,TI
        JNC   SSL1
        CLR   TI
        MOV   C,P3.0
        RET
;=============================
ORG     1B95H
        DB    45H,76H,65H,6EH,74H,73H,20H,74H,6FH,74H,61H,6CH,3AH
        DB    45H,43H,47H,20H,4DH,6H,6EH,69H,74H,6FH,72H,20H
        DB    64H,65H,73H,69H,67H,6EH,65H,64H,20H
        DB    62H,79H,20H,5AH,6FH,75H,20H
        DB    4DH,69H,65H,6EH,2DH,77H,65H,69H,2FH,0DH
;============================
ORG     1BC8H
TX1:    MOV   D

⌨️ 快捷键说明

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