版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第5章 MCS - 51单片机的中断 第第5章章 MCS - 51单片机的中断单片机的中断 5.1 中断的概述中断的概述 5.2 MCS - 51中断系统中断系统5.3 中断系统的应用中断系统的应用 第5章 MCS - 51单片机的中断 5.1 中中 断断 的的 概概 述述 1. 中断中断 中断是指计算机在执行某一程序的过程中中断是指计算机在执行某一程序的过程中, 由于计算机系由于计算机系统内、统内、 外的某种原因外的某种原因, 而必须中止原程序的执行而必须中止原程序的执行, 转去执行相转去执行相应的处理程序应的处理程序, 待处理结束之后待处理结束之后, 再回来继续执行被中止的原再回来继续执行
2、被中止的原程序的过程。程序的过程。 采用了中断技术后的计算机采用了中断技术后的计算机, 可以解决可以解决CPU与外设之间速与外设之间速度匹配的问题度匹配的问题, 使计算机可以及时处理系统中许多随机的参使计算机可以及时处理系统中许多随机的参数和信息数和信息, 同时同时, 它也提高了计算机处理故障与应变的能力。它也提高了计算机处理故障与应变的能力。 第5章 MCS - 51单片机的中断 2. 中断源中断源 中断源是指在计算机系统中向中断源是指在计算机系统中向CPU发出中断请求的来发出中断请求的来源源, 中断可以人为设定中断可以人为设定, 也可以是为响应突发性随机事件而也可以是为响应突发性随机事件而
3、设置。通常有设置。通常有I/O设备、实时控制系统中的随机参数和信息设备、实时控制系统中的随机参数和信息故障源等。故障源等。 第5章 MCS - 51单片机的中断 3. 中断优先级中断优先级 中断优先级越高中断优先级越高, 则响应优先权就越高。当则响应优先权就越高。当CPU正在执正在执行中断服务程序时行中断服务程序时, 又有中断优先级更高的中断申请产生又有中断优先级更高的中断申请产生, 这时这时CPU就会暂停当前的中断服务转而处理高级中断申请就会暂停当前的中断服务转而处理高级中断申请, 待高级中断处理程序完毕再返回原中断程序断点处继续执待高级中断处理程序完毕再返回原中断程序断点处继续执行行, 这
4、一过程称为中断嵌套。这一过程称为中断嵌套。 mainaimoban第5章 MCS - 51单片机的中断 4. 中断响应的过程中断响应的过程 (1) 在每条指令结束后在每条指令结束后, 系统都自动检测中断请求信号系统都自动检测中断请求信号, 如果如果有中断请求,且有中断请求,且CPU处于开中断状态下处于开中断状态下, 则响应中断。则响应中断。 (2) 保护现场保护现场, 在保护现场前在保护现场前, 一般要关中断一般要关中断, 以防止现场被以防止现场被破坏。保护现场一般是用堆栈指令将原程序中用到的寄存器推破坏。保护现场一般是用堆栈指令将原程序中用到的寄存器推入堆栈。入堆栈。 (3) 中断服务中断服
5、务, 即为相应的中断源服务。即为相应的中断源服务。 (4) 恢复现场恢复现场, 用堆栈指令将保护在堆栈中的数据弹出来用堆栈指令将保护在堆栈中的数据弹出来, 在在恢复现场前要关中断恢复现场前要关中断, 以防止现场被破坏。在恢复现场后应及以防止现场被破坏。在恢复现场后应及时开中断。时开中断。 (5) 返回返回, 此时此时 CPU将推入到堆栈的断点地址弹回到程序计将推入到堆栈的断点地址弹回到程序计数器数器, 从而使从而使CPU继续执行刚才被中断的程序。继续执行刚才被中断的程序。 第5章 MCS - 51单片机的中断 5.2 MCS - 51中断系统中断系统图图5.1 MCS - 51中断系统结构框图
6、中断系统结构框图 第5章 MCS - 51单片机的中断 5.2.1 中断源中断源 表表 5.1 8051 中中 断断 源源第5章 MCS - 51单片机的中断 1. 特殊功能寄存器特殊功能寄存器TCON中的标志中的标志 (MSB)(LSB)图 5.2 TCON格式 第5章 MCS - 51单片机的中断 2. 特殊功能寄存器特殊功能寄存器SCON 图图 5.3 SCON格式格式 (MSB)LSB第5章 MCS - 51单片机的中断 5.2.2 中断控制中断控制 1. 中断允许控制中断允许控制 MCS - 51单片机有单片机有 5个个8052有有 6个中断源个中断源, 为了使每为了使每个中断源都能
7、独立地被允许或禁止个中断源都能独立地被允许或禁止, 以便用户能灵活使用以便用户能灵活使用, 它它在每个中断信号的通道中设置了一个中断屏蔽触发器。在每个中断信号的通道中设置了一个中断屏蔽触发器。 只有该触发器无效只有该触发器无效, 它所对应的中断请求信号才能进入它所对应的中断请求信号才能进入CPU, 即此类型中断开放。即此类型中断开放。 否则否则, 即使其对应的中断标志位置即使其对应的中断标志位置1, CPU也不会响应中断也不会响应中断, 即此类型中断被屏蔽了。同时即此类型中断被屏蔽了。同时CPU内还设置了一个中断允许触发器内还设置了一个中断允许触发器, 它控制它控制CPU能否响应中断。能否响应
8、中断。 第5章 MCS - 51单片机的中断 图 5.4 IE格式 (MSB)(LSB)第5章 MCS - 51单片机的中断 2. 中断优先级中断优先级 (MSB)(LSB)图 5.5 IP的格式 第5章 MCS - 51单片机的中断 表 5.2 同级内第二优先级次序 第5章 MCS - 51单片机的中断 例如, 某软件中对寄存器IE、 IP设置如下: MOV IE, 8FH MOV IP, 06H 则此时该系统中: CPU中断允许; 允许外部中断 0、 外部中断 1、 定时器 /计数器 0、 定时器 /计数器1提出的中断申请; 允许中断源的中断优先次序为: 定时器 /计数器 0外部中断 1外
9、部中断 0定时器/计数器 1。 第5章 MCS - 51单片机的中断 5.2.3 中断响应中断响应 1. 中断响应的条件中断响应的条件 (1) 同级或高优先级的中断已在进行中; (2) 当前的机器周期还不是正在执行指令的最后一个机器周期换言之, 正在执行的指令完成前, 任何中断请求都得不到响应); (3) 正在执行的是一条 RETI或者访问特殊功能寄存器 IE或 IP的指令换言之, 在 RETI或读写 IE或 IP之后, 不会马上响应中断请求, 而至少执行一条其它指令之后才会响应)。 第5章 MCS - 51单片机的中断 2. 中断响应过程中断响应过程 单片机一旦响应中断请求单片机一旦响应中断
10、请求, 就由硬件完成以下功能就由硬件完成以下功能: (1) 根据响应的中断源的中断优先级根据响应的中断源的中断优先级, 使相应的优先级使相应的优先级状态触发器置状态触发器置 1; (2) 执行硬件中断服务子程序调用执行硬件中断服务子程序调用, 并把当前程序计数并把当前程序计数器器PC的内容压入堆栈的内容压入堆栈; (3) 清除相应的中断请求标志位串行口中断请求标清除相应的中断请求标志位串行口中断请求标志志 RI和和 TI除外)除外); mainaimoban (4) 把被响应的中断源所对应的中断服务程序的入口把被响应的中断源所对应的中断服务程序的入口地址中断矢量送入地址中断矢量送入PC, 从而
11、转入相应的中断服务程序。从而转入相应的中断服务程序。 第5章 MCS - 51单片机的中断 表 5.3 中断服务程序入口地址表 第5章 MCS - 51单片机的中断 例如, 现有外部中断 1 提出申请, 且主程序中有R0、 R1、 DPTR、累加器A需保护, 则编制程序应为: ORG 0000H AJMP MAIN ORG 0013H LJMP INT1 ORG 0100H MAIN: ; 主程序 ORG 1000H 第5章 MCS - 51单片机的中断 INT1: PUSH ACC ; 中断服务程序 PUSH DPH PUSH DPL PUSH 0 PUSH 1 POP 1 POP 0 PO
12、P DPL POP DPH POP ACC RETI 第5章 MCS - 51单片机的中断 编程中应注意: (1) 在 0000H放一条跳转到主程序的跳转指令, 这是因为 MCS-51单片机复位后, PC的内容变为 0000H, 程序从 0000H 开始执行, 紧接着 0003H是中断程序入口地址, 故在此中间只能插入一条转移指令; (2) 响应中断时, 先自动执行一条隐指令“LCALL 0013H”, 而 0013H至 001BH定时器 1 溢出中断入口地址之间可利用的存储单元不够, 故放一条无条件转移指令。 (3) 在中断服务程序的末尾, 必须安排一条中断返回指令RETI, 使程序自动返回
13、主程序。mainaimoban 第5章 MCS - 51单片机的中断 5.3 中断系统的应用中断系统的应用 例例 1 单步操作的中断实现。单步操作的中断实现。 把一个外部中断设为把一个外部中断设为INT0)设置为电平激活方式。)设置为电平激活方式。其中断服务程序的末尾写上如下几条指令其中断服务程序的末尾写上如下几条指令: JNB P3.2, $ ; 在在INT0变高前原地等待变高前原地等待(死循环死循环) JB P3.2, $; 在在 INT0变低前原地等待变低前原地等待(死循环死循环) RETI ; 返回并执行一条指令返回并执行一条指令 第5章 MCS - 51单片机的中断 如今,若INT0
14、保持低电平, 且允许INT0中断, 则CPU就进入外部中断 0 服务程序, 由于有上述几条指令, 它就会停在 JNB处, 原地等待。当INT0 端出现一个正脉冲由低到高, 再到低时, 程序就会往下执行, 执行RETI后, 将返回主程序, 往下执行一条指令, 然后又立即响应中断,以等待INT0端出现的下一个正脉冲。 这样在INT0端每出现一个正脉冲, 主程序就执行一条指令, 实现了单步执行的目的, 要注意的是, 这个正脉冲的高电平持续时间不小于 3个周期, 以确保 CPU能采集到高电平值。 第5章 MCS - 51单片机的中断 例 2 多中断源。 MCS - 51 单片机有两个外部中断输入端, 当有 2 个以上中断源时, 它的中断输入端就不够了。此时, 可以采用中断与查询相结合的方法来实现。 可以使每个中断源都接在同一个外部中断输入端上, 同时利用输入口线作为多中断源情况下各中断源的识别线。第5章 MCS - 51单片机的中断 图 5.6 多中断源 第5章 MCS - 51单片机的中断 ORG 0003H LJMP INT0INT0: PUSH PSW PU
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新疆维吾尔自治区奇台县第四中学2024届九年级上学期期末考试数学试卷(含答案)
- 《社会调查方法》课件
- 养老院老人疾病预防措施制度
- 保险精算分类费率课件讲解
- 收物业费保密协议书(2篇)
- 《药品采购》课件
- 《高血压规范化诊治》课件
- 2024年度食用菌产业投资基金销售合同3篇
- 2025年南阳货运上岗证模拟考试题
- 2025年洛阳货运考试题库
- 《护理伦理与法律法规》期末考试复习题库(含答案)
- DL-T5190.1-2022电力建设施工技术规范第1部分:土建结构工程
- 欢喜就好-大漆文创产品设计智慧树知到期末考试答案章节答案2024年泉州华光职业学院
- 学困生转化讲座PP课件
- 2024华为员工股权激励协议
- TD/T 1044-2014 生产项目土地复垦验收规程(正式版)
- 模拟电子技术智慧树知到期末考试答案章节答案2024年齐鲁工业大学
- 沈阳市铁西区2024年九年级上册《道德》期末试题与参考答案
- 起重(信号、司索工)安全技术交底记录
- 伤寒论选读智慧树知到期末考试答案章节答案2024年云南中医药大学
- 第22章二次函数二次函数与不等式的关系课件人教版数学九年级上册
评论
0/150
提交评论