- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51单片机第五章_中断系统
* KX康芯科技 * 第五章 MCS-51中断系统 5.1 概 述 5.1.1 中断的定义和作用 中断是指计算机暂时停止原程序执行转而为外部设备服务(执行 中断服务程序),并在服务完后自动返回原程序执行的过程。 中断由中断源产生,中断源在需要时可以向CPU提出“中断请求”。 “中断请求”通常是一种电信号,CPU一旦对这个电信号进行检测和 响应便可自动转入该中断源的中断服务程序执行,并在执行完后自动 返回原程序继续执行,而且中断源不同中断服务程序的功能也不同。 因此,中断又可以定义为CPU自动执行中断服务程序并返回原程序执 行的过程。 中断的作用: 可以提高CPU的工作效率 可以提高实时数据的处理时效 5.1.2 中断源 中断源是指引起中断原因的设备或部件,或发出中断请求信号的源泉。 通常中断源有以下几种: 1. 外部设备中断源 2.控制对象中断源 3. 故障中断源 4. 定时脉冲中断源 5.1.3 中断系统功能 进行中断优先权排队 实现中断嵌套 自动响应中断 实现中断返回 5.2 MCS-51的中断系统 MCS-51的中断源和中断标志 MCS-51对中断请求的控制和响应 中断响应时间、中断撤除和中断系统初始化 5.2.1 MCS-51的中断源和中断标志 1. 中断源 (1)外部中断源 (2)定时器溢出中断源 (3)串行口中断源 :外部中断请求输入线1 :外部中断请求输入线0 T0溢出中断 T1溢出中断 2. 中断标志 8031在S5P2时检测(或接收)外部(或内部)中断源发来的中断请求信号后先使相应中断标志位置位,然后便在下个机器周期检测这些中断标志位状态,以决定是否响应该中断。 8031中断标志位集中安排在定时器控制寄存器TCON和串行口控制寄存器SCON中。 (1)定时器控制寄存器TCON 定时器控制寄存器各位定义如下图所示。各位含义如下: (2)串行口控制寄存器SCON 串行口控制寄存器 SCON各位定义如下图所示。 5.2.2 MCS-51对中断请求的控制 1. 对中断允许的控制 MCS-51没有专门的开中断和关中断指令,中断的开放和关闭是通过对中断允许寄存器IE控制实现的。 中断允许寄存器IE的单元地址是A8H,可位寻址。 例如:可以采用如下字节传送指令来开放定时器T1的溢出中断: MOV IE,# 88H 若改用位寻址指令,则需采用如下两条指令: SETB EA SETB ET1 注意:在MCS-51复位时,IE各位被复位成“0”状态,CPU因此而处于关闭所有中断状态。所以,在MCS-51复位以后,用户必须通过主程序中的指令来开放所需中断,以便相应中断请求来到时为CPU所响应。 2.对中断优先级的控制 MCS-51对中断优先级的控制比较简单,所有中断都可设定为高低两个中断优先级,以便CPU对所有中断实现两级中断嵌套。在响应中断时,CPU先响应高优先级中断,然后响应低优先级中断。每个中断的中断优先级都是可以通过程序来设定的,由中断优先级寄存器IP统一管理 。 中断优先级寄存器IP是一个8位的特殊功能寄存器,字节地址为B8H。复位时,IP=XXX00000B,可位寻址。 中断优先级寄存器IP: 问题:51单片机共有五个中断源,但中断优先级只有高低两级。因此,8031在工作过程中必然会有两个或两个以上中断源处于同一中断优先级(要么为高中断优先级,要么为低中断优先级)。若出现这种情况,51单片机该如何来响应中断呢? MCS-51内部中断系统对各中断源的中断优先级有一个统一规定,在出现同级中断请求时按以下顺序来响应中断: 51单片机同级中断源中断优先级的顺序 例如:若 和 同时设定为高中断优先级(PX0=1和PX1=1),其余中断设定为低中断优先级(PT0=0、PT1=0和 PS=0),则当 和 同时请求中断时,MCS-51就会在先处理完 上中断请求后自动转去处理 上中断请求。 MCS-51有了这个中断优先级的顺序功能就可同时处理两个或两个以上中断源的中断请求问题了。 阻止中断马上响应的三个条件: 1. CPU正在处理相同的或更高优先级的中断。 2. 现行的机器周期不是所执行指令的最后一个机器周期。 3. 正在执行的指令是RETI或访问IE、IP的指令。 如果存在上述条件之一,CPU将丢弃中断查询结果。 5.2.3 MCS-51对中断的响应 在满足下列三个条件之一
文档评论(0)