- 1、本文档共73页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51单片机定时器应用举例剖析
4.4 80C51的中断系统 4.4.1 中断的概念 中断是通过硬件来改变CPU的运行方向的。当CPU在执行程序时,由内部或外部的原因引起的随机事件要求CPU暂时停止正在执行的程序,而转向执行一个用于处理该随机事件的程序,处理完后又返回被中止的程序断点处继续执行,这一过程就称为中断。 中断之后所执行的相应的处理程序通常称之为中断服务或中断处理子程序,原来正常运行的程序称为主程序。主程序被断开的位置(或地址)称为“断点”。引起中断的原因,或能发出中断申请的来源,称为“中断源”。中断源要求服务的请求称为“中断请求”(或中断申请)。 4.4.2 中断的特点及功能 1、中断的特点 1)提高CPU的效率 中断可以解决高速的CPU与低速的外设之间的矛盾,使CPU和外设并行工作。CPU在启动外设工作后继续执行主程序,同时外设也在工作。每当外设做完一件事就发出中断申请,请求CPU中断它正在执行的程序,转去执行中断服务程序,中断处理完之后,CPU恢复执行 主程序,外设也继续工作。这样,CPU可启动多个外设同时工作,大大地提高了CPU的效率。 2)实时处理 在实时控制系统中,工业现场的各种参数和信息都会随时间而变化。这些外界变量可根据要求随时向CPU发出中断申请,请求CPU及时处理中断请求。如果满足中断条件,CPU就立刻会响应,转入中断处理,从而实现实时处理。 3)故障处理 控制系统的故障和紧急情况难以预料的,如掉电、设备运行出错等,可通过中断系统由故障源向CPU发出中断请求,再由CPU转到相应的故障处理程序进行处理。 2、中断的功能 (1)实现中断响应和中断返回 当CPU 收到中断请求后,CPU要根据相关条件(如中断优先级、是否允许中断)进行判断,决定是否响应这个中断请求。若响应,则在执行完当前指令后立刻响应这一中断请求。 CPU中断过程为:第一步 将断点处的PC值(即下一条应执行指令的地址)压入堆栈保留下来(这称为保护断点,由硬件自动执行)。第二步 将有关的寄存器内容和标志PSW状态压入堆栈保留下来(这称为保护现场,由用户自己编程完成)。第三步 执行中断服务程序。第四步 中断返回,CPU将继续执行原主程序。中断返回过程为:首先恢复原保留寄存器的内容和标志位的状态,这称为恢复现场,由用户编程完成。然后,再加返回指令RETI,RETI指令的功能是恢复PC值,使CPU返回断点,这称为恢复断点。中断流程图如图4-8所示。 图4-8 中断流程 (2) 实现优先权排队 中断优先权也称为中断优先级。中断系统中存在着多个中断源,同一时刻可能会有不止一个中断源提出中断请求,因此需要给所有中断源安排不同的优先级别。CPU可通过中断优先级排队电路首先响应中断优先级高的中断请求,等到处理完优先级高的中断请求后,再来响应优先级低的中断请求。 (3) 实现中断嵌套 当CPU响应某一中断时,若有中断优先级更高的中断源发出中断请求,CPU会暂停正在执行的中断服务程序,并保留这个程序的断点,转向执行中断优先级更高的中断源的中断服务程序,等处理完这个高优先级的中断请求后,再返回来继续执行被暂停的中断服务程序。这个过程称为中断嵌套。中断嵌套流程图如图4-9所示。 80C51中断可实现两级中断嵌套。高优先级中断源可中断正在执行的低优先级中断服务程序,除非执行了低优先级中断服务程序的CPU关中断指令。同级或低优先级的中断不能中断正在执行的中断服务程序。 图4-9 中断嵌套流程图 返回 图4-10 80C51中断系统结构图 4.4.3 80C51中断系统的结构及中断源 一、80C51中断系统的结构 80C51的中断系统有5个中断源,2个优先级,可实现二级中断嵌套,中断系统结构如图4-10所示。由图可知,与中断有关的有:①4个寄存器,分别为中断源寄存器TCON和SCON、中断允许控制寄存器IE和中断优先级控制寄存器IP;②5个中断源,分别为外部中断0请求(INT0) 、外部中断1请求(INT1)、定时器0溢出中断请求TF0、定时器1溢出中断请求TF1和串行中断请求RI或TI。③中断优先级控制寄存器IP和顺序查询逻辑电路,共同决定5个中断源的排列顺序,5个中断源分别对应5个固定的中断入口地址。 二、80C51的中断源 80C51有5个中断源,它们是: 1、外部中断0请求,由80C51的P3.2脚输入。可由IT0(TCON.0位)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1位)置1,向CPU申请中断。中断服务程序入口地址为0003H。 2、外部中断1请求,由80C51的P3.3脚输入。可由I
文档评论(0)