单片机原理与应用第8章中断系统中断处理过程中断请求的撤销CPU响应某中断请求后,在中断返回前,应该撤消该中断请求,否则会引起另一次中断
MCS—51各中断源请求撤消的方法各不相同
定时中断请求的撤销2
脉冲方式外部中断请求的撤销3
电平方式外部中断请求的撤销4
串行中断软件撤销中断请求的撤销对于定时器T0或T1溢出中断,CPU在响应中断后,就用硬件清除了有关的中断请求标志TF0或TFl,即中断请求是自动撤除的,无需采取其他措施
定时中断请求的撤销对于边沿激活的外部中断,CPU在响应中断后,也是用硬件自动清除有关的中断请求标志IE0或IEl,无需采取其他措施
脉冲方式外部中断请求的撤销对电平方式的外部中断,中断标志的撤消是自动的,但中断请求信号的低电平可能继续存在,在以后机器周期采样时,又会把已清0的IE0或IE1重新置1,因为在硬件上CPU对INT0和INT1引脚的信号不能控制,所以这个问题要通过硬件,再配合软件来解决
电平触发外部中断请求的撤销电平方式外部中断请求的撤消电路方案之一:外部中断请求信号不直接加在INT0或INT1上,而是加在D触发器的CLK端
由于D端接地,当外部中断请求信号出现在CLK端时,INT0或INT1为低,发出中断请求
电平触发外部中断请求的撤销电平方式外部中断请求的撤消电路用P1
0接在触发器的S端作为应答线,当CPU响应中断后可使用如下两条指令:CLRP1
0SETBP1
0执行第一条指令使P1
0输出为“0”,其持续时间为2个机器周期,足以使D触发器置位,从而撤除中断请求
执行第二条指令使P1
0变为“1”,否则D触发器的S端始终有效,INT0端始终为“1”,无法再次申请中断
电平触发外部中断请求的撤销对于串行口中断,CPU响应中断后,没有用硬件清除TI和RI,而是靠软件来清除相应的标志
串行口中断软件撤销51单片机有2个外部中断请求输入