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

📄 333l.asm

📁 这是一款美容医疗仪器程序
💻 ASM
📖 第 1 页 / 共 3 页
字号:
         JNB     FREQ.6,PULSE5J
         JNB     FREQ.7,PULSE1J
         JMP     RETT0

;***************************************
;***************************************
PULSE1:

         JNB     PUL.0,PULSE10
         DJNZ    R1,RETT0
         MOV     R1,#01
         CLR     PUL.0
         JMP     RETT0
PULSE10:
         DJNZ    R2,RETT0
         MOV     R2,#10
         SETB    PUL.0
         JMP     RETT0
;***************************************
PULSE2:

         JNB     PUL.0,PULSE20
         DJNZ    R1,RETT0
         MOV     R1,#20
         CLR     PUL.0
         JMP     RETT0
PULSE20:
         DJNZ    R2,RETT0
         MOV     R2,#03
         SETB    PUL.0
         JMP     RETT0
;***************************************
PULSE3:

         JNB     PUL.0,PULSE30
         DJNZ    R1,RETT0
         MOV     R1,#02
         CLR     PUL.0
         JMP     RETT0
PULSE30:
         DJNZ    R2,RETT0
         MOV     R2,#02
         SETB    PUL.0
         JMP     RETT0
;***************************************
PULSE4:

         JNB     PUL.0,PULSE40
         DJNZ    R1,RETT0
         MOV     R1,#05
         CLR     PUL.0
         JMP     RETT0
PULSE40:
         DJNZ    R2,RETT0
         MOV     R2,#05
         SETB    PUL.0
         JMP     RETT0
;**************************************
RETT0:
         MOV     TH0,#03CH
         MOV     TL0,#0B0H
         POP     PSW
         POP     ACC
         RETI
;***************************************
PULSE5:

         JNB     PUL.0,PULSE50
         DJNZ    R1,RETT0
         MOV     R1,#10
         CLR     PUL.0
         JMP     RETT0
PULSE50:
         DJNZ    R2,RETT0
         MOV     R2,#10
         SETB    PUL.0
         JMP     RETT0
;***************************************
PULSE6:

         JNB     PUL.0,PULSE60
         DJNZ    R1,RETT0
         MOV     R1,#10
         CLR     PUL.0
         JMP     RETT0
PULSE60:
         DJNZ    R2,RETT0
         MOV     R2,#01
         SETB    PUL.0
         JMP     RETT0
;***************************************
PULSE7:

         JNB     PUL.0,PULSE70
         DJNZ    R1,RETT0
         MOV     R1,#20
         CLR     PUL.0
         JMP     RETT0
PULSE70:
         DJNZ    R2,RETT0
         MOV     R2,#01
         SETB    PUL.0
         JMP     RETT0

;********************************************************************
;      P1 P2 P3 P4 LED CONT
;********************************************************************
T1INT:
         PUSH    ACC
         PUSH    PSW
         JNB     DBUF1.0,D_P1
         JNB     DBUF1.1,D_P21
         JNB     DBUF1.2,D_P22
         JNB     DBUF1.3,D_P23A
         JNB     DBUF1.4,D_P31A
         JNB     DBUF1.5,D_P32A
         JNB     DBUF1.6,D_P33A
         JNB     DBUF1.7,D_P41A
         JNB     DBUF2.0,D_P42A
         JNB     DBUF2.1,D_P43A
         JNB     DBUF2.2,D_P44A
         JMP     RETT1
D_P23A:
         JMP     D_P23
D_P31A:
         JMP     D_P31
D_P32A:
         JMP     D_P32
D_P33A:
         JMP     D_P33
D_P41A:
         JMP     D_P41
D_P42A:
         JMP     D_P42
D_P43A:
         JMP     D_P43
D_P44A:
         JMP     D_P44
;**************************************  P1 状态显示(只有1种状态)
D_P1:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P1
         JMP     OFF_P1
ON_P1:
         DJNZ    SEC3,RETT1
         MOV     SEC3,#15
         CLR     P2.3
         CLR     DISP.0
OFF_P1:
         DJNZ    SEC4,RETT1
         MOV     SEC4,#05
         SETB    P2.3
         SETB    DISP.0
         JMP     RETT1
;**************************************  P2状态的第1种显示
D_P21:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P21
         JMP     OFF_P21
ON_P21:
         DJNZ    SEC3,RETT1
         MOV     SEC3,#15
         CLR     P2.4                   ;闪1下
         CLR     DISP.0
OFF_P21:
         DJNZ    SEC4,RETT1
         MOV     SEC4,#05
         SETB    P2.4
         SETB    DISP.0
         JMP     RETT1
;************************************** P2状态的第2种显示
D_P22:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P22
         JMP     OFF_P22
ON_P22:
         DJNZ    SEC4,RETT1
         MOV     SEC4,#05
         CPL     P2.4
         DJNZ    SEC5,RETT1
         MOV     SEC5,#03               ;闪2下
         SETB    P2.4
         CLR     DISP.0
         JMP     RETT1
OFF_P22:
         DJNZ    SEC3,RETT1
         MOV     SEC3,#15
         SETB    P2.4
         SETB    DISP.0
         JMP     RETT1
;**************************************
RETT1:
         MOV     TH1,#03CH
         MOV     TL1,#0B0H
         POP     PSW
         POP     ACC
         RETI
;************************************** P2的第3种状态
D_P23:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P23
         JMP     OFF_P23
ON_P23:
         DJNZ    SEC4,RETT1
         MOV     SEC4,#05
         CPL     P2.4
         DJNZ    SEC5,RETT1
         MOV     SEC5,#04               ;闪3下
         SETB    P2.4
         CLR     DISP.0
         JMP     RETT1
OFF_P23:
         DJNZ    SEC3,RETT1
         MOV     SEC3,#15
         SETB    P2.4
         SETB    DISP.0
         JMP     RETT1
;**************************************  P3状态的第1种显示
D_P31:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P31
         JMP     OFF_P31
ON_P31:
         DJNZ    SEC3,RETT1
         MOV     SEC3,#15
         CLR     P2.5                   ;闪1下
         CLR     DISP.0
OFF_P31:
         DJNZ    SEC4,RETT1
         MOV     SEC4,#05
         SETB    P2.5
         SETB    DISP.0
         JMP     RETT1
;************************************** P3状态的第2种显示
D_P32:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P32
         JMP     OFF_P22
ON_P32:
         DJNZ    SEC4,RETT1
         MOV     SEC4,#05
         CPL     P2.5
         DJNZ    SEC5,RETT1
         MOV     SEC5,#03               ;闪2下
         SETB    P2.5
         CLR     DISP.0
         JMP     RETT1
OFF_P32:
         DJNZ    SEC3,RETT1
         MOV     SEC3,#15
         SETB    P2.5
         SETB    DISP.0
         JMP     RETT1
;************************************** P3的第3种状态
D_P33:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P33
         JMP     OFF_P33
ON_P33:
         DJNZ    SEC4,RETT10
         MOV     SEC4,#05
         CPL     P2.5
         DJNZ    SEC5,RETT10
         MOV     SEC5,#04               ;闪3下
         SETB    P2.5
         CLR     DISP.0
         JMP     RETT1
OFF_P33:
         DJNZ    SEC3,RETT10
         MOV     SEC3,#15
         SETB    P2.5
         SETB    DISP.0
         JMP     RETT1
;**************************************
RETT10:
         JMP     RETT1
;**************************************  P4状态的第1种显示
D_P41:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P41
         JMP     OFF_P41
ON_P41:
         DJNZ    SEC3,RETT10
         MOV     SEC3,#15
         CLR     P2.6                   ;闪1下
         CLR     DISP.0
OFF_P41:
         DJNZ    SEC4,RETT10
         MOV     SEC4,#05
         SETB    P2.6
         SETB    DISP.0
         JMP     RETT1
;************************************** P4状态的第2种显示
D_P42:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P42
         JMP     OFF_P42
ON_P42:
         DJNZ    SEC4,RETT10
         MOV     SEC4,#05
         CPL     P2.6
         DJNZ    SEC5,RETT10
         MOV     SEC5,#03               ;闪2下
         SETB    P2.6
         CLR     DISP.0
         JMP     RETT1
OFF_P42:
         DJNZ    SEC3,RETT10
         MOV     SEC3,#15
         SETB    P2.6
         SETB    DISP.0
         JMP     RETT1
;************************************** P4的第3种状态
D_P43:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P43
         JMP     OFF_P43
ON_P43:
         DJNZ    SEC4,RETT10
         MOV     SEC4,#05
         CPL     P2.6
         DJNZ    SEC5,RETT10
         MOV     SEC5,#04               ;闪3下
         SETB    P2.6
         CLR     DISP.0
         JMP     RETT1
OFF_P43:
         DJNZ    SEC3,RETT10
         MOV     SEC3,#15
         SETB    P2.6
         SETB    DISP.0
         JMP     RETT1
;************************************** P4的第4种状态
D_P44:
         MOV     P2,#0FFH
         JB      DISP.0,ON_P44
         JMP     OFF_P44
ON_P44:
         DJNZ    SEC4,RETT100
         MOV     SEC4,#05
         CPL     P2.6
         DJNZ    SEC5,RETT100
         MOV     SEC5,#05               ;闪4下
         SETB    P2.6
         CLR     DISP.0
         JMP     RETT1
OFF_P44:
         DJNZ    SEC3,RETT100
         MOV     SEC3,#15
         SETB    P2.6
         SETB    DISP.0
         JMP     RETT1
;**************************************
RETT100:
         JMP     RETT1

;********************************************************************
;         系统时间,控制T0,T1内容
;********************************************************************
T2INT:
         PUSH    ACC
         PUSH    PSW
         CLR     T2CON.7
         JNB     SWITCH,START_TIME         ;SWITCH-P3.4
         JMP     STOP_TIME                 ;如果时间为00,则不计时
START_TIME:

         CLR     SYS.1
         DJNZ    SEC1,RETT2
         MOV     SEC1,#10                  ;500MS
         DJNZ    SEC2,RETT2
         MOV     SEC2,#06                  ;3SEC

         MOV     A,FREQ
         RL      A
         MOV     FREQ,A

         ;CPL     LED2.4
         DJNZ    SEC30,RETT2               ;30SEC
         MOV     SEC30,#10
         CALL    SPK_DEL1               ;蜂鸣器叫1声

         DJNZ    SEC40,RETT2               ;1MIN
         MOV     SEC40,#02


         DJNZ    MIN,DISP_MIN              ;系统时间减1
         MOV     LED1,#00100001B          ;0
         MOV     LED2,#00010100B          ;0
         JMP     STOP
;**************************************
RETT2:
         POP     PSW
         POP     ACC
         RETI
;======================================
DISP_MIN:
         CALL    ADJMIN
         JMP     RETT2

STOP_TIME:
         SETB    LED2.4
         SETB    SYS.1
         JMP     RETT2
;************************************** 蜂鸣器响5下后退中断出
STOP:
         MOV     R5,#05
BUZZ:
         CLR     SPK
         CALL    SPK_DEL
         SETB    SPK
         CALL    SPK_DEL
         DJNZ    R5,BUZZ
         CLR     SYS.0             ;标志位
         JMP     RETT2
;====================================== 蜂鸣器叫声延时
SPK_DEL:
         MOV     R4,#40
SPK_D:
         CALL    DISPLAY
         DJNZ    R4,SPK_D
         RET
;********************************************************************
;           MAN PROGRAM
;********************************************************************
RESET:
         MOV     SP,#50H
         CLR     IE.7                    ;关掉所有中断
         MOV     P0,#0FFH
         MOV     P1,#0FFH
         MOV     P2,#0FFH
         MOV     P3,#11111110B
LOOP:
         CLR     P2.2
         MOV     LED1,#00100001B          ;0
         MOV     LED2,#00010100B          ;0
         CALL    BAOJING                  ;报警
         JNB     SWITCH,LOOP             ;SWITCH-P3.4
         SETB    P2.2                    ;ERROR LED
         SETB    SPK
LOOP1:
         MOV     SYS,#0FFH
         MOV     DBUF1,#11111110B         ;默认P1
         MOV     DBUF2,#0FFH
         MOV     KEY4,#0FFH
         MOV     KEY5,#0FFH
         MOV     KEY6,#0FFH
         MOV     DISP,#0FFH
         MOV     DEL_LED,#0FFH
         MOV     PUL,#00H
         MOV     CHANG,#0FFH
         MOV     BOXING,#0FEH
         MOV     FREQ,#0FEH
         MOV     ZHUT,#0FEH

         MOV     TMOD,#00010001B
         MOV     TCON,#01010000B
         MOV     T2MOD,#00H
         MOV     T2CON,#00000100B
         MOV     IE,#10101010B

         MOV     TH0,#03CH
         MOV     TL0,#0B0H
         MOV     TH1,#03CH
         MOV     TL1,#0B0H
         MOV     TH2,#03CH
         MOV     TL2,#0B0H
         MOV     RCAP2H,#03CH
         MOV     RCAP2L,#0B0H

         MOV     SEC1,#10                 ;T2 USE      500MS
         MOV     SEC2,#06                 ;3SEC
         MOV     SEC30,#10                ;T2 USE   30SEC
         MOV     SEC40,#02                ;1MIN

         MOV     SEC3,#15                 ;T1 USE
         MOV     SEC4,#05                ;T1 USE
         ;MOV     SEC5,#01                 ;T0 USE
         ;MOV     SEC6,#95                 ;T0 USE  OUT PULSE
         MOV     CON1,#10
         MOV     R1,#05

         MOV     MIN,#15
         MOV     LED1,#01111101B          ;1  十位数
         MOV     LED2,#00110001B          ;5  个位数

MAN:
         CALL    DISPLAY
         CALL    KEYSCAN
         JB      PUL.0,PULSE
         CLR     P3.0
         JB      SYS.0,MAN
         JMP     RESET
;************************************** P3.0 PULSE OUT
PULSE:
         SETB    P3.0
         CALL    DELAY
         CLR     P3.0
         CALL    DELAY
         CALL    DELAY
         CALL    DELAY
         CALL    DELAY
         JMP     MAN
;************************************** 开机时如各电位器开关没关则报警
BAOJING:
         CLR     SPK
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         SETB    SPK
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CLR     SPK
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         CALL    DISPLAY
         SETB    SPK
         MOV     R1,#150
BAOJ:
         CALL    DISPLAY
         DJNZ    R1,BAOJ
         RET

         END

⌨️ 快捷键说明

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