📄 yz285.asm
字号:
ICMNHT:
CLR (HTCMSEC)
CLR (HTCMIN)
INCMP11:
TEST (P7).3 ; TEST THE DJR
JR F,DJRION
CMP (DJRSEC),0X1
JR CS,FLWFNC
DEC (DJRSEC)
JR FLWFNC
;
DJRION:
CLR (DJRSEC)
FLWFNC:
TEST (P7).7 ; CNT THE LOW FAN TIME
JR T,IFXTWRN
INC (LWFNSEC)
CMP (LWFNSEC),0XF0
JR CS,IFXTWRN
DEC (LWFNSEC)
IFXTWRN:
TEST (FLAG3).ISCOOL
JR T,CLNSWJW
TEST (FLAG3).GJFLG
JR F,CLNSWJW
CMP (CMPMIN),0X5 ; IF CMP HAVE RUN 5MINS
JR CS,CLNSWJW
TEST (FLAG1).RMWRN
JR F,CLNSWJW
TEST (FLAG1).RMPWRN
JR F,CLNSWJW
LD A,(RMTMP)
SUB A,(RMPTMP)
JR CS,INCCLW ; JUDGE IF XITONG WRONG
CMP A,0X5
JR CC,CLNSWJW
INCCLW:
INC (CLWSEC)
CMP (CLWSEC),0X3C
JR CS,IFHTWRN
CLR (CLWSEC)
INC (CLWMIN)
JR IFHTWRN
;
CLNSWJW:
CLR (CLWSEC)
CLR (CLWMIN)
IFHTWRN:
TEST (FLAG2).ISHTFLG
JR T,HTNSWJW
TEST (FLAG3).GJFLG
JR F,HTNSWJW
TEST (FLAG1).RMPWRN
JR F,HTNSWJW
TEST (P7).4 ; TEST THE CMP
JR T,HTNSWJW
CMP (RMPTMP),0X12 ; CMP WITH 18C
JR CC,HTNSWJW
INC (HTWSEC)
CMP (HTWSEC),0X3C
JR CS,IFCLSTP
CLR (HTWSEC)
INC (HTWMIN)
JR IFCLSTP
;
HTNSWJW:
CLR (HTWSEC)
CLR (HTWMIN)
IFCLSTP:
TEST (FLAG1).DLY3M ; FOR DELAY 3 MINUTES
JR T,FRSEC
INC (S3MCNT)
CMP (S3MCNT),0XB4 ; 180 SECOND = 3 MINUTES
JR CS,FRSEC
CLR (S3MCNT)
CLR (FLAG1).DLY3M
FRSEC:
TEST (FLAG3).VDLY
JR T,NOVDLY
INC (VDCNT)
CMP (VDCNT),0X78 ; After 2 minute close the valve
JR CS,NOVDLY
CLR (VDCNT)
CLR (FLAG3).VDLY
NOVDLY:
LD A,(VANFAN) ; TEST IF SLEEP
AND A,0X7
CMP A,0X1
JR NE,CLRSLP
TEST (DSCD0).2 ; TEST IF OFF
JR T,CLRSLP ; IF TURN OFF BY REMOTE
INC (SLPSEC)
CMP (SLPSEC),0X3C ;
JR CS,IFCRN
CLR (SLPSEC)
INC (SLPMIN)
CMP (SLPMIN),0XF0 ;
JR CS,IFTJTMP
DEC (SLPMIN)
JP IFCRN
;
IFTJTMP:
CMP (SLPMIN),0X3C
JR EQ,IF2HOUR
CMP (SLPMIN),0X78
JR EQ,IF2HOUR
JP IFCRN
;
IF2HOUR:
TEST (FLAG3).ISCOOL ; AFTER 1 HOUR
JR T,SLIFHT
LD W,(CD0TMP)
AND W,0XF
CMP W,0X1 ; CMP WITH 30C
JR CS,CSPTH31
SUB W,1 ; COOL SLP MAKE STTMP +1C
CSPTH31:
LD A,(CD0TMP)
AND A,0XF0
OR A,W
LD (CD0TMP),A
JP IFCRN
;
SLIFHT:
TEST (FLAG2).ISHTFLG
JR T,CLRSLP
LD W,(CD0TMP)
AND W,0XF
ADD W,1 ; HEAT SLP MAKE STTMP -1C
CMP W,0XF ; IF LOW 16C
JR CS,HSPTH16
LD W,0XF
HSPTH16:
LD A,(CD0TMP)
AND A,0XF0
OR A,W
LD (CD0TMP),A
JP IFCRN
;
CLRSLP:
CLR (SLPSEC)
CLR (SLPMIN)
;
IFCRN:
TEST (P7).4
JR T,CMPOFF
CLR (OFFSEC)
CLR (OFFMIN)
INC (CMPSEC)
CMP (CMPSEC),0X3C
JR CS,INCSEC
CLR (CMPSEC)
INC (CMPMIN)
CMP (CMPMIN),0XFE
JR CS,INCSEC
LD (CMPMIN),0XFD
JR INCSEC
;
CMPOFF:
CLR (CMPSEC)
CLR (CMPMIN)
INC (OFFSEC)
CMP (OFFSEC),0X3C
JR CS,INCSEC
CLR (OFFSEC)
INC (OFFMIN)
CMP (OFFMIN),0XFE
JR CS,INCSEC
LD (OFFMIN),0XFD
INCSEC:
INC (SECOND)
CMP (SECOND),0X3C
JR CS,TMRTI
CLR (SECOND)
INC (MINUTE)
CMP (MINUTE),0XA ;
JR CS,TMRTI
CLR (MINUTE)
INC (MINS10)
TMRTI:
RETI
;
;********************** FOR SELF TEST ************************
TESTSF:
NOP
SET (FLAG3).BUZZEN
TSTSTP:
SET (FLAG2).RSTSTP
TFSTP:
LD (SECOND),0X30
TEST (FLAG2).RSTSTP
JR F,TSTALL
CLR (MMS)
CLR (SECOND)
FLFAN:
SET (P7).7
JR TSTALL
;
FMFAN:
CLR (P7).7
SET (P7).6
JR TSTALL
;
FHFAN:
CLR (P7).6
SET (P7).5
JR TSTALL
;
FDJR:
CLR (P7).5
SET (P7).3
JR TSTALL
;
FCMP:
CLR (P7).3
SET (P7).4
JR TSTALL
;
FVAL:
;/ TEST (FLAG2).ISDLFLG
;/ JR T,FVAL11
;/ LD (SECOND),0X2
;/ JP FOUTF
;
;/FVAL11:
CLR (P7).4
SET (P7).1 ; SET THE VALVE
JR TSTALL
;
FOUTF:
CLR (P7).1
SET (P7).0
JR TSTALL
;
LGTLED:
CLR (P7).0
CLR (P0).3 ; LIGHT THE RUN LED
JR TSTALL
;
LGTLED1:
SET (P0).3 ; CLEAR THE RUN LED
CLR (P0).4 ; DS LED
JR TSTALL
;
LGTLED2:
SET (P0).4 ;
CLR (P0).5 ; SLEEP LED
JR TSTALL
;
LGTLED3:
SET (P0).5 ;
CLR (P0).6 ; CHS LED
JR TSTALL
;
LGTLED4:
SET (P0).6 ;
CMP (MMS),0X1
JR EQ,TSTSTBZ
CMP (MMS),0X3F
JR NE,TSTALL
TSTSTBZ:
SET (FLAG3).BUZZEN
TSTALL:
LD (WDTCR2),0X4E ; Clears the watchdog counter
TEST (P0).1 ; TEST THE KEY
JR T,TSNKEY
CALL DLY100U
TEST (P0).1
JR T,TSNKEY
TEST (FLAG1).KEYBUF
JR T,TSTFLW
CLR (FLAG1).KEYBUF
SET (FLAG3).BUZZEN
CLR (MMS)
CLR (SECOND)
CLR (FLAG1).RCVNEW
JP MAIN
;
TSNKEY:
SET (FLAG1).KEYBUF
TSTFLW:
CMP (SECOND),0X1
JR CS,FLFAN
CMP (SECOND),0X2
JR CS,FMFAN
CMP (SECOND),0X3
JR CS,FHFAN
CMP (SECOND),0X4
JR CS,FDJR
CMP (SECOND),0X5
JR CS,FCMP
CMP (SECOND),0X6
JR CS,FVAL
CMP (SECOND),0X7
JR CS,FOUTF
CMP (SECOND),0X8
JR CS,LGTLED
CMP (SECOND),0X9
JR CS,LGTLED1
CMP (SECOND),0XA
JR CS,LGTLED2
CMP (SECOND),0XB
JR CS,LGTLED3
CMP (SECOND),0XC
JR CS,LGTLED4
CMP (SECOND),0X30
JR CC,TFSTPZ
JP TSTSTP
;
TFSTPZ:
JP TFSTP
;
;************************* FOR THE BUZZER *******************
;
DLY100U:
LD (WDTCR2),0X4E ; Clears the watchdog counter
LD C,0
D1:
INC C ; 3
CMP C,0X80 ; 0X14 2
JR NE,D1 ; 3
RET
TWBUZZ:
SET (FLAG3).BUZZEN
CALL DLY05S
SET (FLAG3).BUZZEN
RET
;
DLY05S:
LD B,0
D3:
LD C,0
D2:
INC C
CMP C,0XC0
JR CS,D2
LD (WDTCR2),0X4E ; Clears the watchdog counter
INC B
CMP B,0XF0
JR CS,D3
RET
;
UNUSED:
NOP
NOP
RETI
;
;***************** THE 3470 TABLE *********************
;**********************************************************
;* B=3470 R25=10K
;*
;* R = 10K
;*
;***********************************************************
ADTABL2:
DB 0X2E ;-10
DB 0X30 ;-9
DB 0X32 ;-8
DB 0X34 ;-7
DB 0X36 ;-6
DB 0X38 ;-5
DB 0X3A ;-4
DB 0X3C ;-3
DB 0X3E ;-2
DB 0X40 ;-1
;
DB 0X43 ;0
DB 0X45 ;1
DB 0X47 ;2
DB 0X49 ;3
DB 0X4C ;4
DB 0X4E ;5
DB 0X50 ;6
DB 0X53 ;7
DB 0X55 ;8
DB 0X58 ;9
;
DB 0X5A ;10
DB 0X5D ;11
DB 0X5F ;12
DB 0X62 ;13
DB 0X64 ;14
DB 0X67 ;15
DB 0X69 ;16
DB 0X6C ;17
DB 0X6E ;18
DB 0X71 ;19
;
DB 0X73 ;20
DB 0X76 ;21
DB 0X79 ;22
DB 0X7B ;23
DB 0X7E ;24
DB 0X80 ;25
DB 0X82 ;26
DB 0X85 ;27
DB 0X87 ;28
DB 0X8A ;29
;
DB 0X8C ;30
DB 0X8F ;31
DB 0X91 ;32
DB 0X93 ;33
DB 0X95 ;34
DB 0X98 ;35
DB 0X9A ;36
DB 0X9C ;37
DB 0X9E ;38
DB 0XA1 ;39
;
DB 0XA3 ;40
DB 0XA5 ;41
DB 0XA7 ;42
DB 0XA9 ;43
DB 0XAB ;44
DB 0XAD ;45
DB 0XAF ;46
DB 0XB1 ;47
DB 0XB2 ;48
DB 0XB4 ;49
;
DB 0XB6 ;50
DB 0XB8 ;51
DB 0XB9 ;52
DB 0XBB ;53
DB 0XBD ;54
DB 0XBE ;55
DB 0XC0 ;56
DB 0XC2 ;57
DB 0XC3 ;58
DB 0XC4 ;59
;
DB 0XC6 ;60
DB 0XC7 ;61
DB 0XC9 ;62
DB 0XCA ;63
DB 0XCB ;64
DB 0XCD ;65
DB 0XCE ;66
DB 0XD0 ;67
DB 0XD1 ;68
DB 0XD2 ;69
;
DB 0XD3 ;70
DB 0XD4 ;71
DB 0XD5 ;72
DB 0XD6 ;73
DB 0XD7 ;74
DB 0XD8 ;75
DB 0XD9 ;76
DB 0XDA ;77
DB 0XDB ;78
DB 0XDC ;79
;********************* THE INTERRUPT ****************
;/ ORG 0XFFE0 ; INT5
;/ DW UNUSED
ORG 0XFFE2 ; INTTC2
DW PINTTC2
;/ ORG 0XFFE6 ; INT4
;/ DW PINT4
;/ ORG 0XFFE8 ; INT3
;/ DW PINT3
;/ ORG 0XFFEA ; INTTC5
;/ DW UNUSED
;/ ORG 0XFFEC ; INTSIO
;/ DW UNUSED
ORG 0XFFEE ; INTTC3
DW PINTTC3
;/ ORG 0XFFF0 ; INT2
;/ DW PINT2
;/ ORG 0XFFF2 ; INTBT
;/ DW UNUSED
ORG 0XFFF4 ; INT1
DW PINT1
;/ ORG 0XFFF6 ; INTTC1
;/ DW PINTTC1
;/ ORG 0XFFF8 ; INT0
;/ DW UNUSED
;/ ORG 0XFFFA ; INTWDT
;/ DW UNUSED
ORG 0XFFFE ;
DW RESET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -