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

📄 acmftsj_n.asm

📁 一个完整且典型的遥控器程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        BR      TEMPD31
TEMPD30:DECS    A
        NOP
        MOV     TEMP,XA
        SKE     A,#0H
        BR      TEMPALL
TEMPD31:SEL     MB1
        SET1    DFLG22.3
        SEL     MB0
        SET1    X15F
        BR      TEMPALL
;
;**********************ON/OFF KEY DO***************
S5:     CLR1    KC
        SET1    KEYF
        CLR1    DELAYF
        SKT     ONOF
        BR      SETON1
        CLR1    ONOF
        clr1    (REM96B+11).3
        SET1    (REM96B+11).2
        CALL    !OFFDISP
        RET
SETON1: SET1    ONOF
        CLR1    (REM96B+11).2
        SET1    (REM96B+11).3
        CALL    !ONDISP
        RET
;*****************SLEEP KEY DO**********************
S2:     CLR1    KC
        SKT     ONOF
        RET
        SKF     FANF
        RET
        SKF     DRYF
        RET
;;;;        SKF     AUTOF
;;;;        RET
        SKF     TSETF
        RET
        SET1    KEYF
        SKT     SLEEPF
        BR      SETSLE
        CLR1    SLEEPF
        CLR1    (REM96B+12).3
        SEL     MB1
        CLR1    DFLG16.3
        SEL     MB0
        RET
SETSLE: SET1    SLEEPF
        SET1    (REM96B+12).3
        SEL     MB1
        SET1    DFLG16.3
        SEL     MB0
        RET
;
;***************************MODE KEY*****************
S6:     CLR1    KC
;        SKF     ONOF
        SET1    KEYF
        CLR1    SLEEPF
        CLR1    (REM96B+12).3
        SEL     MB1
        CLR1    DFLG16.3
        SEL     MB0
MODE1:  SKF     AUTOF
        BR      SCOOLM
        SKF     COOLF
        BR      SDRYM
        SKF     DRYF
        BR      SFANMOD
        SKF     JP1F
        BR      JP11
        SKF     FANF
        BR      SWARMM
SAUTOM: CLR1    WARMF
JP12:   SET1    AUTOF

        CLR1    (REM96B+13).3
        SEL     MB1
        CLR1    DFLG17.1
        SEL     MB0

        MOV     A,#0101B
        MOV     REM96B+9,A
        MOV     XA,ATEMP
        MOV     TEMP,XA
        MOV     BC,#10H
        SUBS    XA,BC
        NOP
        MOV     REM96B+2,A
        MOV     A,AVANE
        MOV     VANEREG,A
        MOV     REM96B+10,A
        BR      AUTOM
JP11:   CLR1    FANF
        BR      JP12
SCOOLM: CLR1    AUTOF
        SET1    COOLF
        MOV     A,#0010B
        MOV     REM96B+9,A
        MOV     XA,CTEMP
        MOV     TEMP,XA
        MOV     BC,#10H
        SUBS    XA,BC
        NOP
        MOV     REM96B+2,A
        MOV     A,CVANE
        MOV     VANEREG,A
        MOV     REM96B+10,A
        BR      COOLM
SDRYM:  CLR1    COOLF
        SET1    DRYF
        MOV     A,#0011B
        MOV     REM96B+9,A
        MOV     XA,DTEMP
        MOV     TEMP,XA
        MOV     BC,#10H
        SUBS    XA,BC
        NOP
        MOV     REM96B+2,A
        MOV     A,DVANE
        MOV     VANEREG,A
        MOV     REM96B+10,A
        BR      DRYM
SFANMOD:CLR1    DRYF
        SET1    FANF
        MOV     A,#0100B
        MOV     REM96B+9,A
        MOV     XA,FTEMP
        MOV     TEMP,XA
        MOV     BC,#10H
        SUBS    XA,BC
        NOP
        MOV     REM96B+2,A
        MOV     A,FVANE
        MOV     VANEREG,A
        MOV     REM96B+10,A
        BR      FANM
SWARMM:
        CLR1    FANF
        SET1    WARMF
        MOV     A,#0001B
        MOV     REM96B+9,A
        MOV     XA,WTEMP
        MOV     TEMP,XA
        MOV     BC,#10H
        SUBS    XA,BC
        NOP
        MOV     REM96B+2,A
        MOV     A,WVANE
        MOV     VANEREG,A
        MOV     REM96B+10,A
        BR      WARMM
;
;
;********************EXCHANGE AIR KEY**************
S8:     CLR1    KC
        SKF     PORT0.1
        RET
        SKT     ONOF
        RET
        SET1    KEYF
        SKF     JHQF
        BR      S80
        SET1    JHQF
        SET1    (REM96B+13).1                   ;EXAIR??
        SEL     MB1
        SET1    DFLG18.2
        SEL     MB0
        SKF     AUTOF
        SET1    AUTOJHQ
        SKF     WARMF
        SET1    WARMJHQ
        SKF     COOLF
        SET1    COOLJHQ
        SKF     DRYF
        SET1    DRYJHQ
        SKF     FANF
        SET1    FANJHQ
        RET
S80:
        CLR1    JHQF
        CLR1    (REM96B+13).1
        SEL     MB1
        CLR1    DFLG18.2
        SEL     MB0
        SKF     AUTOF
        CLR1    AUTOJHQ
        SKF     WARMF
        CLR1    WARMJHQ
        SKF     COOLF
        CLR1    COOLJHQ
        SKF     DRYF
        CLR1    DRYJHQ
        SKF     FANF
        CLR1    FANJHQ
        RET
;
;*******************CHANGE TIME SUBROUTINE*****************
S3:
        SKF     DISCLOF
        BR      S30
        SKF     FLA5SF
        BR      S31
        SKT     KC
        RET
        CLR1    KC
        SET1    KEYF
        SKT     (REM96B+18).2
        BR      LEDOFF
LEDOFF1:CLR1    LEDOFFF
        CLR1    (REM96B+18).2
        RET
LEDOFF:
        SKF     LEDOFFF
        BR      LEDOFF1
        SET1    (REM96B+18).2
        SET1    LEDOFFF
        RET
S31:    MOV     A,#0H
        MOV     FLA5SC,A
        SET1    DELAYF
        SKF     KC
        BR      S31_0
        SKF     CLKCCF
        BR      S31_1
        SET1    CLKCCF
        RET
S31_0:
        CLR1    KC
        CLR1    INCHF
        CLR1    ADD10F
        MOV     A,#0H
        MOV     COUNT6,A
        SKF     FLASHONF
        BR      S31_00
        MOV     XA,OFMTIME
        ADDS    XA,#0AH
        NOP
        MOV     BC,#3CH
        SKE     XA,BC
        BR      S31_01
        MOV     XA,OFTIME
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     BC,#18H
        SKE     XA,BC
        BR      GOOD1
        MOV     XA,#00H
GOOD1:  MOV     OFTIME,XA
        MOV     XA,#00H
S31_01:
        MOV     OFMTIME,XA
        CALL    !DISOFT
        RET
S31_00: MOV     XA,ONMTIME
        ADDS    XA,#0AH
        NOP
        MOV     BC,#3CH
        SKE     XA,BC
        BR      S31_02
        MOV     XA,ONTIME
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     BC,#18H
        SKE     XA,BC
        BR      GOOD2
        MOV     XA,#00H
GOOD2:  MOV     ONTIME,XA
        MOV     XA,#00H
S31_02:
        MOV     ONMTIME,XA
        CALL    !DISONT
        RET
;        SKF     FLASHONF
;        BR      S31_00
;        MOV     XA,OFMTIME
;        MOV     HL,XA
;        INCS    HL
;        NOP
;        MOV     XA,HL
;        MOV     OFMTIME,XA
;        MOV     BCD,XA
;        CALL    !CHTOBCD
;        MOV     XA,BCD
;        SKE     A,#0H
;        BR      S31_02
;        MOV     XA,OFMTIME
;        MOV     BC,#0AH
;        SUBS    XA,BC
;        NOP
;        MOV     OFMTIME,XA
;S31_02:
;        CALL    !DISOFT
;        RET
;S31_00: MOV     XA,ONMTIME
;        MOV     HL,XA
;        INCS    HL
;        NOP
;        MOV     XA,HL
;        MOV     ONMTIME,XA
;        MOV     BCD,XA
;        CALL    !CHTOBCD
;        MOV     XA,BCD
;        SKE     A,#0H
;        BR      S31_01
;        MOV     XA,ONMTIME
;        MOV     BC,#0AH
;        SUBS    XA,BC
;        NOP
;        MOV     ONMTIME,XA
;S31_01:
;        CALL    !DISONT
;        RET
S31_1:  SKT     CLKC1SF
        RET
        CLR1    CLKC1SF
        SKF     INCHF
        BR      S31_3
;        SKF     ADD10F
;        BR      S31_2
;        SKF     FLASHONF
;        BR      S31_11
;        MOV     XA,OFMTIME
;        MOV     HL,XA
;        INCS    HL
;        NOP
;        MOV     XA,HL
;        MOV     OFMTIME,XA
;        MOV     BCD,XA
;        CALL    !CHTOBCD
;        MOV     XA,BCD
;        SKE     A,#0H
;        BR      S31_10
;        MOV     BC,#60H
;        SKE     XA,BC
;        BR      NEW1
;        MOV     XA,#00H
;        MOV     OFMTIME,XA
;NEW1:
;        SET1    ADD10F
;        CLR1    INCHF
;S31_10:
;        CALL    !DISOFT
;        RET
;S31_11: MOV     XA,ONMTIME
;        MOV     HL,XA
;        INCS    HL
;        NOP
;        MOV     XA,HL
;        MOV     ONMTIME,XA
;        MOV     BCD,XA
;        CALL    !CHTOBCD
;        MOV     XA,BCD
;        SKE     A,#0H
;        BR      S31_111
;        MOV     BC,#60H
;        SKE     XA,BC
;        BR      NEW2
;        MOV     XA,#00H
;        MOV     ONMTIME,XA
;NEW2:
;        SET1    ADD10F
;        CLR1    INCHF
;S31_111:
;        CALL    !DISONT
;        RET
S31_2:
        INCS    COUNT6
        NOP
        SKF     FLASHONF
        BR      S31_20
        MOV     XA,OFMTIME
        ADDS    XA,#0AH
        NOP
        MOV     DE,XA
        MOV     BC,#3CH
        SKE     XA,BC
        BR      ACM01
;        BR      S31_21
        MOV     XA,OFTIME
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     BC,#18H
        SKE     XA,BC
        BR      GOOD3
        MOV     XA,#0H
GOOD3:  MOV     OFTIME,XA
        MOV     A,COUNT6
        SKE     A,#05H
        BR      ACM00
        MOV     A,#0H
        MOV     COUNT6,A
        CLR1    ADD10F
        SET1    INCHF
ACM00:  MOV     XA,#00H
S31_21: MOV     OFMTIME,XA
        CALL    !DISOFT
        RET
ACM01:  MOV     A,COUNT6
        SKE     A,#05H
        BR      ACM000
        MOV     A,#00H
        MOV     COUNT6,A
        CLR1    ADD10F
        SET1    INCHF
        MOV     XA,DE
        BR      S31_21
ACM000: MOV     XA,DE
        BR      S31_21
S31_20: MOV     XA,ONMTIME
        ADDS    XA,#0AH
        NOP
        MOV     DE,XA
        MOV     BC,#3CH
        SKE     XA,BC
        BR      ACM03
;        BR      S31_200
        MOV     XA,ONTIME
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     BC,#18H
        SKE     XA,BC
        BR      GOOD4
        MOV     XA,#0H
GOOD4:  MOV     ONTIME,XA
        MOV     A,COUNT6
        SKE     A,#05H
        BR      ACM02
        CLR1    ADD10F
        SET1    INCHF
ACM02:  MOV     XA,#00H
S31_200:
        MOV     ONMTIME,XA
        CALL    !DISONT
        RET
ACM03:  MOV     A,COUNT6
        SKE     A,#05H
        BR      ACM001
        MOV     A,#0H
        MOV     COUNT6,A
        CLR1    ADD10F
        SET1    INCHF
        MOV     XA,DE
        BR      S31_200
ACM001: MOV     XA,DE
        BR      S31_200
S31_3:  SKF     FLASHONF
        BR      S31_31
        MOV     XA,OFTIME
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     OFTIME,XA
        MOV     BC,#18H
        SKE     XA,BC
        BR      S31_30
        MOV     XA,#00H
        MOV     OFTIME,XA
S31_30:
        CALL    !DISOFT
        RET
S31_31: MOV     XA,ONTIME
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     ONTIME,XA
        MOV     BC,#18H
        SKE     XA,BC
        BR      S31_310
        MOV     XA,#00H
        MOV     ONTIME,XA
S31_310:
        CALL    !DISONT
        RET
;
;***************CLOCK CHANGE*************
S30:    SKF     TSETF
        BR      S30_4
        SET1    DELAYF
        MOV     A,#0H
        MOV     SEC5S,A
        SKF     KC
        BR      S30_0
        SKF     CLKCCF
        BR      S30_1
        SET1    CLKCCF
        RET
S30_4:  CLR1    KC
        RET
S30_0:  CLR1    KC
        CLR1    INCHF
        CLR1    ADD10F
        MOV     XA,MIN
        MOV     TREG,XA
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL
        MOV     BC,#3CH
        SKE     XA,BC
        BR      OKOK1
        CALL    !HCLOCK
        MOV     XA,#0H
OKOK1:  MOV     MIN,XA
;        MOV     MIN,XA
;        MOV     BCD,XA
;        CALL    !CHTOBCD
;        MOV     XA,BCD
;        SKE     A,#00H
;        BR      S30_00
;        MOV     XA,MIN
;        MOV     BC,#0AH
;        SUBS    XA,BC
;        NOP
;        MOV     MIN,XA
;        MOV     BC,#3CH
;        SKE     XA,BC
;        BR      S30_00
;        MOV     XA,#00H
;        MOV     MIN,XA
S30_00: CALL    !DISCL
        RET
S30_1:  SKT     CLKC1SF
        RET
        CLR1    CLKC1SF
        MOV     XA,#00H
        MOV     SEC,XA
        SKF     INCHF
        BR      S30_2
        SKF     ADD10F
        BR      S30_11
        MOV     XA,MIN
        MOV     HL,XA
        INCS    HL
        NOP
        MOV     XA,HL

⌨️ 快捷键说明

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