ORG 00H
START: MOV ID,#00H
KK1: JB K1,KK2
LCALL DELAY20MS ;10MS:可靠性低
JB K1,KK2
INC ID
MOV A,ID
CJNE A,#07,REL
MOV ID,#-1H
KK2: JB K2,REL
LCALL DELAY20MS ;10MS:可靠性低
JB K2,REL
DEC ID
MOV A,ID
CJNE A,#-1,REL
MOV ID,#06H ;07H:ERR
;RET:err
REL: JNB K1,$
JNB K2,$
LCALL DELAY20MS ;***
;JB K1,ZJ ;***
;JB K2,REL ;***
MOV A,ID
CJNE A,#00H,IS0
ORL P2,#01111111B ;***
CLR L1 ;***
LJMP KK1 ;START:ERR
IS0: CJNE A,#01H,IS1
ORL P2,#01111111B ;***
CLR L2 ;***
LJMP KK1 ;START:ERR
IS1: CJNE A,#02H,IS2
ORL P2,#01111111B ;***
CLR L3 ;***
LJMP KK1 ;START:ERR
IS2: CJNE A,#03H,IS3
ORL P2,#01111111B ;***
CLR L4 ;***
LJMP KK1 ;START:ERR
IS3: CJNE A,#04H,IS4
ORL P2,#01111111B ;***
CLR L5 ;***
LJMP KK1 ;START:ERR
IS4: CJNE A,#05H,IS5
ORL P2,#01111111B ;***
CLR L6 ;***
LJMP KK1 ;START:ERR
IS5: CJNE A,#06H,IS6
ORL P2,#01111111B ;***
CLR L7 ;***
LJMP KK1 ;START:ERR
IS6: LJMP START
;DELAY10MS: MOV R6,#20
DELAY20MS: MOV R6,#40
LOOP1: MOV R7,#248
DJNZ R7,$
DJNZ R6,LOOP1
RET
;DELAY: MOV R5,#20
;LOOP2: LCALL DELAY10MS
; DJNZ R5,LOOP2
; RET
END