的确,这种程序没有什么实用的意义,从原理上分析,更不会有人这么做的。你非要这么做,也没有人管,但不符合逻辑。既然采用中断的方式,就是为了充分利用单片机的时间。像你说的这个问题一种解决的办法是延长中断的时间,中断的时间要长于执行中断程序的时间,因每次中断的执行任务需要30ms,而中断时间是10ms,这根本就不能完成中断的任务吗,当然了,中断时,没有从中断返回,就不会再响应同一个中断的。因此,从中断返回后,已经少响应中断两次了,也就是少执行两次中断任务。可是中断一次执行中断任务就却需要3倍的时间,你自己想想,这么做合乎逻辑吗,所以,根本就不会有人这么做,只有瞎想才能这么想的。
在中断程序中,不退出,又出现了本中断的申请,
单片机,是不会再一次进入该中断程序的。
只有高级的中断,才能中断本次中断。
当退出本次中断后,回到主程序执行了一条指令,在处于主程序期间,单片机才会顾及已经出现的申请。
但是,如果,该申请标志,已经消失,单片机就不会发生中断。
这个过程,有些书,讲的很详细。有些书,就没有讲。
中断只有在无同级或更高级中断发生时才能进入,中断会延迟,为什么要在中断里执行这么长的程序,而且中断时间选的这么短,这样做单片机做不了其他的事了。
那是当然的,没有RETI也就是中断返回,是不会继续响应中断的。
中断标志位会置位,但会继续执行完程序再响应