AT89C51怎么让一个数从左(假如为P2.7)到右依次显示,最后停在最右(假如为P2.7)。
能力有限,做的时候发现循环根本停不下来一直跑。 - -
自己就能写成这样了
ORG 0000H
LJMP MAIN1
ORG 0300H
MOV R4,#0
MAIN1:
MOV P0,#0
MOV P2,R4
MOV A,#3fH
MOV P0,A
ACALL Delay
INC R4
CJNE R4,#8,MAIN1
MAIN2:
MOV P0,#0
MOV P2,R4
MOV A,#06H
MOV P0,A
ACALL Delay
INC R4
CJNE R4,#8,MAIN2
MOV P0,#06H
DELAY: MOV R1,#10
L1: MOV R2,#50
L2: MOV R3,#250
L3: DJNZ R3,L3
DJNZ R2,L2
DJNZ R1,L1
RET
END
能力有限,做的时候发现循环根本停不下来一直跑。 - -
自己就能写成这样了
ORG 0000H
LJMP MAIN1
ORG 0300H
MOV R4,#0
MAIN1:
MOV P0,#0
MOV P2,R4
MOV A,#3fH
MOV P0,A
ACALL Delay
INC R4
CJNE R4,#8,MAIN1
MAIN2:
MOV P0,#0
MOV P2,R4
MOV A,#06H
MOV P0,A
ACALL Delay
INC R4
CJNE R4,#8,MAIN2
MOV P0,#06H
DELAY: MOV R1,#10
L1: MOV R2,#50
L2: MOV R3,#250
L3: DJNZ R3,L3
DJNZ R2,L2
DJNZ R1,L1
RET
END