📄 ylktst.asm
字号:
;/ 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 + -