第四章1 MCS-51单片机中断系统.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章1 MCS-51单片机中断系统

第4章 MCS-51的中断系统 本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用 (一)中断 在计算机系统中,中断是指CPU在执行某段程序的过程中,由于某一事件发生时,要求CPU暂时停止正在执行的程序,而去执行相应的处理程序,待处理结束后,再返回到原来程序停止处继续执行。 (二)中断处理与子程序调用的区别 调用哪个子程序、完成什么任务是用户设计程序时事先安排好的,是采用子程序调用指令实现的;而中断事件发生是随机的,哪个事件发生、何时调用中断处理程序是事先无法确定的,在程序中无法事先安排调用指令,调用中断处理程序的过程是由硬件自动完成的。 中断系统是指实现中断响应和处理的所有硬件和软件,它包括中断源的产生、中断判优、中断响应、中断查询、中断处理等过程。 中断源: (1)计算机系统的外部设备某一事件发生,向CPU请求中断;被控设备某个参数超过限位阈值,向CPU请求中断等。 (2)计算机内部的某个事件发生,如定时/计数器溢出、串行口接收到或发送完一帧数据等。 (3)计算机发生了故障引起中断,如系统电源掉电、运算器运算溢出、系统出错等事件发生,向CPU申请中断。 (4)人为设置中断。用户在编程和调试时人为设置的中断事件,如单步执行、设置断点。 中断优先级: 在中断系统中,按照轻重缓急的原则给每一个中断源分配一个中断CPU的优先级。当多个中断源同时向CPU发出请求,通过判断中断优先级——中断判优,优先响应中断优先级最高的中断源的请求,待CPU处理完优先级最高的中断请求后,再依次按优先级顺序响应其它中断源的中断请求。 中断响应条件 : (1)有中断源的中断请求; (2)CPU允许这个中断源请求中断; (3)CPU处于开放中断的状态; (4)CPU刚刚结束一条指令的执行过程。 CPU要响应中断需要先做的准备: (1)关中断; (2)保护断点; (3)取中断处理程序的入口地址,转入中断处理程序。 中断嵌套时的低优先级 中断处理程序流程图 中断系统应具备以下功能: (1)实现中断与返回; (2)能够对中断请求按优先级响应; (3)能实现中断嵌套处理。 中断处理过程示意 (1)解决了快速CPU和低速外部设备之间的速度匹配问题,使CPU和外设同时工作; (2)可以实现实时处理; (3)可以实现突发故障的及时自动处理; (4)可以实现多任务资源共享。 MCS-51单片机中断标志位分别由2个特殊功能寄存器存储: (1)定时/计数器控制寄存器; (2)串行口控制寄存器。 (一 ) 定时器控制寄存器(TCON) 定时/计数器控制寄存器TCON锁存外部中断请求标志以及定时/计数器的计数溢出标志。TCON的地址88H,寄存器中各位的位地址为88H~8FH。 (二)串行口控制寄存器(SCON) 串行口控制寄存器SCON锁存串行口发送缓冲器的发送结束标志和接收缓冲器的接收到数据标志,不论哪个中断标志有效,都会触发串行口中断。SCON的地址98H,各位的位地址位:98H~9FH。 (1)TI串行口发送中断请求标志位 当串行口发送缓冲器发送完一帧数据后,由硬件自动把TI置1,以此向CPU请求中断。 (2)RI串行口接收中断请求标志位 当串行口接收缓冲器接收完一帧串行数据后,由硬件把RI置1;以此向CPU请求中断。 注意:在CPU响应中断时,标志位TI 和RI不被自动清0,必须由用户在中断处理程序中用软件清0,否则,CPU将会陷入响应中断和中断处理当中,造成数据帧的丢失。 由于串行口接收和发送共享一个中断源,无论是发送结束标志TI还是接收到数据标志RI被置1,都会产生串行口中断请求。在双工通信时,为了辨别哪一个触发了中断,必须首先在中断处理程序中检测TI和RI的状态,然后清除标志位(TI或RI),再进行相应的中断处理。 MCS-51单片机的中断控制由用户通过设定中断允许寄存器IE来实现,如单片机开放中断,允许外部事件中断、定时/计数器T0溢出中断和串行口中断。 设定程序如下: MOV IE, 或: SETB EA; CPU开放中断 SETB EX1; 允许中断 SETB ET0; 允许定时/计数器溢出中断 SETB ES; 允许串行口中断 当多

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档