求助:初学单片机,各位高手来看看这个程序有什么问题

2019-07-18 10:28发布

初学单片机,有一问题请教,各位高手来看看这个程序有什么问题,在protues仿真过程中,中断为什么只能触发一次
这是我写的程序
ORG 0000H
LJMP MAIN
ORG 0003H
CPL A
MOV P1,A
LCALL DELAY
REti      ;中断程序
ORG 0100H
DELAY:MOV R5,#20
LOOP2:MOV R3,#200
LOOP:MOV R4,#250
LOOP1:DJNZ R4,LOOP1
      DJNZ R3,LOOP
      DJNZ R5,LOOP2;延时程序
MAIN:MOV IE,#0FFH;中断开启
     SETB IT0
     SETB IT1            ;下跳沿触发
     MOV A,#55H
     MOV P1,A
     LCALL DELAY
     SJMP $
END
这是protues的仿真电路
2~1.jpg
开始仿真
3~2.jpg
按下中断开关后:
4.jpg
一段时间后,从中断状态返回,结果和第一张图一样(下图)
但这回再按复位开关后,结果也都不变,不会再去执行服务程序,各位大大,看一下到底哪儿出问题了,为什么只有第一次中断正确





1~2.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。