1、中断定义
中断:指当出现需要时,CPU 暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由 CPU 立即处理的情况。此时,CPU 暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。
中断是由于软件的或硬件的信号,使得 CPU 放弃当前的任务,转而去执行另一段子程序。可见中断是一种可以人为参与(软件)或者硬件自动完成的,使CPU发生的一种程序跳转。
程序运行过程中,系统外部、内部或者程序本身若出现紧急事件,处理机立即中止当前程序的运行,自动转入相应的处理程序(中断服务程序),待处理完后,再返回原来的程序运行,这个过程称为程序中断。
STM8中断处理过程:
按照事件发生的顺序,中断过程包括:
①中断源发出中断请求;
②判断当前处理机是否允许中断和该中断源是否被屏蔽;
③优先权排队;
④处理机立即停止当前程序,保护断点地址和处理机当前状态,转入相应的中断服务程序;
⑤执行中断服务程序;
⑥恢复被保护的状态,执行“中断返回”指令回到被中断的程序或转入其他程