中断处理程序是否有超时?

Does an interrupt handler have a timeout?

测试使用中断的代码,我用 while(1); 强制尝试保留在中断处理程序中,但我看到中断处理程序离开并 returns 到 main,所以我假设它有某种超时。如果是这样,它是 ISR 特有的,还是中断的标准功能?

这不是中断的标准功能。你没有说你使用的是什么平台,但一般来说,中断处理程序应该只做必要的事情,return。花在handler上的时间越少越好。

您的程序可能在某处有看门狗定时器,当处理时间不足(因为 ISR 挂起)时,定时器会触发并退出您的程序。