2022年单片机基础6.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

单片机基础(第3版)

;第5章80C51单片机的中断与定时;5.1中断概述;5.280C51单片机的中断系统; 中断源 中断向量

外部中断0 0003H

定时器0溢出 000BH

外部中断1 0013H

定时器1溢出 001BH

串行发送中断 0023H

串行接收中断 0023H

;5.2.2中断控制;2.定时器控制寄存器TCON

TF0和TF1:定时器(T0和T1)溢出标志位。硬件置1,并自动产生定时中断请求。也可作为状态位供查询。

IE0和IE1:外部中断请求标志位。中断到来时由硬件置1,请求中断;进入中断服务后硬件清0。

IT0和IT1:外部中断触发方式控制位,靠软件来置位或清除,来控制触发类型。=1时,下降沿触发;=0时,低电平触发。;3.串行口控制寄存器SCON

用于串行数据通信控制的寄存器。有2位与中断有关。

TI:串行发送中断请求标志位。最后一位数据位被发送完后,TI由硬件置位,软件查询时TI可作为状态位使用。

RI:串行接收中断请求标志位,接收数据过程中,当采样到最后一个数据位有效时,RI由硬件置位,软件查询时RI可作为状态位使用。必须由软件清0。

;4.中断优先级控制寄存器IP

各中断的优先级通过中断优先级控制寄存器IP设定。

PX0:外部中断0优先级设定位,=1时为高级

PT0:定时器0中断优先级设定位,=1时为高级。

PX1:外部中断1优先级设定位,=1时为高级。

PT1:定时器1中断优先级设定位,=1时为高级。

PS:串口中断优先级设定位,=1时为高级。;5.2.3中断优先级控制;2.中断优先原则在中断响应时的体现;;3.中断嵌套

中断优先级的作用不仅体现在中断响应时,而且也体现在中断服务过程中,即允许把正在进行的中断服务暂停下来,而转去进行优先级高的中断服务,这就是中断嵌套。

中断可以多层嵌套。即一个正在执行的中断服务可以被另一个优先级高的中断请求所打断,使CPU转去为新的中断服务;而新的中断服务又可以被优先级更高的中断所打断,形成又一层嵌套。这样的嵌套还可以继续多层,如同多级子程序调用一样。80C51因为只具有两个优先级,所以中断嵌套只能一层,其原则是:

高优先级中断请求可以打断低优先级的中断服务,进行中断嵌套;

同优先级的中断不能嵌套;

低优先级中断请求不能对高优先级的中断进行嵌套。

在80C51中,为了实现中断嵌套,除需使用中断优先级寄存器(IP)定义高、低两个优先等级外,还得有两个优先级触发器的配合。

;2.中断查询

中断查询是查看是否有中断请求发生并确定是哪一个中断源的中断请求。

中断查询操作是由CPU逐个检测定时器控制寄存器TCON和串行控制寄存器SCON中各中断标志位的状态而实现的。所有中断请求最终都要汇集到这两个寄存器中。

80C51单片机是在每一个机器周期的最后一个状态S6进行中断查询,查询按优先级顺序进行。如果查询到有标志位为1,则表明有中断请求发生,接着就从相邻的下一个机器周期的S1状态开始进行中断响应。;3.中断响应

中断响应就是对中断源提出中断请求的接受。在一次中断查询之后,当发现有中断请求时,紧接着就进行中断响应。

中断响应的主要内容是由硬件自动生成一条长调用指令,指令格式为“LCALLaddr16”。这里的addr16就是程序存储器中断区中相应中断的入口地址,在80C51单片机中,这些入口地址已由系统设定。

中断响应是有条件的,并不是查询到的中断请求都能立即响应。当存在下列情况之一时,中断响应将被封锁:

①CPU正处在为一个同级或高级的中断服务中。因为当一个中断被响应时,要把对应的优先级触发器置位,也即封锁了低级和同级中断的响应。

②查询中断请求的机器周期不是当前指令的最后一个机器周期。作此限制的目的在于使当前指令执行完毕后,才能进行中断响应,以确保指令的完整执行。

③当前指令是返回指令(RET,RETI)或访问IE、IP的指令。因为80C51中断系统规定,在执行完这些指令之后,还应再继续执行一条指令,然后才能响应中断。;4.中断响应的快慢

如果中断查询的机器周期恰好是指令的最后一个机器周期,则最快只需3个机器周期就可以转向中断服务程序的入口。其中查询占1个机器周期,在这个机器周期结束后中断即被响应,生成LCALL指令。执行这条长调用指令需要2个机器周期。

如果中断查询刚好是开始执行RET、RETI或访问IE、IP的指令,则需把当前指令执行完再继续执行一条指令后,才能进行中断响应。这些指令中最长执行时间需2个机器周期。而如果接着再执行的指令恰好是MUL(乘)或DIV(除)指令,则又需4个机器周期。再加上执行长调用指令LCALL所需的2个机器周

文档评论(0)

192****9497 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档