如果用中断,可以这样
org 0000h
SJMP MAIN
ORG 000BH
LJMP A_T0
ORG 0013H
LJMP A_INT
org 30h
MAIN:clr p1.5
mov R7,#0feh
MOV R0,#0
MOV R1,#1
MOV R2,#1
MOV R5,#4
MOV TMOD,#01H
SETB TR0
SETB ET0
SETB IT1
SETB EX1
SETB EA
LOOP:ORL PCON,#1
SJMP LOOP
A_INT:CLR EA
MOV R2,#5
JNB P1.3,A_I1
DEC R2
JNB P1.2,A_I1
DEC R2
JNB P1.1,A_I1
DEC R2
JNB P1.0,A_I1
DEC R2
A_I1:SETB EA
RET
A_T0:MOV TL0,#220
MOV TH0,#11
DJNZ R5,A_TE
MOV R5,#4
DJNZ R1,A_TE
MOV A,R2
MOV R1,A
DEC R0
MOV A,R0
MOV P0,#0FFH
JB ACC.0,A_TE
MOV A,R7
CJNE R2,#2,A_T1
RL A
SJMP A_T2
A_T1:RR A
A_T2:MOV R7,A
MOV P0,A
A_TE:RETI
end
发表时间:2003年4月28日11:06:40