普中51单片机学习(十四)

中断系统

中断的概念

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

中断系统结构

5个中断源,两个优先级,可以实现二级中断嵌套。

中断允许控制

  • EX0(IE.0),外部中断0允许位;
  • ET0(IE.1),定时/计数器T0中断允许位;
  • EX1(IE.2),外部中断0允许位;
  • ET1(IE.3),定时/计数器T1中断允许位;
  • ES(IE.4),串行口中断允许位;
  • EA (IE.7), CPU中断允许(总允许)位

中断请求标志

  • 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溢出中断请求标志位。


  • CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。
  • 正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。
  • 正在进行的低优先级中断服务,能被高优先级中断请求所中断。

中断处理过程

中断响应条件

  • 中断源有中断请求;
  • 此中断源的中断允许位为1;
  • CPU开中断(即EA=1)。

以上三条同时满足时,CPU才有可能响应中断。

相关推荐
传奇开心果编程38 分钟前
【xilem0.4基础语法学与练】第48课 lists组件官方示例代码深度解析
学习·rust·前端框架
传奇开心果编程4 小时前
【Rust入门知识点学与练】第24课:Trait 基础
开发语言·学习·rust
潜心一志9 小时前
HALCON软件——基本架构,算子参数
学习·计算机视觉
爱吃苹果的日记本10 小时前
数据结构第三课(时间复杂度)
数据结构·学习
糖糖单片机设计12 小时前
基于 STM32 的公交车定位与报站系统
stm32·单片机·嵌入式硬件
祖力5512 小时前
快速学会51单片机基础
单片机·嵌入式硬件·51单片机
泡泡鱼(敲代码中)13 小时前
MySQL基础学习笔记:从数据模型到DDL全掌握
开发语言·数据库·笔记·学习·mysql
fanged14 小时前
Agent的Skills(TODO)
学习
是隼人14 小时前
buuctf-pwn picoctf_2018_shellcode(ret2shellcode)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
m4Rk_15 小时前
【论文阅读】Agent 记忆机制(69):STITCH——用上下文意图解决“语义相关但情境错误”的记忆检索
论文阅读·人工智能·学习·开源·github