|
最近玩单片机的时候谢了一个小代码,但是实在不知道出错在哪里。代码如下
ORG 0000H ;程序从000H地址开始运行
LJMP MAIN ;跳转到 MAIN程序
ORG 000BH
AJMP IT0P
ORG 0030H ;MAIN程序从0100H开始运行
MAIN:mov sp,#70h
LIGHT:
SETB P2.0 ;
ACALL del
CPL p2.0
ACALL del
AJMP LIGHT
del: MOV tmod,#01h
MOV b,#0ah
MOV tl0,#0b9h
MOV th0,#03ch
SETB ea
SETB et0
setb tr0
HERE: SJMP HERE
BACK: RET
IT0P: MOV tl0,#0b9h
MOV th0,#03ch
DJNZ b, loop
clr tf0
cpl tr0
dec sp
dec sp
AJMP BACK
loop: RETI
END
程序能点亮第一次灯,但是到第二次的时候就一直停在了HERE: SJMP HERE处,检查TF0已经置1,但是就是不执行这个中断,这是为什么啊 ,请教了! 在此先谢谢各位
[ 本帖最后由 qiumengjie08100 于 2011-9-8 16:15 编辑 ]
|
|