51单片机中断详解(上)

2019-04-15 12:49发布

一.中断的概念

  1. 中断发生
    CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理
  2. 中断响应和中断服务
    CPU暂时中断当前的工作,转去处理事件B
  3. 中断返回
    待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A
    这一过程称为中断

二.中断过程示意图

这里写图片描述

三.MCS51中断系统的结构

MCS51的中断系统有5个中断源(8052有 6个) ,2个优先级,可实现二级中断嵌套 中断编号 中断名 中断源 0 外部中断0 IE0(P3.2) 1 定时器0溢出中断 TF0 2 外部中断1 IE1(P3.3) 3 定时器1溢出中断 TF1 4 串行口中断 RI

四.中断寄存器

单片机有10个寄存器主要与中断程序的书写控制有关
  1. 中断允许控制寄存器IE
  2. 定时器控制寄存器TCON
  3. 串口控制寄存器SCON
  4. 中断优先控制寄存器IP
  5. 定时器工作方式控制寄存器TMOD
  6. 定时器初值赋予寄存器(TH0/TH1,TL0/TL1)

五.部分寄存器详解

1.中断允许控制寄存器(IE)
这里写图片描述
EX0:外部中断0允许位;
ET0:定时/计数器T0中断允许位;
EX1:外部中断1允许位;
ET1:定时/计数器T1中断允许位;
ES :串行口中断允许位;
EA :CPU中断允许(总允许)位。
2.定时器/计数器控制寄存器控制寄存器(TCON)
这里写图片描述
IT0:外部中断0触发方式控制位
当IT0=0时,为电平触发方式(低电平有效)
当IT0=1时,为边沿触发方式(下降沿有效)
IE0:外部中断0中断请求标志位
IT1:外部中断1触发方式控制位
IE1:外部中断1中断请求标志位
TF0:定时/计数器T0溢出中断请求标志位
TF1:定时/计数器T1溢出中断请求标志位
3.串行口控制寄存器(SCON)
这里写图片描述
RI:串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置位RI。注意,RI必须由软件清除。
TI:串行口发送中断标志位。当CPU将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬件置位TI。CPU响应中断时,不能自动清除TI,TI必须由软件清除。
4.中断优先级控制寄存器(IP)
这里写图片描述
PX0:外部中断0优先级设定位
PT0:定时/计数器T0优先级设定位
PX1:外部中断0优先级设定位
PT1:定时/计数器T1优先级设定位
PS :串行口优先级设定位
PT2:定时/计数器T2优先级设定位

六.中断响应条件

  1. 中断源有中断请求
  2. 此中断源的中断允许位为1
  3. 开中断(即EA=1)