RRC A
MOV @R1,A
DJNZ R3,IR_8BIT
INC R1
DJNZ R2,IR_4BYTE
;解码成功
JMP IR_GOTO
IR_Rp:
;按住遥控按键时,每过108ms就到这里来
JMP IR_GOTO
IR_ERROR:
;错语退出
LJMP MAIN
;退出解码子程序
;遥控执行部份
IR_GOTO:
;MOV A,1AH
;CJNE A,#xxH,IR_ERROR
;MOV A,1BH
;CJNE A,#xxH,IR_ERROR
MOV A,1CH
CPL A
CJNE A,1DH,IR_ERROR
;遥控执行部份
;MOV A,1DH
;CJNE A,#xxH,$+6
;LJMP
;CJNE A,#xxH,$+6
;LJMP
;.
MOV P1,1DH
CLR P2.3
LCALL DELAY2400
LCALL DELAY2400
LCALL DELAY2400
SETB P2.3
MOV 1AH,#00H
MOV 1BH,#00H
MOV 1CH,#00H
MOV 1DH,#00H
LJMP MAIN
;=================================================
; 延时子程序
;=============================882
DELAY882: ;1.085x ((202x4)+5)=882
MOV R7,#202
DELAY882_A:
NOP
NOP
DJNZ R7,DELAY882_A
RET
;=============================1000
DELAY1000: ;1.085x ((229x4)+5)=999.285
MOV R7,#229
DELAY1000_A:
NOP
NOP
DJNZ R7,DELAY1000_A
RET
;=============================2400
DELAY2400: ;1.085x ((245x9)+5)=2397.85
MOV R7,#245
DELAY2400_A:
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R7,DELAY2400_A
RET
END