- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 中断系统 本章要点 分时操作 能解决快速CPU和慢速外设之间的矛盾,可使CPU、外设同时工作。 实现实时处理 外界变化量可以根据要求,随时向CPU发出中断请求,要求CPU及时处理,CPU就可以马上响应,加以处理。 故障处理 计算机运行过程中,出现无法预料的故障时,能自行处理,而不必停机。 7.1.3 中断系统的功能 1、实现中断及返回 7.2 89C51单片机的中断系统 单片机的中断系统主要由几个与中断有关的特殊功能寄存器、中断入口、顺序查询逻辑电路等组成。 (3)TF0:定时器T0溢出中断请求。 当T0产生计数溢出时,由硬件将TF0置位,表明定时时间到或计数值已满,请求中断处理。 (4)TF1:定时器T1溢出中断请求。 当T1产生计数溢出时,由硬件将TF1置位,表明定时时间到或计数值已满,请求中断处理。 (5)RI或TI:串行口中断请求。 当接收或发送完一组数据后,由硬件置位RI或TI,请求中断。 例7-4 现有5个外中断源EX1、EX20、EX21、EX22、EX23,高电平时表示请求中断,要求执行相应的中断服务程序,试编制有关程序。 解 : 89C51有5个中断源,可供用户使用的外部中断只有2个:INT0、INT1,因此就要设法扩展外中断源。 图7-6是利用中断和查询方法扩展外中断源的硬件连接电路。 4个中断源EX20、EX21、EX22、EX23通过或非门合用一个外部中断INT1,这4个中断源又分别连接到P1.0~P1.3。 4个中断源中只要有一个请求中断,就会通过INT1向CPU申请中断,在中断服务程序中再查询P1.0~P1.3,即可判别EX20~EX23中是哪一个请求中断,从而执行相应的服务程序。图7-7是实现这一功能的程序流程图,由图可知,查询次序为EX20~EX23。 中断服务程序如下: ORG 0013H ;中断入口地址 LJMP PINT0 ;转中断服务程序 ┇ ORG 0200H ;中断服务程序首地址 PINT0: CLR EA ;CPU关中断 PUSH ACC ;保护现场 PUSH DPH PUSH DPL SETB EA ;CPU开中断 JB P1.0,LWK20 ;P1.0=1,EX20请求中断 JB P1.1,LWK21 ;P1.1=1,EX21请求中断 JB P1.2,LWK22 ;P1.2=1,EX22请求中断 SJMP LWK23 ;P1.3=1,EX23请求中断 LERT: CLR EA ;CPU关中断 POP DPL ;恢复现场 POP DPH POP ACC SETB EA ;CPU开中断 RETI ;中断返回 LWK20:LCALL WORK20 ;P1.0=1,调用EX20子程序 SJMP LRET ;转中断返回 LWK21:LCALL WORK21 ;P1.1=1,调用EX21子程序 SJMP LRET ;转中断返回 LWK22:LCALL WORK22 ;P1.2=1,调用EX22子程序 SJMP LRET ;转中断返回 LWK23:LCALL WORK23 ;P1.3=1,调用EX23子程序 SJMP LRET ;转中断返回 END 例7-5 已知某89C51单片机采用6 MHz晶振,现要求P1.0输出一个5 kHz的方波,同时对外部输入的脉冲信号进行计数,每当计满200时,使内部数据存储单元60H内容增1,当增到100时停止计数,并使P1.2输出高电平,定时器T1做串行口的波特率发生器。 解:由P1.0输出5 kHZ方波,即每隔100μs使P1.0的电平变化一次;此题既需要定时100μs,又需要对外部信号进行计数。 T1被规定为串行口的波特率发生器,为了不增加其它硬件开销,可把T0设置为工作模式3。 在模式3下,TH0作为8位定时器用,定时100μs,初值为CEH(256-10
文档评论(0)