AJMP START
START: MOV P1, #0EFH ;EFH=11101111B,相當於將P1.4的燈點亮
ACALL DELAY ;調用延時程序
MOV P1, #0DFH ;DFH=11011111B,相當於將P1.5的燈點亮
ACALL DELAY
MOV P1, #0BFH ;BFH=10111111B,相當於將P1.6的燈點亮
ACALL DELAY
MOV P1, #7FH ;7FH=01111111B,相當於將P1.7的燈點亮
ACALL DELAY
AJMP START ;返回到START處,構成循環
DELAY: MOV R3, #09H ;1s 延遲
DL3: ACALL DELAY1
DJNZ R3, DL3
RET
DELAY1: MOV R1, #0FFH ;130ms延遲 屬於DELAY的子程序
MOV R2, #0FFH
DL2: DJNZ R2, DL1
DL1: DJNZ R2, DL1
DJNZ R1, DL2
RET
END
這種循環不提倡,不過在這裏就簡單了。
特別說明,電路圖畫的時候,是二極管正極接電源,負極接P1.4-P1.7,中間串上220歐姆的電阻。