帮我看看这个能否实现上面的功能。谢谢!!
ORG 0000H
MOV TH0,#63H
MOV TL0,#18H
SETB TR0
SETB C
S0: MOV P1.0,C
ACALL DELAY1
CPL C
SJMP S0
DELAY1: MOV R1,#500
DJNZ R1,DELAY1
RET
S1: JBC TF0,S2
SJMP S1
S2: MOV TH0,#63H
MOV TL0,#18H
DJNZ R2,S1
RET
END
JNB TF0,$;能说下$这符号是什么意思吗?
追答相当于:
LOOP:JNB TF0,LOOP
就是说原地等待,直到TF0为1(定时时间到时TF0=1)
那么10ms的定时呢
还有就是MOV SP,#60H 这句的SP指的是?
10ms定时是由T0定时器实现的,定时时间到后CPL P1.0
MOV SP,#60H这句可以不要,SP是堆栈指针寄存器,用来实现堆栈保护用的,这里程序少,没用到子程序或者中断所以可以不用,用的话只是习惯用法。