中断含义
单片机的中断是由单片机片内的中断系统来实现的。当中断请求源(简称中断源)发出中断请求时,如果中断请求被允许的话,单片机暂时中止当前正在执行的主程序,转到中断服务程序处理中断服务请求,处理完中断服务请求后,再回到原来被中止的程序之处(断点),继续执行被中断的主程序。51单片机有两个外部中断,两个定时器/计数器,两个外部中断分别是int0,int1。定时器/计数器分别是t0,t1,还有一个串口中断TI/RI,加起来有五个中断。它们在硬件上的排列顺序是INT0,T0,INT1,T1,TI/RI,这5个中断源的中断顺序号依次就是interrupt 后面的0,1,2,3,4。其中定时器可以选择工作方式,因为我们使用定时器的方式不一而足,有的程序会用来计时,有的程序用来计数,根据程序要求设置工作方式各取所需。 中断的概念
CPU在处理A事件的时候,发生了B事件,请求CPU迅速去处理。(中断产生)
CPU暂时中断当前的工作,转去处理B事件。(中断响应和中断服务)
待CPU将B事件处理完毕后,再回到原来A事件中断的地方继续处理A事件。(中断返回)
这个过程,就叫做中断。 中断系统的结构 80C51的中断系统有5个中断源(8052有6个),2个优先级,可实现二级中断嵌套。 1.外部中断0(P3.2引脚)可由IT0选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0置1,向CPU申请中断; 2.外部中断1(P3.3引脚)可由IT1选择其为低电平有效还是下降沿有效。当CPU检测到P3.3引脚上出现有效的中断信号时,中断标志IE1置1,向CPU申请中断; 3.TF0——片内定时/计数器T0溢出中断请求标志。当定时/计数器T0发生溢出时,置位TF0,并向CPU申请中断。 4.TF1——片内定时/计数器T1溢出中断请求标志。当定时/计数器T1发生溢出时,置位TF1,并向CPU申请中断。 5.RI或TI——串行口中断请求标志。当串行口接收完一帧串行数 据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。中断处理过程中断优先级控制——IP 中断请求标志
IT0(TCON.0),外部中断0触发方式控制位。 当IT0=0时,为电平触发方式。 当IT0=1时,为边沿触发方式(下降沿有效)。 IE0(TCON.1),外部中断0中断请求标志位。 IT1(TCON.2),外部中断1触发方式控制位。 IE1(TCON.3),外部中断1中断请求标志位。 TF0(TCON.5),定时器/计数器T0溢出中断请求标志位 TF1(TCON.7),定时器/计数器T1溢出中断请求标志位 中断允许控制——IE CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。
EXO(IE.0),外部中断0允许位; ETO(IE.1),定时/计数器TO中断允许位; EX1(IE.2),外部中断0允许位; ET1(IE.3),定时/计数器T1中断允许位; ES(IE.4),串行口中断允许位; EA(IE.7),CPU中断允许(总允许)位。 中断优先级控制——IP 80C51单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器IP中的相应位的状态来规定的。
PXO(IP.0),外部中断0优先级设定位; PTO(IP.1),定时/计数器TO优先级设定位; PX1(IP.2),外部中断0优先级设定位; PT1(IP.3),定时/计数器T1优先级设定位; PS (IP.4),串行口优先级设定位; PT2 (IP.5),定时/计数器T2优先级设定位。
|