📄 lowp2.asm
字号:
;----- DESIGN FOR LOW_POWR CONSUM TEST WHEN POWR DOWN -----------
TIME_H DATA 30H
TIME_L DATA 31H
INT1_CNT DATA 32H
ORG 00H
AJMP RESET
ORG 0BH
AJMP T0_INT
ORG 13H
AJMP INT1_INT
ORG 80H
T0_INT:
PUSH ACC
PUSH PSW
INC TIME_L
MOV A,TIME_L
JNZ EXIT_INT0
INC TIME_H
EXIT_INT0:
POP PSW
POP ACC
RETI
;-----------------------------------------------------------
ORG 200H
INT1_INT:
SETB P1.1
INC INT1_CNT
RETI
;-----------------------------------------------------------
ORG 400H
RESET:
MOV SP,#60H
MOV P0,#30H ;set p0.4/5 "1",connect to Vcc.
MOV 91H,#10H
MOV 92H,#02H
SETB P1.1 ;set Led light
SETB P1.4
MOV TIME_L,#00H
MOV TIME_H,#00H
MOV TMOD,#11H ;set t0 int mode.
MOV TCON,#50H
MOV INT1_CNT,#00H ;clear Int1 int times
SETB IT1 ;enable int1 and t0 int function
SETB EX1
CLR IE1 ;clr Int1 int flag.
SETB ET0
SETB EA
MAIN_LOOP:
MOV A,#40H
CLR C
SUBB A,TIME_L
JNC MAIN_LOOP
CLR P1.1 ;Close led
MOV 0A2H,#40H ;Close Power_down check
FFF:
NOP
CLR P1.1
MOV PCON,#02H ;Set power down,wait Int1 interrupt
MOV TH0,#00H
MOV TL0,#00H
MOV TIME_L,#00H
MOV TIME_H,#00H
NOP
TEST_TIME:
MOV A,#10H ;Led light for a short time,then goto FFF
CLR C
SUBB A,TIME_L
JNC TEST_TIME
NOP
AJMP FFF
AJMP MAIN_LOOP
CONTINUE:
NOP
NOP
NOP
NOP
NOP
AJMP MAIN_LOOP
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -