DQ BIT P2.4
FLAG1 BIT 00H
SIGN BIT 01H
MSB EQU 30H
LSB EQU 31H
INTEG EQU 32H
DECIM EQU 33H
SEG_S EQU 34H
SEG_I3 EQU 35H
SEG_I2 EQU 36H
SEG_I1 EQU 37H
SEG_D1 EQU 38H
SEG_C EQU 39H
ORG 0000H
MAIN: LCALL INIT_1820
LCALL GET_TEMPER
LCALL DATA_PROC
LCALL SEG_GEN
LCALL DISPLAY
SJMP MAIN
INIT_1820: SETB DQ
NOP
CLR DQ
MOV R1,#3
TSR1: MOV R0,#107
DJNZ R0,$
DJNZ R1,TSR1
SETB DQ
NOP
NOP
NOP
MOV R0,#25H
TSR2: JNB DQ,TSR3
DJNZ R0,TSR2
LJMP TSR4
TSR3: SETB FLAG1
LJMP TSR5
TSR4: CLR FLAG1
LJMP TSR6
TSR5: MOV R0,#117
DJNZ R0,$
TSR6: SETB DQ
RET
GET_TEMPER: SETB DQ