单片机经典课件 中断系统.ppt

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

单片机技术及应用 6.1 中断的概念 6.1 中断的概念 中断原因: 一个人不可能同时完成两项任务。 6.1 中断的概念 6.1 中断的概念 中断系统:实现中断功能的软件和硬件。 中断源:向CPU发出中断请求的事件。 中断请求:中断源向CPU提出的处理请求。 中断响应:CPU暂停自身事务转去处理中断请求的过程 中断处理:对事件的整个处理过程。 中断返回:处理完毕后回到原来被中断的地方。 6.1 中断的概念 中断优先级:由于在实际的系统中,往往有多个中断源,且中断申请是随机的,有时可能会有多个中断源同时提出中断申请,但CPU一次只能响应一个中断源发出的中断请求,这时CPU应响应哪个中断请求? 这就需要用软件或硬件按中断源工作性质的轻重缓急,给它们安排一个优先顺序,即所谓的优先级排队。中断优先级越高,则响应优先权就越高。 中断嵌套:当CPU正在执行中断服务程序时,又有中断优先级更高的中断申请产生,这时CPU就会暂停当前的中断服务转而处理高级中断申请,待高级中断处理程序完毕再返回原中断程序断点处继续执行,这一过程称为中断嵌套。 6.1 中断的概念 6.1 中断的概念 当CPU与外设交换信息时,采用中断的方式有以下优点: 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 能够向CPU发出中断申请的部件称为中断源。 80C51单片机有5个中断源。见下表 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 1、定时/计数控制寄存器TCON; 2、串行口控制寄存器SCON; 3、允许中断寄存器IE; 4、中断优先级寄存器IP。 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 CPU对中断源的开放或屏蔽,受到中断允许寄存器IE的控制。 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 中断嵌套:当CPU正在处理某一中断源的请求时,若有优先级比它高的中断源发出中断申请,则CPU暂停正在进行的中断服务程序,并保留这个程序的断点。在更高级别的中断处理完毕后,再回到原来被中断的源程序中执行中断服务程序。 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.2 中断系统的结构和控制实现 6.3 中断的处理过程 CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生或中断请求); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回)。 6.3 中断的处理过程 6.3 中断的处理过程 6.3 中断的处理过程 6.3 中断的处理过程 6.3 中断的处理过程 6.4 中断的应用 6.4.1 中断服务程序的设计步骤 6.4 中断的应用 6.4 中断的应用 6.4 中断的应用 6.4 中断的应用 6.4 中断的应用 采用C51语言编写程序,采用的方法就是中断服务函数。函数声明时包括interrupt,将把所声明的函数定义为一个中断服务程序。在C51中定义中断服务函数的一般形式如下: 函数类型??函数名 ?interrupt? n? [using ?n] Interrupt后面的n是中断号。关键字using后面的n是所选择的寄存器组,取值范围是0-3.定义中断函数时,using是一个选项,可以省略不用。如果不用则由编译器选择一个寄存器组作为绝对寄存器组。 6.4 中断的应用 在C51中定义中断服务函数的一般形式如下: 函数类型??函数名 ?interrupt? n? [using ?n] Interrupt后面的n是中断号。中断号告诉编译器中断程序的入口地址。中断号对应着IE寄存器中的使能位,换句话说,IE寄存器中的0位对应着外部中断0,相应的外部中断0的中断号是0. 6.4 中断的应用 在C51中定义中断服务函数的一般形式如下: 函数类型??函数名 ?interrupt? n? [using ?n] ?中断号???????

文档评论(0)

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

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

1亿VIP精品文档

相关文档