发表于:2005/3/29 0:20:00
#0楼
org 0000h
ajmp start
org 000bh
ajmp time0
org 30h
start:
setb p2.7
mov r7,#00h
mov r6,#00h
mov tmod,#00000001b
mov th0,#3ch
mov tl0,#0b0h
setb ea
setb et0
jb p3.2,$
setb tr0
clr p2.7
loop:jb p3.3, loop
clr tr0
setb p2.7
ajmp start
time0:inc r7
cjne r7,#20,t_ret
mov r7,#0
inc r6
cjne r6,#10,t_ret
mov r6,#0
setb p2.7
clr tr0
ajmp start
t_ret:mov th0,#3ch
mov tl0,#0b0h
reti
end
请问该程序为什么第一次定时时间是正常,第二次再按p3.2启动就不正常呢?按复位键再启动就正常????????
ajmp start
org 000bh
ajmp time0
org 30h
start:
setb p2.7
mov r7,#00h
mov r6,#00h
mov tmod,#00000001b
mov th0,#3ch
mov tl0,#0b0h
setb ea
setb et0
jb p3.2,$
setb tr0
clr p2.7
loop:jb p3.3, loop
clr tr0
setb p2.7
ajmp start
time0:inc r7
cjne r7,#20,t_ret
mov r7,#0
inc r6
cjne r6,#10,t_ret
mov r6,#0
setb p2.7
clr tr0
ajmp start
t_ret:mov th0,#3ch
mov tl0,#0b0h
reti
end
请问该程序为什么第一次定时时间是正常,第二次再按p3.2启动就不正常呢?按复位键再启动就正常????????