单片机中断系统及应用_第1页
单片机中断系统及应用_第2页
单片机中断系统及应用_第3页
单片机中断系统及应用_第4页
单片机中断系统及应用_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、单片机中断系统及应用 单片机的中断系统及应用单片机的中断系统及应用 v中断的基本概念中断的基本概念 v中断源与中断标志中断源与中断标志 v中断的控制(允许和优先级)中断的控制(允许和优先级) v中断响应(处理过程)中断响应(处理过程) v中断的应用中断的应用 单片机中断系统及应用 中断的基本概念中断的基本概念 v日常生活中的中断例子日常生活中的中断例子 v单片机中的中断概念单片机中的中断概念 单片机中断系统及应用 日常生活中的中断例子日常生活中的中断例子 单片机中断系统及应用 单片机中的中断概念单片机中的中断概念 中断:是指由于某种随机事件的发中断:是指由于某种随机事件的发 生,单片机暂停现行

2、程序的运行,生,单片机暂停现行程序的运行, 转去执行另一程序,以处理发生的转去执行另一程序,以处理发生的 事件,处理完后又能自动返回原来事件,处理完后又能自动返回原来 程序继续执行。程序继续执行。 CPU现行运行的程序称为主程序。现行运行的程序称为主程序。 处理随机事件的程序称为中断服务处理随机事件的程序称为中断服务 子程序。子程序。 一个一个CPU面向多个任务时,出现资源竞争,而中断技术实面向多个任务时,出现资源竞争,而中断技术实 质上是一种资源共享的技术。质上是一种资源共享的技术。 单片机中断系统及应用 单片机中的中断概念单片机中的中断概念 一、中断源:将能引起中断的事件即引起中断的来源称

3、为中断源。一、中断源:将能引起中断的事件即引起中断的来源称为中断源。 51系列单片机中一共设有系列单片机中一共设有5个:个:2个外部中断、个外部中断、2个定时个定时/计数器中断、计数器中断、 1个串行口中断。个串行口中断。 二、中断优先级与嵌套:当二、中断优先级与嵌套:当CPU正在处理一个优先级低的中断请求正在处理一个优先级低的中断请求 的时候,又有另一个优先级比它高的中断请求,的时候,又有另一个优先级比它高的中断请求,CPU能暂停正在处能暂停正在处 理的中断程序,转去处理优先级高的中断请求,待处理完以后,再理的中断程序,转去处理优先级高的中断请求,待处理完以后,再 回到原来正在处理的低优先级

4、中断程序,这种高级中断源能中断低回到原来正在处理的低优先级中断程序,这种高级中断源能中断低 级中断源的中断处理过程成为中断嵌套。级中断源的中断处理过程成为中断嵌套。 三、中断的响应过程:三、中断的响应过程: 保护断点,即保存下一条将要执行指令的保护断点,即保存下一条将要执行指令的 地址,方法是把这个地址送入堆栈;地址,方法是把这个地址送入堆栈; 寻找到中断入口,根据寻找到中断入口,根据5个不个不 同中断源所产生的中断,查找不同的入口地址;同中断源所产生的中断,查找不同的入口地址; 执行中断程序;执行中断程序; 中断返回,执行完中断程序返回到主程序继续执行。中断返回,执行完中断程序返回到主程序继

5、续执行。 0003H: 外部中断外部中断0入口入口 000BH: 定时器定时器T0溢出中断入口溢出中断入口 0013H: 外部中断外部中断1入口入口 001BH: 定时器定时器T1溢出中断入口溢出中断入口 0023H:串行口中断入口:串行口中断入口 单片机中断系统及应用 MCS-51单片机中断系统单片机中断系统 v5个中断源:外部中断个中断源:外部中断2个、定时个、定时/计数器中断计数器中断2个、个、 串行口中断串行口中断1个。个。 v2个中断优先级(能够实现两级中断嵌套),优先个中断优先级(能够实现两级中断嵌套),优先 级的高低由编程来设定。级的高低由编程来设定。 v4个中断控制的寄存器个中

6、断控制的寄存器IE、IP、TCON和和SCON. P11 vIE: 中断允许寄存器。确定中断请求是否得到响应。中断允许寄存器。确定中断请求是否得到响应。 vIP:中断优先级寄存器。确定中断源的优先级。中断优先级寄存器。确定中断源的优先级。 vTCON:定时器控制寄存器。定时器控制寄存器。 vSCON:串行口控制寄存器。串行口控制寄存器。 单片机中断系统及应用 中断源中断源 51系列单片机有系列单片机有5个中断源:外部中断个中断源:外部中断 源源2个、内部中断源个、内部中断源3个。个。 v外部输入中断源外部输入中断源INT0(P3.2) v外部输入中断源外部输入中断源INT1(P3.3) v片内

7、定时器片内定时器T0溢出溢出 v片内定时器片内定时器T1溢出溢出 v片内串行口发送或接收中断片内串行口发送或接收中断 源源,TXD或或RXD:发送:发送TI或接受或接受 RI中断请求。中断请求。 或或 或或 单片机中断系统及应用 IE0 TCON SCON INT0 IT0=0 IT0=1 INT1 IT1=0 IT1=1 TF0 IE1 TF1 T0 T1 TI RI TXD RXD ES ET0 EX0 EX1 ET1 EA 自然优先级自然优先级 矢量 地址 高级中断请求高级中断请求 自然优先级自然优先级 矢量 地址 低级中断请求低级中断请求 PX0 PT0 PX1 PT1 PS IE I

8、P 中断标 志位 中断源 允许 总允许 EA 中断优 先级 MCS-51中断系统 单片机中断系统及应用 中断标志中断标志 每一个中断源都有相应的中断标志位每一个中断源都有相应的中断标志位 某一个中断源申请中断,相应中断标志位置某一个中断源申请中断,相应中断标志位置1, IT0/IT1为外部中断为外部中断0/1触发方式控制位。触发方式控制位。 单片机中断系统及应用 中断允许中断允许 单片机中断系统及应用 中断优先级中断优先级 单片机有两个中断优先级,高优先级和低优先级,前者单片机有两个中断优先级,高优先级和低优先级,前者 优先权高于后者(程序中,相应位优先权高于后者(程序中,相应位=1,为高优先

9、级),为高优先级) 同一优先级的中断源按照自然优先级顺序确定优先级别同一优先级的中断源按照自然优先级顺序确定优先级别 (硬件形成,无法改变)(硬件形成,无法改变) 单片机中断系统及应用 中断源 同级内的中断优先级 外部中断0 最高 定时/计数器0 外部中断1 定时/计数器1 串行口 最低 单片机中断系统及应用 1 0 1 0 1 0 1 0 1 0 矢量 地址 矢量 地址 高优 先级 中断 请求 PC 低优 先级 中断 请求 PC IE0IT0 IE1IT1 EX0 EX1 ET0 ET1 ES INT0 INT1 T0 T1 TX RX 中断允许 寄存器IE 源允许总允许 中断优先级 寄存器

10、IP 硬件查询 EA 优先级 TF0 TF1 TI RI 1 TCON SCON 中断标志 中断系统结构图中断系统结构图 单片机中断系统及应用 IT0IE0IT1IE1TR0TF0TR1TF1 TCON (88H) 位位7(8FH)7(8FH)5(8DH)3(8BH)2(8AH)1(89H)0(88H) 定时定时/计数器控制寄存器计数器控制寄存器-TCON T1溢出中断标志(溢出中断标志(TCON.7):): T1启动计数后,计满溢出由启动计数后,计满溢出由 硬件置位硬件置位TF1=1,向,向CPU请求请求 中断,此标志位一直保持到中断,此标志位一直保持到 CPU响应中断后,才由硬件自响应中断

11、后,才由硬件自 动清零。也可以用软件查询该动清零。也可以用软件查询该 标志,用软件清零。标志,用软件清零。 外部中断外部中断1中断请求标志中断请求标志 (TCON.3):): IE1=0,没有中断请求;,没有中断请求; IE1=1, 有中断请求。有中断请求。 外部中断外部中断1中断请求标志中断请求标志 (TCON.3):): IT1=0,下降沿触发方式;,下降沿触发方式; IT1=1,电平触发方式。,电平触发方式。 寄存器寄存器TCON可位寻址可位寻址 单片机中断系统及应用 RITIRB8TB8RENSM2SM1SM0 SCON (98H) 位位1(99H)0(98H) TI-串行发送中断标志

12、串行发送中断标志 RI-串行接收中断标志串行接收中断标志 串行口控制寄存器串行口控制寄存器-SCON 寄存器寄存器SCON可位寻址可位寻址 单片机中断系统及应用 中断允许寄存器中断允许寄存器- IE 例:允许外部中断例:允许外部中断INT1 SETB EA EX0ET0EX1ET1ES-EA IE (A8H) 位位1(ACH)0(ACH)2(ACH)3(ACH)4(ACH)7(ACH) SETB EX1 或者或者 MOV IE,#84H 寄存器寄存器IE可位寻址可位寻址 单片机中断系统及应用 中断优先级寄存器中断优先级寄存器- IP 51单片机有两个优先级单片机有两个优先级-高级和低级高级和低

13、级 专用寄存器专用寄存器IP为中断优先级寄存器,用为中断优先级寄存器,用 户可软件设定户可软件设定 相应位置相应位置1时,该位为高优先级;时,该位为高优先级; 相应位置相应位置0时,该位为低优先级;时,该位为低优先级; 系统复位时,均为低优先级系统复位时,均为低优先级 寄存器寄存器IP可位寻址可位寻址 PX0PT0PX1PT1PS- IP (B8H) 位位1(BCH)0(BCH)2(BCH)3(BCH)4(BCH) 单片机中断系统及应用 中断处理过程中断处理过程 中断处理过程分为三个阶段中断处理过程分为三个阶段-中断响应、中断响应、 中断处理、中断返回中断处理、中断返回 v中断响应中断响应 v

14、中断处理中断处理 v中断返回中断返回 v中断请求的撤除中断请求的撤除 单片机中断系统及应用 中断响应中断响应 v中断响应:在满足中断响应:在满足CPU 的中断响应条件之后,的中断响应条件之后, CPU对中断请求予以处对中断请求予以处 理。理。 v中断响应过程:中断响应过程: 1.保护断点地址保护断点地址 2.把程序转向中断服务把程序转向中断服务 程序的入口地址程序的入口地址 3.特别注意:这些工作特别注意:这些工作 是硬件自动完成的。是硬件自动完成的。 断点断点 地址地址 中断服务中断服务 程序入口程序入口 地址地址 v中断服务子程序入口地中断服务子程序入口地 址又称为中断矢量,或址又称为中断

15、矢量,或 中断向量。中断向量。 v单片机单片机5个中断源的入个中断源的入 口地址是固定的,不能口地址是固定的,不能 更改。更改。 单片机中断系统及应用 v下列三种情况之一时,CPU将阻止对中断的响应: v1. CPU正在处理同级或更高级的中断请求。 v2. 当前的机器周期不是所执行指令的最后一个周期。 单片机有单周期、双周期、四周期的指令。当执行 的指令为双周期或四周期时,要等该指令执行完才 能响应中断。 v3. 当前执行的指令是返回指令或访问IE、IP寄存器 进行读/写的指令,则CPU至少要执行一条指令之后 才能响应中断。 v如果中断标志被置位,但由于上述条件之一的原因 而未被响应,CPU将

16、丢弃中断查询的结果;上述阻 止条件已撤销,但中断标志位已不再存在时,被拖 延的中断就不会再被响应。 单片机中断系统及应用 单片机中断系统及应用 v中断服务程序从入口地址中断服务程序从入口地址 开始执行,直到返回指令开始执行,直到返回指令 RETI为止,这个过程称为为止,这个过程称为 中断处理(中断服务)。中断处理(中断服务)。 v中断服务子程序一般包括中断服务子程序一般包括 两部分内容:一是保护和两部分内容:一是保护和 恢复现场,二是处理中断恢复现场,二是处理中断 源的请求。源的请求。 中断处理中断处理 入口入口 地址地址 RETI 单片机中断系统及应用 单片机中断系统及应用 中断返回中断返回

17、 v中断返回是中断服务完后,中断返回是中断服务完后, 计算机返回到原来暂停的计算机返回到原来暂停的 位置(断点),继续执行位置(断点),继续执行 原来的程序。原来的程序。 v中断返回由专门的中断返中断返回由专门的中断返 回指令回指令RETI来实现。来实现。 单片机中断系统及应用 中断返回中断返回 vRETI指令功能:把断点地指令功能:把断点地 址取出,送回程序计数器址取出,送回程序计数器 PC中去,另外,还通知中中去,另外,还通知中 断系统已完成中断处理,断系统已完成中断处理, 将清除优先级状态。将清除优先级状态。 v特别注意:不能用特别注意:不能用RET指指 令代替令代替RETI指令!指令!

18、 单片机中断系统及应用 中断处理过程示意图中断处理过程示意图 单片机中断系统及应用 中断服务程序中断服务程序 保护现场和保护现场和 恢复现场的恢复现场的 过程中不允过程中不允 许中断,以许中断,以 免现场遭到免现场遭到 破坏。破坏。 保护现场和保护现场和 恢复现场之恢复现场之 后的开中断,后的开中断, 是为了更高是为了更高 级的中断可级的中断可 以打断此中以打断此中 断服务程序。断服务程序。 硬件自硬件自 动完成动完成 单片机中断系统及应用 中断响应时间:从中断请求标志位到CPU开始执行中 断服务程序的第一条指令所经历的时间。 系统只有一个中断源时, v最短时间:CPU响应中断请求,在下一个机

19、器周期 执行一个硬件长调用指令LCALL,使程序转入中断 矢量入口。该调用指令执行是两个周期,故外部中 断响应时间至少需要3个机器周期。 v最长时间:正在执行指令还没执行完,至多需要三 个机器周期;假若正在执行RETI或访问IE、IP寄存 器的指令还需要一个机器周期,加上完成下一条指 令所需要的最长时间4个周期,故最多需要5个机器 周期。 中断响应时间中断响应时间 单片机中断系统及应用 中断请求的撤除中断请求的撤除 vCPU响应某中断请求后,在中断返回之前,应撤除响应某中断请求后,在中断返回之前,应撤除 该中断请求,否则会引起新一次中断。该中断请求,否则会引起新一次中断。 v定时定时/计数器溢

20、出中断标志的撤除:硬件自动清除计数器溢出中断标志的撤除:硬件自动清除 v外部中断请求的撤除:外部中断请求的撤除: v 1.下降沿触发方式,硬件自动清除下降沿触发方式,硬件自动清除 v 2.低电平沿触发方式,较为复杂低电平沿触发方式,较为复杂 v串行口中断请求的撤除:软件人为清除串行口中断请求的撤除:软件人为清除 单片机中断系统及应用 中断系统的应用中断系统的应用 v中断控制实质上是对中断控制实质上是对4个与中断有关的特殊功个与中断有关的特殊功 能寄存器能寄存器TCON、SCON、IE和和IP进行管理和进行管理和 控制。控制。 v在实际中断应用时,先要对中断系统进行初在实际中断应用时,先要对中断

21、系统进行初 始化,也就是用户对这些特殊功能寄存器中始化,也就是用户对这些特殊功能寄存器中 的各控制位赋初值。的各控制位赋初值。 单片机中断系统及应用 中断系统的初始化中断系统的初始化 初始化主要步骤:初始化主要步骤: (1)开总中断及相应中断源的中断。)开总中断及相应中断源的中断。 (2)设定所用中断源的中断优先级。)设定所用中断源的中断优先级。 (3)若为外部中断,则应确定触发方式是低)若为外部中断,则应确定触发方式是低 电平还是下降沿。电平还是下降沿。 单片机中断系统及应用 SETB EA;开总中断开总中断 SETB EX0;开开INT0中断中断 SETB PX0;设设INT0为高优先级为

22、高优先级 CLR IT0;设设INT0为电平触发方式为电平触发方式 例例3-2 写出写出INT0为低电平触发方式的中断系为低电平触发方式的中断系 统初始化程序。统初始化程序。 方法方法1,采用位操作指令:,采用位操作指令: 单片机中断系统及应用 方法方法2,采用字节操作指令:,采用字节操作指令: MOV IE,#81H;开总中断开总中断,开开INT0中断中断 MOV IP,#01H;设设INT0为高优先级为高优先级 ANL TCON,#0FEH;设设INT0为电平触发方式为电平触发方式 单片机中断系统及应用 例3-3 外部中断0响应实例。 要求: 外部中断0下降沿触发,P1.2连接一个 LED

23、灯亮大约1S,可以采用延时1S的 方法,或者使用定时1S实现。 单片机中断系统及应用 例3-3 外部中断0响应实例。 ORG 0000H AJMP MAIN ORG 0003H AJMP WINT0 ORG 0100H MAIN: CLR P1.2 SETB EA SETB EX0 SETB IT0 LOOP:AJMP LOOP ORG 0200H WINT0:SETB P1.2 ACALL DEL CLR P1.2 RETI DEL: MOV R7,#05H DEL1: MOV R6,#0C8H DEL2: MOV R5,#0FAH DEL3: DJNZ R5,DEL3 DJNZ R6,DE

24、L2 DJNZ R7,DEL1 RET END 单片机中断系统及应用 1. 下列有关MCS51中断优先级控制的叙述中,错误 的是 A低优先级不能中断高优先级,但高优先级能中 断低优先级 B同级中断不能嵌套 C同级中断请求按时间的先后顺序响应 D同级中断按CPU查询次序响应中断请求 2. 执行中断返回指令,要从堆栈弹出断点地址,以便 去执行被中断了的主程序。从堆栈弹出的断点地 址送给 AA BCY CPC DDPTR 单片机中断系统及应用 3.各中断源发出的中断请求信号,都会标记在( )寄 存器 。 A. TMOD/SCON B. TCON/PCON C. IE/TCON D. TCON/SCO

25、N 4.执行返回指令,退出中断服务子程序,则返回地址 来自( )。 A. ROM B. 程序计数器 C. 堆栈区 D. CPU寄存器 5. 外部中断 1的中断入口地址为( )。 A. 0003H B. 000BH C. 0013H D. 001BH 6. 中断是一种( )。 A .资源共享技术 B .数据转换技术 C .数据共享技术 D .并行处理技术 单片机中断系统及应用 7. 执行 MOV I E , 81H 指令的意义是:( )。 A .屏蔽中断源 B .开放外部中断源 0 C .开放外部中断源 1 D .开放外部中断源 0 和 1 8. 启动 T1 运行的指令是( ) A. SETB

26、ET0 B. SETB ET1 C. SETB TR0 D. SETB TR1 9. CPU 允许串行口中断的指令为( ) A. SETB EX0 B. SETB ES C. SETB ET0 D. SETB ET1 10. 8051 系统中,同一优先级的几个中断源中 优先 权最高( )。 A. INT0 B. T0 C. INT1 D. T1 单片机中断系统及应用 11.外部中断 INT0 的触发方式控制位 IT0 置 1 后,其有效 的中断触发信号是( ) A.高电平 B.低电平 C.上升沿 D.下降沿 12. 假定设置堆栈指针 SP 的值为 37H ,在进行子程序调用 时把断点地址进行堆栈保护后, SP 的值为( )。 A. 36H B. 37H C. 38H D. 39H 13. 如果某MCS-51单片机系统的定时/计数器0的中断服务程 序放在程序存储区的3000H地址开始的一段空间内,此时跳 转到定时/计数器0的中断服务程序的指令LJMP3000H应放在 ( )开始

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论