标题: 单片机流水灯效果,每隔10秒钟轮流点亮LED灯程序问题 [打印本页]

作者: 82486380    时间: 2020-1-3 14:43
标题: 单片机流水灯效果,每隔10秒钟轮流点亮LED灯程序问题
这是我设计的跑马灯程序,从第一个灯到第二个灯已经能实现1.25s延时跳转,可是跳转了一次之后他就不动了,求大神指点,下面的是程序
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP DSZD
ORG 0100H
MAIN:
MOV SP,#60H
MOV R7,#14H
MOV A,#01H
MOV TMOD,#01H
MOV TH0,#00BH
MOV TL0,#0DCH
SETB EA
SETB ET0
SETB TR0
LP: MOV P1,A
LJMP LP
DSZD:
DJNZ R7,D2
RL A
MOV TH0,#00BH
MOV TL0,#0DCH
SETB TR0
D2:RETI
END


作者: xiaocake    时间: 2020-1-3 16:43
DJNZ R7,D2
后面加上
MOV R7,#14H

作者: mffhxa    时间: 2020-1-4 22:44
进入中断后先设初值,你的程序没设初值就出中断了。把这段程序:
DSZD:
DJNZ R7,D2
RL A
MOV TH0,#00BH
MOV TL0,#0DCH
SETB TR0
D2:RETI
END
改为:
DSZD:
MOV TH0,#00BH
MOV TL0,#0DCH
SETB TR0
DJNZ R7,D2
RL A
D2:RETI
END
这样就可以了。

上keil运行仿真了下,没任何问题了。


作者: chenchi008    时间: 2020-1-5 08:40
应该改为:
DSZD:
MOV TH0,#00BH
MOV TL0,#0DCH
SETB TR0
DJNZ R7,D2
RL A
D2:RETI
END
这样就可以了。





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1