jamesa
Newbie level 6
please help me check which part of my code got wrong??
and why my serial intterupt can't work ??
thx
ORG 0000H
LJMP MAIN
;====================================
;INT INTERRUPT
;====================================
ORG 0013H
CJNE R2, #14,KK1
CLR P2.1
RETI
KK1: RETI
ORG 0023H
LJMP SERIAL
;============================
;MAIN ROUTINE
;============================
ORG 30H
MAIN: MOV P1, #0FFH
MOV P0, #000H
CLR P2.1
CLR P2.2
MOV R2, #0
MOV R3, #0
MOV TMOD, #20H
MOV TH1, #-24
MOV SCON, #50H
MOV IE, #10010100B
SETB R1
B1: JB P1.1, B2
CLR P2.1
LCALL DELAY
CLR P2.2
SJMP B1
B2: JB P1.2, M1
SETB P2.2
LCALL DELAY
LJMP B1
M1: JNB P3.3 B1
INC R2
INC R3
MOV A,R3
MOV SBUF,A
LJMP B1
;==========================
;SERIAL INTERRUPT
;=========================
ORG 100H
SERIAL: JB TI,MM2
MOV A,SBUF
POW1: CJNE A,#41H,POW2
SETB P2.1
LCALL DELAY
LJMP MM1
POW2: CJNE A,#42H,CW
CLR P2.1
LCALL DELAY
LJMP MM1
CW: CJNE A,#43H,CWW
SETB P2.2
LCALL DELAY
LJMP MM1
CWW: CLR P2.2
LCALL DELAY
LJMP MM1
MM1: CLR RI
RETI
MM2: CLR TI
RETI
DELAY: MOV R5,#250
LOOP:
NOP
NOP
NOP
DJNZ R5,LOOP
RET
END
and why my serial intterupt can't work ??
thx
ORG 0000H
LJMP MAIN
;====================================
;INT INTERRUPT
;====================================
ORG 0013H
CJNE R2, #14,KK1
CLR P2.1
RETI
KK1: RETI
ORG 0023H
LJMP SERIAL
;============================
;MAIN ROUTINE
;============================
ORG 30H
MAIN: MOV P1, #0FFH
MOV P0, #000H
CLR P2.1
CLR P2.2
MOV R2, #0
MOV R3, #0
MOV TMOD, #20H
MOV TH1, #-24
MOV SCON, #50H
MOV IE, #10010100B
SETB R1
B1: JB P1.1, B2
CLR P2.1
LCALL DELAY
CLR P2.2
SJMP B1
B2: JB P1.2, M1
SETB P2.2
LCALL DELAY
LJMP B1
M1: JNB P3.3 B1
INC R2
INC R3
MOV A,R3
MOV SBUF,A
LJMP B1
;==========================
;SERIAL INTERRUPT
;=========================
ORG 100H
SERIAL: JB TI,MM2
MOV A,SBUF
POW1: CJNE A,#41H,POW2
SETB P2.1
LCALL DELAY
LJMP MM1
POW2: CJNE A,#42H,CW
CLR P2.1
LCALL DELAY
LJMP MM1
CW: CJNE A,#43H,CWW
SETB P2.2
LCALL DELAY
LJMP MM1
CWW: CLR P2.2
LCALL DELAY
LJMP MM1
MM1: CLR RI
RETI
MM2: CLR TI
RETI
DELAY: MOV R5,#250
LOOP:
NOP
NOP
NOP
DJNZ R5,LOOP
RET
END