51单片机用软件延迟控制流水灯,灯从右到左依次亮,延迟2s,谁能给个...
发布网友
发布时间:2024-03-20 09:33
我来回答
共1个回答
热心网友
时间:2024-04-08 05:51
ORG 00H
JMP MAIN
ORG 30H
MAIN: MOV A,#0FFH ;设置左移初值
CLR C ;C=0
MOV R2,#08H ;设置左移次数
LOOP: RLC A ;左移1位
MOV P2,A ;输出到P2
CALL DELAY ;延时
DJNZ R2,LOOP ;左移7次
MOV R2,#07H ;
LOOP1: RRC A ;右移1位
MOV P2,A ;输出到P2
CALL DELAY ;
DJNZ R2,LOOP1 ;右移7次
JMP MAIN
DELAY: MOV R3,#20 ; 延时2s
D1: MOV R4,#200 ; 这里可以改变延时时间
D2: MOV R5,#250
DJNZ R5,$
DJNZ R4,D2
DJNZ R3,D1
RET
END