已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中断控制中断及中断源中断响应过程中断程序设计15-1 中断及中断源一、中断 ( Interrupt)1、 CPU在执行程序时, CPU以外的设备请求停止现程序的执行,转去处理外设事件,处理后再回到原地执行,这一过程叫中断。 主程序转移 中断程序返回断点2、 中断流程 继续与子程序调用相似但有本质的区别 2 子程序调用是 固定的 ,专用指令,位置固定。注意 中断与子程序调用的不同点 中断的执行是 随机的 ,没有调用指令,任何位置。3、中断工作方式的 优点 :1)外设与 CPU可并行工作CPU与多个外设同时工作,互不干扰2)实现了实时处理、实时控制CPU能及时处理外部信息,如数据采集,监控3)能及时处理随机故障 3二、中断源 向 CPU提出中断请求的设备或部件叫中断源 来源有输入输出设备、实时时钟、硬件故障等。MCS-51有 5种类型的中断源:外部中断 2个 INT0 、 INT1内部中断 3个 定时器溢出中断,串行口中断1、 外部中断 0-INT0( P3.2)由 P3.2引脚输入,一旦输入有效中断信号,便使标志位 IE0置 1,并向 CPU申请中断。2、 外部中断 1INT1 ( P3.3)与 INT0类似, P3.3有 中断信号, IE1置 1,申请中断。 4中断源3、 定时器 0溢出中断 -T0是内部中断,无外部输入。定时器 T0溢出,使标志位 TF0置 1,向 CPU申请中断。4、 定时器 1溢出中断 T1与 T0类似, T1溢出, TF1置 1,向 CPU申请中断。5、 串行口中断 S当串行口接收完一帧数据,中断标志位 RI置 1当串行口发送完一帧数据,中断标志位 TI置 15每个中断源都有一个对应的中断标志位,中断标志位在两个特殊功能寄存器中 三、中断标志位 TCON 定时器控制寄存器,存放有 4个标志位SCON 串行口控制寄存器,存放有 2个标志位1、 TCON中的中断标志位Timer Control,为 8位特殊功能寄存器, 地址 88H 用 4位放定时器 T0、 T1, 外部中断 INT0、 INT1的中断标志位。 TCON用来控制定时器的启 /停和外部中断管理 。 TCON可读可写,可位操作。 6定时器 Timer 外部中断 Interrupt高四位用于定时器,低四位用于 外部中断1) TF1 Timer Flowing, 定时器 T1溢出中断标志位T1溢出,硬件自动置标志位 TF1=1, CPU响应中断,硬件自动清 TF1=0。2) TF0 定时器 T0溢出中断标志位3) IE1 Interrupt External, 外部中断 1中断标志位若 P3.3上有有效的中断信号,硬件置位 IE1=14) IE0 外部中断 0( P3.2) 中断标志位另外 4位中, TR0、 TR1用于定时器 T0和 T1的启 /停控制IT0、 IT1用于设置外部中断的触发方式TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0D7 D6 D5 D4 D3 D2 D1 D0TCON(88H)71) TI 串行口发送中断标志位 ,Transfer InterruptCPU发送完一帧数据,硬件置位 TI=1, 响应中断,不能硬件自动清 TF1=0, 必须用软件清 0。2) RI 串行口接收中断标志位, Receive InterruptCPU接收完一帧数据,硬件置位 RI=1, 必须用软件清 02、 SCON中的中断标志位TI RID7 D6 D5 D4 D3 D2 D1 D0SCON(98H)Serial Control,为 8位特殊功能寄存器, 地址为 98H与中断有关的为低两位返 回85-2 中断控制中断是可控的,由软件设置实现对中断功能的控制IE 中断允许寄存器,用于中断的开放或禁止IP 中断优先级寄存器,用于中断响应优先管理1、中断允许寄存器 IEInterrupt Enable,为一 8位 寄存器,地址为 A8H EA ES ET1 EX1 ET0 EX0D7 D6 D5 D4 D3 D2 D1 D0 IE(A8H)INT0 T0INT1 T1 S总控位9EA-Enable Amount, 中断总允许位EA=1, CPU开中断; EA=0, 关中断,禁止所有中断ES-Enable Serial, 串行口中断允许位ES=1, 允许串行口中断; ES=0, 禁止串行口中断ET1-Enable Timer1, 定时器 T1溢出中断允许位ET1=1, 允许 T1中断; ET1=0, 禁止 T1中断EX1-Enable eXternal, 外部中断 1中断允许位EX1=1, 允许外部中断 1中断; EX1=0, 禁止ET0-Enable Timer0, 定时器 T0中断允许位,类似 ET1EX0-Enable eXternal0, 外部中断 0允许位,类似 EX1EA ES ET1 EX1 ET0 EX0D7 D6 D5 D4 D3 D2 D1 D0 IE(A8H)10举例例:设允许 T0中断和外部中断 0中断,禁止其它中断 用位操作指令编程如下:SETB ET0 ; 允许 T0中断SETB EX0 ; 允许 INT0中断SETB EA ; 开总开关 用字节操作指令编程如下: EA ES ET1 EX1 ET0 EX01 0 0 0 0 0 1 1 = 83HMOV IE, #83H 或MOV IE, #10000011B用字节操作指令或用位操作指令对 IE进行初始化设置的方法 112、中断优先级寄存器 IP PS PT1 PX1 PT0 PX0D7 D6 D5 D4 D3 D2 D1 D0 IP(B8H)INT0 T0INT1 T1 SIP为一 8位 特殊功能寄存器,地址为 B8H每个中断源均可设置为高优先级或低优先级: 设置为 1时,该中断源为高优先级设置为 0时,该中断源为低优先级Interrupt Preference 高优先级中断源可中断正在执行的低优先级中断 同级或低优先级中断不能中断正在执行的中断 管理原则12主程序转移返回断点继续转移高级中断程序返回中断嵌套 51单片机 有两级中断优先级,可实现 两级中断嵌套 。 只有在执行低级中断程序时,出现高级中断申请,才会有两级中断嵌套。 如果同时出现多个同一优先级中断, CPU内部硬件逻辑按 自然优先级排队 依此响应。 13自然优先级中断源 同 级 自然 优 先 级外部中断 0 最高 级最低 级定 时 器 T0溢出中断外部中断 1定 时 器 T1溢出中断串行口中断14TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0D7 D6 D5 D4 D3 D2 D1 D0TCON(88H)外部中断触发方式ITX-Interrupt Trigger, 外部中断触发方式控制位外部中断有两种触发方式,通过设置 IT0、 IT1实现。设置 IT0=0时 电平触发方式,低电平有效。设置 IT0=1时 为边沿触发方式,下降沿有效。 IT0=1时,下降沿触发, CPU响应中断,硬件自动清 IE0=0 IT0=0时,低电平触发, CPU响应中断不会自动清除 IE0标志位,必须撤消 INT0引脚上的低电平信号,即使 INT0=1, 才能使 IE0=0。相当于有硬件连接的: 1 IE0INT0INT0INT115中断系统结构 TCONSCONIE IP 排队返 回 165-3 中断响应过程1、中断响应的条件1) 有中断申请2) CPU开中断,即 EA=13) 相应的中断源开中断 2、中断响应过程1) 根据优先级置相应的触发器为 12) 保护断点,把 PC当前值入栈保护3)硬件清除相应的中断标志位4)将相应的 中断服务程序的入口地址 给 PC5) 转到执行中断服务程序 17中断服务程序的入口地址 (又叫中断矢量)是固定的中断 入口地址中断源 中断入口地址外部中断 0 0003H定 时 器 T0溢出中断 000BH外部中断 1 0013H定 时 器 T1溢出中断 001BH串行口中断 0023H18每两个入口地址之间相距只有 8个单元,一般情况下容不下一个完整的中断服务程序,通常在入口地址处放一条长跳转指令 LJMP XXX。 这样中断服务程序可以放在 64K ROM的任何地方。中断 入口地址3、中断返回 RETI中断服务程序的最后必须是中断返回指令 RETI, 功能是:1)将相应的优先级触发器清 02)从堆栈中弹出断点地址给 PC3) 回到中断处继续执行 19CPU响应中断,中断标志位必须清 0,否则会引起再一次中断,清 0方式有 3种:1)硬件自动清 0有定时器溢出中断标志 TF0、 TF1边沿触发的外部中断标志 IE0、 IE12) 软件清 0有串行口中断 TI、 RI3) 软硬件结合清 0有低电平触发的外部中断标志位 IE0、 IE14、中断标志的撤除如用 RET代 RETI, 能弹出端点返回,但不能清优先级状态触发器,会继续认为 CPU还在响应中断,而屏蔽新的中断请求返 回205-4 中断程序设计一、中断程序设计的方法1、主程序单片机复位后 PC=0000H, 而在 0003H-0023H为中断入口地址,因此,往往在 0000H处放 一条跳转指令ORG 0000H ; 主程序入口地址LJMP MAINORG 0003H ; 中断程序入口地址LJMP INT0_RORG 0030H MAIN: ; 主程序212)开中断( IE赋值)SETB EA ; 开总开关SETB EX0 ; 开分开关3)设置中断优先级( IP赋值)4)其它初始化设置 2、初始化1) 设置外部中断的触发方式( IT0、 IT1)设置定时器的开、关( TR0、 TR1) 3、中断服务子程序以子程序名开始,以 RETI结束ORG 0030HMAIN: INT0_R: CPL P1.0RETIEND 22有两个外部中断 INT0( P3.2)和 INT1(P3.3), 涉及到的控制位有 TCON中的 IT0和 IT1设置触发方式, IE中的 EA、EX0、 EX1开放中断, IP中的 PX0和 PX1中断优先级设置。 二、外部中断程序设计 例 1、用按键控制输出如图所示,在 INT0引脚( P3.2) 上接一个按键开关,要求每按一次, P1口连接的 8个发光二极管点亮位置左移一位,初态 P1.0亮。P3.2 P1.0P1.1 P1.7+5V23解: 1、分析 。按下键输入低电平,没按下为高电平。设置边沿触发,下降沿有效。按键按下产生一个下降沿触发信号,响应中断,在中断服务程序中对点亮位置左移 P1口高电平亮灯,设 P1的初值为 00000001B=01H,即 P1.0的灯亮。ORG 0000H ; 主程序入口LJMP MAINORG 0003H ; INT0入口LJMP INT0_RORG 0030HMAIN: MOV A, #01H ; 初态SETB EASETB EX0 ; 开中断SETB IT0 ; 设下降沿触发LOOP: MOV P1, A ; 送输出SJMP LOOPINT0_R:RL A ; 中断服务程序RETI ; 中断返回2、程序24例 2、 如图所示,主程序中 P1口连接的 8个发光二极管点亮位置循环左移,当 P3.2引脚上的按键每按一次, P2.0连接的 1个发光二极管状态取反。解: 1、分析 。 主程序初始化后,循环使发光二极管点亮位置左移,移动速度由一软件延时程序决定。每按一次键,产生 INT0中断,使 P2.0的灯状态取反 P3.2 P1.0P1.1 P1.7P2.0+5V25P1口高电平亮灯,设 P1的初值为 00000001B=01H,即 P1.0的灯亮。ORG 0000H ; 主程序入口LJMP MAINORG 0003H ; INT0入口LJMP INT0_RORG 0030HMAIN: MOV A, #01H ; 初态SETB EASETB EX0 ; 开中断SETB IT0 ; 设下降沿触发LOOP: MOV P1, A ; 送输出RL A ; 点亮位置左移LCALL DELAY ; 延时 1sSJMP LOOPINT0_R:CPL P2.0 ; 中断服务程序RETI ; 中断返回END2、程序26例 3、中断优先级的实现过程主程序中 P1口接的 8个灯点亮位置循环左移, P3.2按键按下, P2.0的灯取反; P3.3按键按下, P2.7的灯取反。解: 1、分析 。主程序循环使 P1口亮灯位置左移。P3.2按键按下,产生 INT0中断,对 P2.0的灯取反P3.3按键按下,产生 INT1中断,对 P2.7的灯取反 P3.2P3.3P1.0P1.1 P1.7+5V不设中断优先级,若两键同时按下,则先响应 INT0中断27ORG 0000H LJMP MAINORG 0003H LJMP INT0_RORG 0013H LJMP INT1_RORG 0030HMAIN: MOV A, #01H SETB EASETB EX0 ; INT0SETB EX1 ; INT1 LOOP: MOV P1, A RL A LCALL DELAY SJMP LOOP主程序; INT0中断服务程序INT0_R:CPL P2.0RETI ; INT1中断服务程序INT1_R:CPL P2.7RETI END中断服务程序2、程序28模拟仿真模拟操作过程:1)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年互联网医疗平台用户体验与商业模式创新报告
- 2026年老年金融创新报告及未来五至十年行业发展趋势报告
- 2026年城市规划智慧城市交通系统报告
- 企业并购尽职调查:财务与法律要点
- 智能宠物饮水机滤芯托盘脑机接口:监测宠物健康状况前沿探索
- 农村电网改造技术方案
- 2026年深圳市冷链物流基地可行性研究报告
- 智能宠物饮水机滤芯托盘在智慧养老落地:适老化改造痛点破解
- 新材料石墨烯应用前景与投资价值
- 网络安全态势感知平台建设与应用
- 2024-2025学年吉林省长春市外研版(一起)(2012)六年级下学期7月期末英语试卷含答案
- 气瓶安全操作培训记录课件
- 环保安全知识培训内容
- DBJT15-245-2022 广东省城市轨道交通工程设计规范
- 学生干部留任汇报
- DB21-T 3709-2023 12345政务服务便民热线管理与服务规范
- 《HJ 212-2025 污染物自动监测监控系统数据传输技术要求》
- 民航旅客投诉培训课件
- 高二升高三数学高二数学暑期综合测评卷(19题新高考新结构)(原卷版)
- 初中数学跨学科融合教学案例
- 高中历史(统编版)知识提纲(选必修全册详细版)
评论
0/150
提交评论