维基百科条目声明:
在计算机系统编程中,中断处理程序(也称为中断服务程序或ISR)是微控制器固件,操作系统或设备驱动程序中的回调函数,其执行由接收中断触发。 / p>
ISR如何成为回调。存储在堆栈本身的PC值是回调函数吗?
即,ISR将被中断的函数调回。因此,被中断的函数是回调。
答案 0 :(得分:3)
当中断发生时,一些设置代码将ISR功能的地址存储在中断向量表中,以便说明" 在此地址回叫"。
要明确的是,ISR本身就是被称为“回复”的功能。被中断的代码不是回调;它只是被打断了#34;然后"恢复"。
答案 1 :(得分:2)
ISR调用中断的函数
不,它没有,程序计数器寄存器像返回指令那样从堆栈恢复。 ISR是一个'回调',因为它通过地址(存储在中断向量表中)被称为,而不是直接。
答案 2 :(得分:1)
微控制器在其闪存中的已知位置具有中断向量表。该表包含所有ISR的地址(复位中断,定时器中断,GPIO中断等)。当中断使能时,在特定触发器上调用ISR功能:应用程序中断,程序计数器和处理器寄存器保存在堆栈中,并调用中断代码。中断代码完成后,应用程序将恢复,应用程序将恢复。