📄 idwracslp.asm
字号:
;************************************************************************
; TITLE: LT0333SLP.ASM
; VERSION: 1.0
; DATE: 2003.07.23
; AUTHOR: Gilbert.Huang
; DESCRIPTION: GOOD MAN
;
; Chip type: NECuPD78F9188
; ROM SIZE: 16K BYTES
; RAM SIZE: 384 BYTES
; EEPROM SIZE: 256 BYTES
; CRYSTAL: 4.19MHz
; I/O PORT: 26 PINS
; PACKAGE: DIP32
;************************************************************************
; NAME SLEEPmod
;
;
; $include (LT0333sym.INC)
; $include (LT0333RAM.INC)
; CSEG
; EXTRN ON2OFF
; PUBLIC SLEEP
;************************************************************************
;* Module Name: LT0333slp *
;* Function: SLEEP FUNCTION CONTROL *
;* Input: C_SLPstp,D_TMPset *
;* Output: D_TMPrun *
;* Break: *
;* stack: *
;************************************************************************
; History:
;
;------------------------------------------------------------------------
SLEEP:
; CMP C_RMT1s,#0
; BEQ $+2+1
; RET
BT f_PWRon,$CHECKsleep
BT f_TMRon,$CHECKsleep
CLR1 f_SLEEP
CHECKsleep:
BF f_SLEEP,$NOsleep
CMP C_SLPstp,#2 ;8 step,no change
BZ $SLPstep8
CMP C_SLPstp,#1 ;7 step,1st change
BZ $SLPstep7
BR $SLPstep6
BR SLPstep8
; CMP C_SLPstp,#6 ;6 step,2nd change
; BZ $SLPstep6
; CMP C_SLPstp,#0 ;SLEEP OFF
; BZ $SLP2off
; BR $SLPstep5 ;<6 step,3rd change
NOsleep:
MOV C_SLPstp,#0
SLPstep8:
MOV A,D_TMPset
MOV D_TMPrun,A
MOV A,D_TMPcset
MOV D_TMPcRUN,A
RET
;------------------------------------------------------------------------
SLPstep7:
CMP M_MODrun,#n_Mheat ; 修改睡眠在初始模式中的问题
BEQ SLPheat1
MOV A,D_TMPset
INC A
INC A
; CMP A,#32+D_TMPdsp
; BC $$+2+3
; MOV A,#32+D_TMPdsp
MOV D_TMPrun,A
; MOV D_TMPset,A
MOV A,D_TMPcset
INC A
MOV D_TMPcRUN,A
RET
SLPheat1:
MOV A,D_TMPset
DEC A
DEC A
; CMP A,#16+D_TMPdsp
; BNC $$+2+3
; MOV A,#16+D_TMPdsp
MOV D_TMPrun,A
; MOV D_TMPset,A
MOV A,D_TMPcset
DEC A
MOV D_TMPcRUN,A
RET
;------------------------------------------------------------------------
SLPstep6:
;------------------------------------------------------------------------
CMP M_MODrun,#n_Mheat ; 修改睡眠在初始模式中的问题
BEQ SLPheat2
; CMP M_MODset,#n_Mcool
; BNZ $SLPheat2
;------------------------------------------------------------------------
MOV A,D_TMPset
INC A
INC A
INC A
INC A
; CMP A,#30+D_TMPdsp
; BC $$+2+3
; MOV A,#30+D_TMPdsp
MOV D_TMPrun,A
MOV A,D_TMPcset
INC A
INC A
MOV D_TMPcRUN,A
; MOV D_TMPset,A
RET
SLPheat2:
MOV A,D_TMPset
DEC A
DEC A
DEC A
DEC A
; DEC A ;total 3 degree decrease
; CMP A,#16+D_TMPdsp`
; BNC $$+2+3
; MOV A,#16+D_TMPdsp
MOV D_TMPrun,A
; MOV D_TMPset,A
MOV A,D_TMPcset
DEC A
DEC A
MOV D_TMPcRUN,A
RET
;------------------------------------------------------------------------
SLPstep5:
;------------------------------------------------------------------------
CMP M_MODrun,#n_Mheat ; 修改睡眠在初始模式中的问题
BEQ SLPheat3
; CMP M_MODset,#n_Mcool
; BNZ $SLPheat3
;------------------------------------------------------------------------
MOV A,D_TMPset
INC A
INC A
; CMP A,#30+D_TMPdsp
; BC $$+2+3
; MOV A,#30+D_TMPdsp
MOV D_TMPrun,A
; MOV D_TMPset,A
RET
SLPheat3:
MOV A,D_TMPset
DEC A
DEC A
DEC A
; DEC A ;total 3 degree decrease
; CMP A,#16+D_TMPdsp`
; BNC $$+2+3
; MOV A,#16+D_TMPdsp
MOV D_TMPrun,A
; MOV D_TMPset,A
RET
SLP2off:
CLR1 f_SLEEP
BF f_TMRon,$$+4+1
RET
CALL !ON2OFF
RET
; end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -