- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8051单片机地中断系统
第6章 8051单片机的中断系统
6.1 微型计算机中断技术概
6.1.1 中断的概念
1.中断及中断技术的特点 计算机在执行某一程序的过程中,由于计算机系统之外的某种原因,有必要尽快地中止当前程序的运行,而去执行相应的处理程序,待处理程序结束后,再返回来继续执行被中止了的那个程序。这种某一程序在执行过程中由于外界的原因,中间被打断的情况就称为“中断”。“中断”类似于程序设计中的调用子程序,区别在于这些外部原因的发生是随机的,而子程序调用是程序设计人员事先安排好的。能够打断当前程序的外部事件,被称为中断源。中断属于一种对事件的实时处理过程,中断源可能随时迫使CPU停止当前正在执行的工作,转而去处理中断源指示的另一项工作,待后者完成后,再返回原来工作的“断点”处,继续原来的工作。
一个计算机一般具有多个中断源,这就存在中断优先权和中断嵌套的问题。例如,一个人在读书时如果接了电话并且正在通话时,又有人敲门,由于敲门的优先权更高,这个人又“响应”这个敲门的中断申请,暂停通话,去与敲门人交谈;交谈完毕,接着原来的话茬继续通话,直到通话完毕,再返回书桌前继续看书。这里,敲门的中断源就比电话的中断源优先权高,因此,出现了中断嵌套,即高级优先权的中断源可以打断低级中断优先权的中断服务程序,而去执行高级中断源的中断处理,直至该处理程序完毕,再返回接着执行低级中断源的中断服务程序,直至这个处理程序完毕,最后返回主程序。
计算机响应中断的条件是,计算机的CPU是处于开中断状态的,同时只能在一条指令执行完毕才能响应中断请求。
2.中断功能 利用中断技术,使计算机能够完成更多的功能。
(1)可实现高速CPU
(2) 可实现实时处理
(3) 实现故障的紧急处理
(4)便于人机联系。 总之,随着计算机硬件软件技术的发展,中断技术也在不断丰富,所以中断功能已经成为评价计算机系统的整体性能的一项重要指标。
6.1.2中断处理过程
CPU响应中断源的中断请求后,就转去进行中断处理。不同的中断源,其中断处理内容可能不同,但其主要内容及顺序都如图6-1所示。
图6-1 中断处理流程
从图6-1可以看到中断处理的过程,下面做几点补充说明:
1. 保护现场与恢复现场 为了使中断服务程序的执行不破坏CPU中寄存器或存储单元的原有内容,以免在中断返回后影响主程序的运行,因此,要把CPU中有关寄存器或存储单元的内容推入堆栈中保护起来,这就是所谓保护现场。而在中断服务程序结束时和返回主程序之前,则需要把保护起来的那些现场内容从堆栈中弹出,以便恢复寄存器或存储单元原有的内容,这就是恢复现场。注意一定要按先进后出的原则进行推入和弹出堆栈。
2. 开中断与关中断 在中断处理正在进行的过程中,可能又有新的中断请求到来,一般说来,为防止这种高于当前优先级的中断请求打断当前的中断服务程序的执行,CPU响应中断后应关断很多CPU是自动关中断的,但51单片机不是自动关闭的,需要用软件指令关闭,而在编写保护现场和恢复现场的程序时,也应在关闭中断后进行,以免使保护现场和恢复现场的工作不被干扰,这样,就可屏蔽其他中断请求了。如果要想响应更高级的中断源的中断请求.那么应在现场保护之后,将CPU处于开中断的状态,这样就使系统具有中断嵌套的功能。对于不同的CPU, 开中断和关中断的方法有所不同,有关51单片机的开中断和关中断的办法将在下节叙述。
3.中断服务 中断服务是中断处理程序的主要内容,将根据中断功能去编写,以满足用户的需要。复杂的中断服务程序也可以用子程序形式。
4.中断返回 中断返回是把当前运行的中断服务程序转回到被中断请求中断的主程序上来。中断返回指令与子程序返回不同,用专用的中断返回指令RETI来完成。因此,这条指令是中断服务程序的最后一条指令;另外,开中断后,必须运行一条指令后才有响应中断的可能性,所以,后面紧跟一条RETI指令,在执行完RETI指令前不可能响应新的中断申请。
6.2 8051单片机的中断控制
由于单片机的结构和功能有限,中断系统不算复杂。但从实际应用的角度来看,51单片机的中断系统已足够。下面针对51单片机的中断系统做详细介绍。
6.2.1中断源与中断标志位
8051型单片机提供了5个中断源:两个外部中断源和三个内部中断源每一个中断源都有一个中断申请标志,但串行口占两个中断标志位,一共六个中断标志,表-1给出了它们的名称。
表6-1 中断源和中断申请标志
分 类 中断源名称 中断申请标志 触发方式 中断入口地址 外部中断 外部中断0 IE0(TCON.1) INT0(P3.2)引脚上的低电平/下降沿引起的中断 0003H 内部中断 T0定时器/计数器0中断 IF0(TCON.5) T0定时器/计数器溢出后引起的中
原创力文档


文档评论(0)