- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
其各位名称及作用如下: PT2(IP.5) ——T2中断优先级选择位(仅AT89S52,/C52或类似型号单片有)。 当PT2=l时,设置定时器T2为高优先级中断; 当PT2=0时,设置定时器T2为低优先级中断。 PS(IP.4) ——串行口中断优先级选择位。 当PS=1时,设定串行口为扁优先级巾断; 当PS=0时,设定串行日为低优先级中断。 PT1( IP. 3) ——Tl中断优先级选择位。 当PT1=1时,设定定时器T1为高优先级中断; 当PT1=0时,设定定时嚣T1为低优先级中断。 PX1 (IP.2) ——外部中断1中断优先级选择位。 当PX1=1时,设定外部中断1为高优先级中断; 当PX1=0时,设定外部中断l为低优先级中断。 PT0(IP.1) ——T0中断优先级选择位。 当PT0=1时,设定定时器T0为高优先级中断; 当PT0=0时,设定定时器T0为低优先级中断。 PX0(IP.0) ——外部中断0中断优先级选择位。 当PX0=l时,设定外部中断0为高优先级中断; 当PX0=0时,设定外部中斯0为低优先级中断。 当系统复位后,IP全部清0,将所有中断源设置为低优先级中断。 如果几个相同优先级的中断源,同时向CPU申请中断,CPU通过内部硬件查询逻辑按自然优先级顺序确定响应哪个中断请求。其自然忧先级由硬件形成,排列如表5.2所列。 表5.2 各中断源及其自然优先级 最高级 序号 中断源 自然优先级 1 外部中断0 最低级 2 定时器T0中断 3 外部中断1 4 定时器T1中断 5 串行口中断 这种排列顺序在实际应用中很方便、合理。如果重新设置了优先级,则顺序查询逻辑电路将会相应改变排队顺序。例如:如果给IP中设置的优先级控制字为09H,则PT1和PX0均为高优先级中断,但当这2个中断源同时发出中断申请时,CPU将首先响应自然优先级较高的PX0的中断申请。 例如, 某软件中对寄存器IE、 IP设置如下: MOV IE, #8FH MOV IP, #06H 则此时该系统中:CPU中断允许;允许外部中断0、外部中断1、 定时器/计数器0、 定时器/计数器1提出的中断申请; 允许中断源的中断优先次序为: 定时器/计数器 0 外部中断1 外部中断0 定时器/计数器1。 中断过程 中断处理过程可分为3个阶段,即中断响应、中断处理和中断返回。所有计算机的中断处理都有这样3个阶段,但不同的计算机由于中断系统的硬件结构不完全相同,因而中断响应的方式有所不同。在此仅以51系列单片机为例来介绍中断处理过程。 1.中断响应 中断响应是在满足CPU的中断响应条件之后,CPU对中断源中断请求的回答。在这一阶段,CPU要完成执行中断服务以前的所有准备工作。这些准备工作包括保护断点和把程序转向中断服务程序的入口地址(通常称为“矢量地址”)。 计算机在运行时,并不是任何时刻都会去响应中断请求,而是在中断响应条件满足之后才会响应。 (1) CPU的中断响应条件 CPU响应中断的条件主要有以下几点: 有中断源发出中断请求; 中断总允许位EA=I,即CPU允许所有中断源申请中断; 申请中断的中断源的中断允许位为1,即此中断源可以向CPU申请中断。 以上是CPU响应中断的基本条件。若满足,CPU一般会响应中断,但如果有下列任何一种情况存在,则中断响应就会受到阻断。 CPU正在执行一个同级或更高级的中断服务程序; 当前的机器周期不足正在执行指令的最后一个周期,即正在执行的指令完成前,任何中断请求都得不到响应; 正在执行的指令是返回( RETI)指令或者对专用寄存器IE、IP进行读/写的指令,此时,在执行RETI或者读/写IE或IP之后,不会马上响应中断请求。至少要再执行一条其他指令,才会响应中断。 存在上述任何一种情况,CPU都不会马上响应中断。此时将该中断请求锁存在对应中断源的中断标志位中,然后在下一个机器周期再按顺序查询。 在每个机器周期的S5P2期间,CPU对各中断源采样,并设置相应的中断标志位。CPU在下一个机器周期S6期间接优先级顺序查询各中断标志,如查询到某个中断标志为1,将在再下一个机器周期S1期间按优先级进行中断处理。中断查询在每个机器周期中重复执行,如果中断响应的基本条件已满足,但由于上述原因之一而未被及时响应,待封锁中断的条件撤销之后,由于中断标志还存在,故仍会响应。 (2)中断响应过程 如果中断响应条件满足,且不存在中断阻断的情况,则CPU将响应中断。 在51单片机的中断系统中有2个优先级状态触发器,即“高优先级状态”触发器和“低优先级状态”触发器。这2个触发器是由硬件自动管理的,用户不能对其编程。当CPU响应中断时,它首先使优先级状态触发器置位,这样可以阻断同级或低级的中断;
文档评论(0)