《单片机原理与技术》课件第7章-中断_第1页
《单片机原理与技术》课件第7章-中断_第2页
《单片机原理与技术》课件第7章-中断_第3页
《单片机原理与技术》课件第7章-中断_第4页
《单片机原理与技术》课件第7章-中断_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章中断

80C51中的中断结构7.3

最简单且的中断情况

7.2引言7.1中断处理中需要考虑的一些问题7.47.1引言

7.1.1为什么要用中断中断的出现,会带来以下好处。(1)同步操作有了中断功能,就可以使CPU和外设同时工作。

(2)实现实时处理当计算机用于实时控制时,中断是一个十分重要的功能。现场的各个参数、信息,根据需要,可在任何时间发出中断请求,要求CPU处理;CPU一旦接收到中断请求,就可以马上响应(若中断是开放的话),加以处理。这样的及时处理在查询的工作方式下是做不到的。

(3)故障处理计算机在运行过程中,往往会出现事先预料不到的情况或出现一些故障,如电源掉电、存储出错、运算溢出等。计算机可以利用中断系统自行处理,而不必停机或报告工作人员。

7.1.2中断源通常中断源有以下几种。①一般的输入/输出设备,如键盘、行打印机等。②数据通道中断源,如磁盘、磁带等。

③实时时钟。在控制中,常要遇到时间控制,若用前面介绍的用CPU执行一段程序来实现延时的方法,则在这段时间内,CPU不能做别的工作,降低了CPU的利用率。

④故障源。

⑤为调试程序而设置的中断源。

7.1.3中断系统的功能(1)实现中断及返回(2)能实现优先权排队(3)高级中断源能中断低级的中断处理7.2最简单的中断情况

7.2.1CPU响应中断的条件(1)设置中断请求触发器(2)设置中断屏蔽触发器(3)中断是开放的

图7-1设置中断请求的情况

图7-2具有中断屏蔽的接口电路

图7-3中断响应流程图

7.2.2CPU对中断的响应(1)关中断(2)保留断点(3)保护现场

(4)给出中断入口,转入相应的中断服务程序(5)恢复现场(6)开中断与返回

图7-4中断响应、服务及返回流程图7.380C51中的中断结构

7.3.1中断启用

图7-5MCS-51中断源

图7-680C51中的IE(中断启用)寄存器

7.3.2中断优先权

图7-780C51中的IP(中断优先级)寄存器

7.3.3中断如何处理在操作中,所有中断标志在每个机器周期的S5P2期间被采样。在下一个机器周期期间查询采样。若找到一启用的中断的标志已设置,中断系统生成一LCALL至在程序存储器中的适当单元,至中断服务例程的LCALL的生成,由以下3个条件中的任一个阻断:

①相同的或更高优先级的中断已经在处理中;②当前(查询)的周期不是正在处理中的指令执行的最后周期;③在处理中的指令是RETI或任一写至IE或IP寄存器的指令。

图7-880C51中断控制系统

图7-9中断响应时序图

7.3.480C51中与中断相关的寄存器

表7-1 80C51中与中断功能相关的寄存器

1.定时器/计数器控制寄存器TCON位7位6位5位4位3位2位1位0TF1TR1TF0TR0IE1IT1IE0IT0

IT0:外部中断INT0触发方式选择位。可由用户用软件选择。

IT0=1:设定外部中断引脚信号为下降沿触发方式。

IT1:外部中断INT1触发方式选择位,其功能类似于IT0。

IE0:外部中断INT0触发有效标志位。

IE1:外部中断INT1触发有效标志位,其功能类似于IE0。

2.串行口控制寄存器SCON位7位6位5位4位3位2位1位0SM0SM1SM2RENTB8RB8TIRI

RI:串行口接收到一帧数据的中断标志位。

TI:串行口发送完一帧数据的中断标志位。

7.3.5外部中断

80C51有两条外部中断请求引线INT0与INT1。它们能由设置或清除在寄存器TCON中的IT0或IT1位,选择是由电平激活或跳变激活。

若ITx=0,外部中断x由在引脚上检测到低电平时请求中断。若ITx=1,外部中断是跳变触发的。在此方式,若在引脚连续采样,在一个周期显示为高而在下一周期显示为低,在TCON中的中断请求标志IEx设置。然后,标志位IEx请求中断。

7.3.6响应时间与电平反向并在每个机器周期的S5P2锁存至中断标志IE0与IE1。类似地,定时器2标志EXF2和串行端口标志RI与TI在S5P2设置。在下一机器周期前电路不实际查询值。

定时器0与定时器1标志为TF0与TF1,在定时器溢出周期的S5P2设置。然后其值在下一周期由电路查询。然而,定时器2标志TF2是在S2P2设置且在定时器溢出的同一周期内被查询。

若请求有效且响应的条件正确,至请求的服务例程的硬件子例程调用将是下一条要执行的指令。CALL自己需要两个周期。因此,在外部中断请求的激活与服务例程的第一条指令的执行开始之间,至少需要3个完整的机器周期。图7-9所示为中断响应时序。

若请求被前面所列的3个条件之一阻断,将会需要更长的响应时间。若相等的或更高优先级的中断已经在处理中,附加的等待时间明显地取决于其他中断服务例程的性质。

若在处理中的指令不是在最后的周期,附加的等待时间不会大于3个周期,因为最长的指令(MUL与DIV)只是4个周期。

若在处理的指令是RETI,或访问RI或TI,附加的等待时间不会多于5个周期(最多用一个周期完成正在处理中的指令,加上若指令是MUL或DIV完成下一条指令的4周期)。

因此,在单中断系统中,响应时间始终是大于3周期与小于9周期。

7.4中断处理中需要考虑的一些问题

1.中断向量安排

2.中断允许

3.中断请求

4.中断响应一种中断被响应的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论