电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>嵌入式开发>一起学习中断处理程序资料下载

一起学习中断处理程序资料下载

2021-04-04 | pdf | 663.97KB | 次下载 | 免费

资料介绍

今天开始我们正式进入中级阶段的学习:中断系统。 什么是中断 首先来讲一下什么是中断:当程序执行到某个地方时,发生了特殊的事件或请求,CPU暂停执行当前程序,转而去处理上述事件或请求,处理完毕后在返回断点继续执行当前程序。 用我们生活中的事情来举个例子。假如你正在吃饭(当前程序),突然接到了快递员的电话让你现在下去拿快递(中断请求),你回答:“好的”(中断响应),然后暂停吃饭下去拿快递(中断处理),拿完快递上来继续吃饭(执行完中断返回执行当前程序)。 图1 在我们上课老师讲的时候,很多老师都会说51单片机共有5个中断源分别是:外部中断0、定时器溢出中断0、外部中断1、定时器溢出中断1、串口中断。 图2 仔细观察单片机芯片的IO口时就会发现,P3端口是有第二功能的。 我们来看一下与中断有关的P3端口各引脚第二功能的定义: P3^0:RXD串行口输入 P3^1:TXD串行口输出 P3^2:INT0外部中断0输入 P3^3:INT1外部中断1输入 P3^4:T0定时计数器0外部输入 P3^5:T1定时计数器1外部输入 其中P3^0、P3^1引脚用来与外部设备进行串口通信;P3^2、P3^3引脚用于接收外部电平变化来产生外部中断,P3^4、P3^5引脚用于接收外部脉冲来计数。 外部中断 接下来我们看一下中断系统的内部结构图,如图3所示。 图3 今天我们主要结合这个框图讲解一下外部中断0、外部中断1。 01、IE寄存器 我们先来看图中红色框中的IE寄存器,见图3。 图4 IE寄存器主管中断的允许与禁止,图3中IE寄存器画成了一个个的开关,也就是说我们要开启需要的中断时,就要把对应的开关打开。那么,假设我们要开启外部中断0,需要打开哪些开关呢?图中INT0通道中IE寄存机共有两个开关,分别是“EX0”(这个是数字0,可别看成字母O了)、“EA”,都是需要打开的。 好的,我们来看图4的介绍中,“EA”为总中断允许控制位,EA=0的时候会屏蔽掉所有的中断请求,所以要配置“EA=1”;EX0为外部中断0的中断允许位,同样的要配置“EX0=1”。这样一来,外部中断0的IE寄存器就配置好了。同理,外部中断1也是这样配置哦。 02、TCON寄存器 接下来我们看蓝色框里的TCON寄存器,见图3。 图5 还是先以外部中断0(INT0)为例,在图3的通道中,我们可以看到,TCON寄存器中与INT0有关的共有两位,分别是“IT0”、“IE0”。再看图5中的介绍可知,IT0用来控制INT0的触发方式,这里我们一般使用下降沿触发方式,所以配置成:“IT0=1”。 IE0则是INT0中断的标志位,当产生中断后,IE0将被自动置1,当CPU相应了中断以后,IE0又会被硬件置1,所以说,这一位我们不需要配置。外部中断1也是一样的。 03、IP寄存器 接下来是绿色框里的“IP”寄存器,见图3. 在这之前,先来讲一下中断优先级的概念。每个中断都有不同的优先级,当两个中断同时触发时,优先级高的先执行,执行完以后再执行优先级低的中断,所以说:优先级高的中断可以中断优先级低的中断,而高优先级中断不可被低优先级或者同级优先级中断打断。 图6 PX0:外部中断0优先级设定 PT0:定时计数器0中断优先级设定
下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1TC358743XBG评估板参考手册
  2. 1.36 MB  |  330次下载  |  免费
  3. 2开关电源基础知识
  4. 5.73 MB  |  6次下载  |  免费
  5. 3100W短波放大电路图
  6. 0.05 MB  |  4次下载  |  3 积分
  7. 4嵌入式linux-聊天程序设计
  8. 0.60 MB  |  3次下载  |  免费
  9. 5基于FPGA的光纤通信系统的设计与实现
  10. 0.61 MB  |  2次下载  |  免费
  11. 6基于FPGA的C8051F单片机开发板设计
  12. 0.70 MB  |  2次下载  |  免费
  13. 751单片机窗帘控制器仿真程序
  14. 1.93 MB  |  2次下载  |  免费
  15. 8基于51单片机的RGB调色灯程序仿真
  16. 0.86 MB  |  2次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33564次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21548次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6653次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537796次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420026次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191185次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183278次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费