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

📄 ylktst.asm

📁 油烟机的程序说明代码 大厂定制 该型号已经生产几W台 程序稳定
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;/        JP      HEATMD
        JR      ALLMOD
;
COLMDZ:
        LD      A,(FANMOD)
        AND     A,0XF8
        OR      A,0X1
        LD      (FANMOD),A

;/        JP      COOLMD
        JR      ALLMOD
;
SFMDZZ:
        LD      A,(FANMOD)
        AND     A,0XF8
        OR      A,0X4
        LD      (FANMOD),A

;
;******************** ALL MOD ENTER *******************

ALLMOD:

        NOP
        LD      (WDTCR2),0X4E             ; Clears the watchdog counter
        CALL    FORAD

        CALL    FADWRN

        TEST    (FLAG1).RCVNEW
        JR      T,ALNRCV
        CALL    FDS
        TEST    (SLPDSF).4                   ; judge if off or on
        JR      F,ALANON
        CALL    PSTFGJ
        JP      MAIN
;
ALANON:
        JP      FORMOD
;
ALNRCV:
;
        TEST    (P0).1                   ; CHECK FOR THE AUTO KEY
        JR      T,ALNKEY
        CALL    DLY100U
        TEST    (P0).1
        JR      T,ALNKEY
        TEST    (FLAG1).KEYBUF
        JR      T,FRCFCL
        CLR     (FLAG1).KEYBUF
        SET     (FLAG3).BUZZEN
        LD      (BUZ),0XC

ALTOMN:
        CALL    PSTFGJ
        JP      MAIN
;
ALNKEY:
        SET     (FLAG1).KEYBUF

FRCFCL:
        NOP
        TEST    (P0).2                   ; CHECK FOR THE TEST KEY
        JR      T,ALNKEY2
        CALL    DLY100U
        TEST    (P0).2
        JR      T,ALNKEY2

        TEST    (FLAG4).KEY2BF
        JR      T,FRCFCL2

        CLR     (FLAG4).KEY2BF

        SET     (FLAG3).BUZZEN

        LD      (BUZ),0XC

        JR      ALTOMN
;
ALNKEY2:
        SET     (FLAG4).KEY2BF

FRCFCL2:

        TEST    (FLAG4).TSTRUN
        JR      T,ALNTTST

        JP      FTSTCMP
;
ALNTTST:

        NOP
        TEST    (SLPDSF).6              ; TEST IF DSK
        JR      T,ALIFDSG

        LD      A,(SLPDSF)              ; IF DSK TIME IS 0
        AND     A,0XF
        CMP     A,0
        JR      NE,ALTOMN

ALIFDSG:

        TEST    (SLPDSF).5                ; TEST IF DSG
        JR      T,ALNDSG

        LD      A,(SLPDSF)                ; IF DSG TIME IS 0
        AND     A,0XF
        CMP     A,0
        JR      EQ,ALNDSG


;/        CLR     (P0).5                    ; LIGHT THE TIME LED
        CALL    TMLEDON

        LD      W,(SLPDSF)
        AND     W,0XF
        LD      A,(HOUR)
        CMP     A,W
        JR      CS,ALHVDSG
        CLR     (SLPDSF).5
        JR      ALTOMN
;
ALNDSG:
;/        SET     (P0).5                   ; CLEAR THE TIME LED
        CALL    TMLEDOFF

ALHVDSG:

        TEST    (SLPDSF).7                ; TEST IF SLEEP
        JR      T,ALNSLP

        CLR     (P0).4                   ; SET THE SLEEP LED
        CMP     (SLPMIN),0XF0            ; 2MINS * 240 = 8HOURS
        JR      CS,ALHVSLP

        JP      ALTOMN
;
ALNSLP:
        SET     (P0).4                   ; CLEAR THE SLEEP LED

ALHVSLP:

;/        TEST    (FLAG2).ISATFLG
;/        JR      T,ALNAUTO

        LD      A,(FANMOD)
        AND     A,0X7
        CMP     A,0
        JR      NE,ALNAUTO
 
        CMP     (AUTMMS),0X3E
        JR      GT,RNLDCLR
        CLR     (P0).3
        JR      ALNAUTO
;
RNLDCLR:
        SET     (P0).3                      ; CLEAR THE RUN LED

ALNAUTO:

        TEST    (FANMOD).3               ; LD THE F.P TO LED
        JR      F,ALGHTFP
        SET     (P0).6
        JR      ALFFPOK
;
ALGHTFP:
        CLR     (P0).6                   ; LIGHT THE POWER LED

ALFFPOK:

        LD      A,(FANMOD)
        AND     A,0X7
        CMP     A,3
        JR      EQ,HTMDZZ
        CMP     A,2
        JR      EQ,CSMDZZ
        CMP     A,1
        JR      EQ,CLMDZZ
        CMP     A,0
        JR      EQ,ATMDZZ
        JP      SFMD
;
CLMDZZ:
        JP      COOLMD
;
CSMDZZ:
        JP      CHSHMD
;
HTMDZZ:
        JP      HEATMD
;
ATMDZZ:
        JP      AUTMDZ 
;
;******************** FOR AD WRONG *********************

FADWRN:

        TEST    (FLAG1).RMWRN
        JR      F,ISRMW
        TEST    (FLAG1).RMPWRN
        JR      F,ISRMPW

        TEST    (FLAG1).OTPWRN
        JR      F,ISOTPW

        TEST    (FLAG4).FKERR
        JR      F,ISFKW

        TEST    (FLAG6).SWJWRN
        JR      F,ISHWJW

        CLR     (FLSMMS)
        CLR     (FLSCNT)
        NOP
        RET
;
ISRMW:

        CMP     (FLSCNT),0X2
        JR      CS,ADWFLS
        CMP     (FLSCNT),0X4
        JR      CS,ADLEDOF
        CLR     (FLSCNT)
        RET
;
ISRMPW:

        CMP     (FLSCNT),0X3
        JR      CS,ADWFLS
        CMP     (FLSCNT),0X5
        JR      CS,ADLEDOF
        CLR     (FLSCNT)
        RET
;
ISOTPW:

        CMP     (FLSCNT),0X7
        JR      CS,ADWFLS
        CMP     (FLSCNT),0X9
        JR      CS,ADLEDOF
        CLR     (FLSCNT)
        RET
;
ISFKW:

        CMP     (FLSCNT),0X8
        JR      CS,ADWFLS
        CMP     (FLSCNT),0XA
        JR      CS,ADLEDOF
        CLR     (FLSCNT)
        RET
;

ISHWJW:
        CMP     (FLSCNT),0X6
        JR      CS,ADWFLS
        CMP     (FLSCNT),0X8
        JR      CS,ADLEDOF
        CLR     (FLSCNT)
        RET
;
ADWFLS:
        CMP     (FLSMMS),0X3D
        JR      CC,ADLEDOF
        CMP     (FLSMMS),0X1
        JR      CS,ADLEDOF
        CLR     (P0).5                  ; SET THE TIME LED
        RET
;       
ADLEDOF:
        SET     (P0).5                  ; CLEAR THE TIME LED
        RET
;
;
TMLEDON:
        TEST    (FLAG1).RMWRN
        JR      F,TMNTON
        TEST    (FLAG1).RMPWRN
        JR      F,TMNTON

        TEST    (FLAG1).OTPWRN
        JR      F,TMNTON

        TEST    (FLAG4).FKERR
        JR      F,TMNTON

        TEST    (FLAG6).SWJWRN
        JR      F,TMNTON

        CLR     (P0).5
TMNTON:
        RET
;

TMLEDOFF:
        TEST    (FLAG1).RMWRN
        JR      F,TMNTOFF
        TEST    (FLAG1).RMPWRN
        JR      F,TMNTOFF

        TEST    (FLAG1).OTPWRN
        JR      F,TMNTOFF

        TEST    (FLAG4).FKERR
        JR      F,TMNTOFF

        TEST    (FLAG6).SWJWRN
        JR      F,TMNTOFF

        SET     (P0).5                   ; CLEAR THE TIME LED

TMNTOFF:
        RET
;
;*****************************************************************
;*
;*           FOR      HEAT   MODE
;*
;******************** HEAT  MOD **************************

HEATMD:
        NOP
        TEST    (FLAG2).ISHTFLG
        JR      F,HTFLW1
        CALL    CMPCLS
        CALL    FANCLR2

        SET     (FLAG2).CSFRST

        CLR     (FLFSEC)                 ; CLEAR THE FLF CNT
        CLR     (FLFMIN)

        CALL    STPRST
;
HTFLW1:

        SET     (FLAG2).ISHTFLG
        CLR     (FLAG3).GJFLG
        CLR     (FLAG4).ISCHSH
        CLR     (FLAG6).CSSTP

        CLR     (FLAG3).CHSFLG
        CLR     (FLAG3).ISCOOL
        CLR     (FLAG3).FLDFLG
        CLR     (FLDSEC)
        CLR     (FLDMIN)

        TEST    (FLAG3).HTFCHS
        JR      F,CHSSTR

        TEST    (FLAG2).CSISEND
        JR      F,CHSSTR
        TEST    (FLAG2).CSFRST
        JR      F,HTCSFST

        CMP     (HTCMIN),0X32              ;  RUN 50 MINUTES
        JR      CC,CSNTFST
        JR      EXCSZ
;
HTCSFST:

        CMP     (HTCMIN),0X1E              ; FIRST RUN 30MINS
        JR      CC,CSNTFST
EXCSZ:
        JP      EXCS
;
CSNTFST:

        CMP     (CMPMIN),0X5               ; IF CMP RUN 5MINS
        JR      CS,EXCSZ

        CMP     (OTPVAL),0X35              ; CMP WITH -5C
        JR      GT,EXCSZ

        SET     (FLAG3).HTFCHS
        CLR     (FLAG2).CSISEND
        CLR     (FLAG2).CSFRST

        CLR     (OFFSEC)
        CLR     (OFFMIN)
        CLR     (CMPSEC)
        CLR     (CMPMIN)

        CALL    FANCLR

        NOP
        CLR     (P7).6                    ; CLOSE THE COMPRESSOR

;/        SET     (FLAG1).DLY3M
;/        SET     (FLAG3).VDLY

        NOP
CHSSTR:
        TEST    (FLAG2).CSISEND
        JR      F,CHSEND

        TEST    (P7).6                     ; TEST THE CMP
        JR      F,CSFLW1

        CMP     (OFFMIN),0X1              ; AFTER 60S 
        JR      CC,CSSTCMP

        CMP     (OFFSEC),0X37             ; AFTER 55S SECONDS
        JR      CS,CSFLW1
        NOP
        CLR     (P7).4                    ; CLR THE VALVE
        CLR     (P7).5                    ; CLR THE OUT FAN
        JR      CSFLW2
;
CSSTCMP:
        SET     (P7).6                    ; SET THE CMP
        CLR     (CMPSEC)
        CLR     (CMPMIN)
        JR      CSFLW2
;        
CSFLW1:
        CMP     (CMPMIN),0X9              ; IF CHSHUANG > 9 MINUTES
        JR      CS,CSFLW2

CHSEND:
        CLR     (P7).6                    ; CLOSE THE CMP

        SET     (FLAG2).CSISEND

        SET     (P7).5                    ; SET THE OUTFAN

        CMP     (OFFMIN),0X1              ; AFTER 60S
        JR      CC,CSHVEND

        CMP     (OFFSEC),0X37             ; AFTER 55S SET THE VALVE
        JR      CS,HTMZ88
        SET     (P7).4                    ; THE VALVE
        JR      HTMZ88
;
CSHVEND:
        CLR     (FLAG2).CSISEND
        CLR     (FLAG3).HTFCHS
        CLR     (HTCMSEC)
        CLR     (HTCMIN)
        JR      EXCS
;
CSFLW2:
        CMP     (OTPTMP),0XC             ; CMP WITH  12C
        JR      CS,HTMZ88
        JR      CHSEND
;
HTMZ88:

        NOP

        CLR     (FLFSEC)                  ; CLEAR SWJWRN CNT
        CLR     (FLFMIN)

        CMP     (MMS),0X3E
        JR      GT,CSPWFLS
        CLR     (P0).3
        JP      ALLMOD
;
CSPWFLS:
        SET     (P0).3
        JP      ALLMOD
;
EXCS:

        SET     (P7).4                    ; SET THE VALVE

        CMP     (OFFMIN),0X1
        JR      CC,HTCLOTF
        CMP     (OFFSEC),0X1E             ; IF AFTER 30 S CLR OUTFAN
        JR      CS,EXFLWW
HTCLOTF:
        CLR     (P7).5                    ; CLEAR THE OUT FAN

EXFLWW:
        TEST    (FLAG4).ISTEST            ; IF TEST THE TMP NO EFFECT
        JR      F,HTCMPON

        CALL    FPRTMP
        LD      W,(PRSTMP)
        ADD     W,0X5                     ; Tpreset + 5C
        LD      A,(RMTMP)
        CMP     A,W
        JR      CS,HTFON

        CALL    FHTCCLS                 ; Troom >= Tpreset + 5C
        JP      HTFLW2
;
HTFON:

        CALL    FPRTMP
        LD      W,(PRSTMP)
        ADD     W,0X4                   ; Tpreset + 4C
        LD      A,(RMTMP)
        CMP     A,W
        JR      CC,HTONOFF             ; IF 


HTCMPON:                                ; 

        CMP     (RMPTMP),0X32           ; CMP WITH 49C
        JR      CS,HTOT49

        TEST    (FLAG5).HTHI62
        JR      F,HTCMCLS

        CMP     (RMPTMP),0X33          ; CMP WITH 51C
        JR      CC,HTOTOF

        JR      HTOTOFF
;
HTOTOF:

;/        SET     (FLAG3).HI52D
;/        CLR     (HI52C)
;/        CLR     (H52MIN)

        TEST    (P7).6                 ; TEST THE CMP
        JR      T,CLOTNCM
        CLR     (P7).5                 ; CLR THE OUTFAN

CLOTNCM:
        CMP     (RMPTMP),0X3C          ; CMP WITH 60C
        JR      CS,HTOTOFF

        SET     (FLAG5).HTHI62

HTCMCLS:

        CALL    CMPCLS

        JR      HTFLW2
;
HTOT49:
        CLR     (FLAG5).HTHI62

        TEST    (P7).6              ; TEST THE CMP
        JR      T,HTOTOFF
        SET     (P7).5

HTOTOFF:
        CALL    FCMPON
        JR      HTFLW2
;
HTONOFF:
        NOP
        TEST    (P7).6              ; TEST THE CMP
        JR      F,HTCMPON

HTFLW2:
        NOP
 
        CMP     (RMPTMP),0X12             ; CMP WITH 18C
        JR      CS,HTCLRFN

        CMP     (RMPTMP),0X1C            ; CMP WITH 28C
        JR      CC,HTHG28C

        TEST    (FLAG4).FANON
        JR      F,HTLLWFN

        JR      HTCLRFN
;
HTHG28C:

        CMP     (RMPTMP),0X1E            ; CMP WITH 30C
        JR      CC,HTHG30C

HTLLWFN:
        SET     (FLAG4).FANON            ; FOR HEAT LLW FAN
        CALL    LLWFAN
        JR      HTFLW3
;
HTHG30C:

        CMP     (RMPTMP),0X23            ; CMP WITH 35C
        JR      CC,HTHG35C

        TEST    (FLAG6).HGFN
        JR      F,HTLWFN
        TEST    (FLAG6).MDFN
        JR      F,HTLWFN
        TEST    (FLAG6).LWFN
        JR      F,HTLWFN
        JR      HTLLWFN

⌨️ 快捷键说明

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