




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
5 189C51单片机的中断系统5 1 1计算机中断技术的概念1 中断中断是一项重要的计算机技术 现代的计算机之所以具有实时处理功能 即能对外界发生的事件做出及时处理的功能 就是依靠它们的中断系统 所谓中断就是指计算机在执行某一程序的过程中 A程序 由于计算机系统内 外的某种原因 而必须中止原程序的执行 转去执行相应的处理程序 B程序 待处理结束之后 再回来继续执行被中止的原程序的过程 A程序 其中 A程序我们称为主程序 B程序称为中断服务程序 某种原因称为中断请求 执行B程序的过程称为中断响应 如图5 1所示 图5 1中断响应示意图 采用了中断技术后的计算机 可以解决CPU与外设之间速度匹配的问题 使计算机可以及时处理系统中许多随机的参数和信息 同时 它也提高了计算机处理故障与应变的能力 而且还具有以下优点 1 使用中断方式 可允许多个外围设备与CPU同时工作 实现分时操作 大大提高计算机的利用率 2 利用中断技术 CPU能够及时处理测试 控制系统中许多随机的参数和信息 实现实时处理 大大提高计算机处理问题的实时性和灵活性 3 中断技术是CPU具有处理设备故障 掉电等突发事件的能力 提高计算机系统本身的可靠性 2 中断的响应过程中断响应过程如图5 1所示 1 中断查询 在每条指令结束后 系统都自动检测中断请求信号 如果有中断请求 且CPU处于开中断状态下 则响应中断 2 保护现场 在保护现场前 一般要关中断 以防止现场被破坏 保护现场一般是用堆栈指令将原程序中用到的寄存器压入堆栈 3 中断服务 即为相应的中断源服务 4 恢复现场 用堆栈指令将保护在堆栈中的数据弹出来 在恢复现场前要关中断 以防止现场被破坏 在恢复现场后应及时开中断 5 返回 此时CPU将压入到堆栈的断点地址弹回到程序计数器 从而使CPU继续执行刚才被中断的程序 3 MCS 51中断系统的结构MCS 51单片机具有功能较强的中断系统 其中 共有5个中断源 可实现二级中断服务嵌套 由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求 中断优先级寄存器IP安排5个中断源的优先级 同一优先级内各中断同时提出中断请求时 由内部的查询逻辑确定其响应次序 MCS 51单片机的中断系统的结构如图5 2所示 它由中断请求标志位 中断允许寄存器IE 中断优先级寄存器IP硬件查询电路组成 图5 2MCS 51单片机的中断系统 5 1 2中断源及中断的控制1 MCS 51的中断源中断源是指在计算机系统中向CPU发出中断请求的来源 中断源可以人为设定 也可以将突发性随机事件设置为中断源 MCS 51单片机共有5个中断源 外部中断源2 和 2个片内定时器 计数器T0和T1的溢出中断TF0和TF1 1个片内串行口的发送中断TI和接收中断RI 这5个中断源的优先级分为两级 高级中断和低级中断 其中任何一个中断源的优先级均可由软件设定为高级或低级 能实现两级中断服务程序嵌套 这5个中断源的优先级分为两级 高级中断和低级中断 其中任何一个中断源的优先级均可由软件设定为高级或低级 能实现两级中断服务程序嵌套 1 外部中断0请求 由P3 2引脚输入 它有两种触发方式 通过IT0 TCON 0 来决定是电平触发方式还是边沿触发方式 一旦输入信号有效 则将中断标志IE0置1 并且向CPU发出中断请求 2 外部中断1请求 由P3 3引脚输入 通过IT1 TCON 2 来决定是电平触发方式还是边沿触发方式 一旦输入信号有效 则将中断标志IE1置1 并且向CPU发出中断请求 3 TF0 片内定时器 计数器T0溢出中断请求 当定时器 计数器T0产生溢出时 TF0置1 并向CPU发出中断请求 4 TF1 片内定时器 计数器T1溢出中断请求 当定时器T1产生溢出时 TF1置l 并向CPU发出中断请求 5 RI TI 片内串行口发送 接收中断请求 当通过串行口发送或接收完一帧串行数据时 串行口中断请求标志TI或RI置1 并向CPU发出中断请求 2 中断源请求标志MCS 51单片机的中断系统中 使用何种中断 采用何种触发方式 可通过定时器 计数器控制寄存器TCON和串行控制寄存器SCON的有关位来规定 只要根据这些位的状态就能确定有无中断请求及中断的来源 1 定时器 计数器控制寄存器 TCON TCON是定时器 计数器控制寄存器 字节地址为88H 位地址88H 8FH 它用于保存外部中断请求以及定时器的计数溢出 寄存器的内容及位地址表示如下 与中断有关的位有6位 1 IE0和IE1 外部中断请求标志 当CPU采样到 或 端出现中断请求时 IE0 或IE1 位由硬件置 1 在中断响应完成后转向中断服务时 再由硬件自动清0 2 IT0和IT1 选择外部中断源触发方式控制位 当IT0 0时 为电平触发方式 在这种方式下 CPU在每个机器周期的S5P2期间采样 P3 2 引脚输入电平 若采样为低电平 认为有中断申请 则置IE0标志为1 若采样为高电平 认为无中断申请或中断申请已撤除 则将IE0标志清0 注意 在电平触发方式下 CPU响应中断后不会自动清除IE0标志 也不能由软件清除IE0标志 所以在中断返回前 一定要撤消引脚上的低电平 使IE0置0 否则将再次引起中断 当IT0 1时 为边沿触发方式 CPU在每个机器周期的S5P2期间采样引脚输入电平 如果连续两次采样 一个机器周期中采样为高电平 接着下个机器周期中采样为低电平 则置IE0标志为1 表示外部中断0正在向CPU申请中断 当CPU响应该中断时 IE0由硬件自动清0 由于每个机器周期采样一次外部中断输入电平 在边沿触发方式中 为保证CPU在两个机器周期内检测到由高到低的负跳变 必须保证外部中断源输入的高电平和低电平的持续时间在12个时钟周期以上 IT1是选择外部中断1 触发方式的控制位 其操作功能与IT0类同 3 TF0和TF1 片内定时器 计数器计数溢出标志 定时器 计数器被启动后 从初始值开始进行加1计数 当最高位产生溢出时置该标志位为1 TF0 TF1 向CPU申请中断 直到CPU响应该中断时 才由硬件自动将该标志位清0 定时器 计数器的计数溢出标志位的使用有两种情况 采用中断方式时 作中断请求标志位来使用 采用查询方式时 作查询状态位来使用 2 串行口控制寄存器 SCON SCON是串行口控制寄存器 寄存器地址98H 位地址98H 9FH 寄存器的内容及位地址 与中断有关的只有它的低两位TI和RI 如下 1 TI SCON 1 串行口发送中断请求标志位 当CPU将一个要发送的数据写入串行口发送缓冲器时 就启动发送 每发送完一个串行帧 由硬件置位TI 注意 当CPU响应中断时 TI不能由硬件清0 必须由软件清0 2 RI SCON 0 串行口接收中断请求标志位 当允许串行口接收数据时 每接收完一个串行帧 由硬件置位RI 同样 RI必须由软件清0 串行中断请求由TI和RI的逻辑或得到 即无论是发送标志TI还是接收标志RI 都会产生串行中断请求 注意 CPU复位后 TCON和SCON各位清0 5 1 3中断响应的控制在MCS 51单片机的中断系统中 由中断源向CPU发出中断请求 但CPU是否响应 怎样响应 就得由中断允许控制寄存器以及中断优先级控制寄存器来决定 1 中断允许控制寄存器 IE 中断允许控制寄存器IE的字节地址为A8H 位地址为0A8H 0AFH 通过对IE的编程写入 控制CPU对中断源的开放或禁止 以及对每一中断源是否允许中断 寄存器的内容及地址表示 与中断有关的控制位共有6位 如下 1 EA CPU中断允许总控制位 EA 1 CPU开放中断 这时每个中断源的中断请求被允许或禁止 取决于各自中断允许位的置1或清0 EA 0 CPU屏蔽所有的中断请求 即关中断 2 ES 串行口中断允许控制位 ES 1 允许串行口中断 ES 0 禁止串行口中断 3 ET1和ET0 定时器 计数器中断允许控制位 ETl ET0 1 允许T1 T0 中断 ET1 ET0 0 禁止T1 T0 中断 4 EX1和EX0 外部中断允许控制位 EX1 EX0 1 允许外部中断1 0 中断 EX1 EX0 0 禁止外部中断1 0 中断 在MCS 51单片机系统复位后 IE中各位均被清0 即处于禁止所有中断源的状态 可在系统初始化程序中对IE寄存器编程 注意 以上所说 禁止 并不能禁止中断源的中断请求 它只是禁止CPU去响应中断请求 2 中断优先级控制寄存器 IP MCS 51单片机中断系统具有两级中断优先级管理 每一个中断源均可通过对中断优先级寄存器IP的设置 选择高优先级中断或低优先级中断 并可实现二级中断嵌套 中断优先级寄存器IP的字节地址为0B8H 位地址为0B8H 0BFH 通过对IP的编程 可实现将l个中断源分别设置为高优先级中断或低优先级中断 其格式如下 1 PS 串行口中断优先级设定位 PS 1 高优先级 PS 0 低优先级 2 PT1 片内定时器T1中断优先级设定位 PTl 1 高优先级 PT1 0 低优先级 3 PX1 外部中断1中断优先级设定位 PX1 1 高优先级 PX1 0 低优先级 4 PT0 片内定时器T0中断优先级设定位 PT0 1 高优先级 PT0 0 低优先级 5 PX0 外部中断0中断优先级设定位 PX0 1 高优先级 PX0 0 低优先级 MCS 51单片机中断优先级管理遵循的基本原则是 高优先级中断源可中断正在执行的低优先级中断服务程序 除非在执行低优先级服务程序时 设置了CPU关中断或禁止某些高优先级中断源的中断 同级或低优先级中断源不能中断正在执行的中断服务程序 为了符合上述原则 在中断系统内部设置了两个用户不可访问的优先级状态触发器 其中一个是高优先级状态触发器 置1时表示当前服务的中断是高优先级的 以阻止其他中断申请 另一个是低优先级状态触发器 置1时表示当前服务的中断是低优先级的 它允许被高优先级的中断申请所中断 当系统复位时 IP寄存器被清0 将5个中断源均设置为低优先级中断 如果同一级的几个中断源同时向CPU申请中断 CPU便通过内部硬件查询逻辑按自然优先级决定响应顺序 各中断源按自然优先级由高到低的排列顺序如表5 1所示 表5 1同级中断源内部自然优先级顺序 5 1 4中断服务的流程1 响应中断的条件及过程中断处理过程一般分为3个阶段 即中断响应 中断处理和中断返回 1 中断响应中断响应是指在满足CPU的中断响应条件之后 CPU对中断源中断请求的回答 在这个阶段 CPU要完成中断服务以前的所有准备工作 包括保护断点及把程序转向中断程序的入口地址 1 CPU响应中断的基本条件如下 有中断源发出中断申请 中断总允许位EA 1 即CPU开放中断 请求中断的中断源的中断允许位置1 即该中断源可以向CPU发中断申请 CPU在每个机器周期的S5P2期间 采样中断源 而在下一个机器周期的S6期间按优先级顺序查询各中断标志 如查询到某个中断标志为1 将在再下一个机器周期S1期间按优先级顺序进行中断处理 但在下列任何一种情况存在时 中断响应会被阻止 CPU正在执行同级或高一级的中断服务程序 现行机器周期不是正在执行的指令的最后一个机器周期 即现行指令完成前不响应任何中断请求 当前正在执行的是中断返回指令RETI或访问特殊功能寄存器IE或IP的指令 也就是说 在执行RETI或是访问IE IP的指令后 至少需要再执行 条其他指令 才会响应中断请求 中断查询在每个机器周期都要重复执行 如果CPU响应中断的基本条件已满足 但由于上述3个封锁条件之一而未被及时响应 待封锁中断的条件撤消后 若中断标志也已消失 则本次被拖延的这个中断请求就不会被响应 2 中断响应过程 如果中断响应的条件满足 且不存在中断封锁的情况 则CPU将响应中断源的中断请求 进入中断响应周期 CPU在中断响应周期要完成下列操作 将相应的优先级状态触发器置1 由硬件清除相应的中断请求标志 执行一条由硬件生成的长调用指令LCALL 该指令将自动把断点地址 PC值 压入堆栈保护起来 然后将对应的中断入口地址送入程序计数器PC 使程序转向该中断入口地址 见表5 2 去执行中断服务程序 表5 2中断源入口地址表 3 中断服务与返回 中断服务程序从入口地址开始执行 一直到返回指令 RETI 为止 这个过程称为中断服务 在编写中断服务程序时应注意以下几点 因各入口地址之间只相隔8个字节 一般的中断服务程序是存放不下的 所以通常在中断入口地址单元处存放一条无条件转移指令 这样就可使中断服务程序灵活地安排在64KB程序存储器的任何空间 若要在执行当前中断程序时禁止更高优先级中断 可先用软件关闭CPU中断 或禁止某中断源中断 在中断返回前再开放中断 在保护现场和恢复现场时 为了不使现场数据受到破坏或造成混乱 通常规定CPU不响应新的中断请求 因此在编写中断服务程序时 应注意在保护现场之前要关中断 在保护现场之后根据需要开中断 以便允许更高级的中断请求中断它 在恢复现场之前也应关中断 恢复现场后再开中断 中断服务程序的最后一条是返回指令RETI RETI指令的执行标志着中断服务程序的结束 该指令将清除响应中断时被置位的优先级状态触发器 然后自动将断点地址从栈顶弹出 装入程序计数器PC 使程序返回到被中断的程序断点处 继续向下执行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 渗透市场意识的2024年国际商业美术设计师考试试题及答案
- 六上生命教育试题及答案
- 2024年纺织设计行业新趋势试题及答案
- 助理广告师考试重点内容概述试题及答案
- 分析纺织品市场趋势对检验的影响因素试题及答案
- 2024年纺织对接新技术试题及答案
- 智能家居知识试题及答案
- 极致提升广告设计师能力试题及答案
- 2024年纺织品检验员证书考试深度分析试题及答案
- 意外伤害试题及答案库
- 污水处理厂设备运行的管理及维护措施
- 1-江苏省冶金等工贸企业安全生产标准化运行质量审计评分表-
- 弘扬航天精神拥抱星辰大海!课件高一上学期载人航天主题班会
- 《excel数据分析》课件
- DB1310-T 223-2020 小麦节水绿色丰产栽培技术规程
- 小学六年级科学(人教版)《各种各样的自然资源》-教学设计、课后练习、学习任务单
- 215kWh工商业液冷储能电池一体柜用户手册
- 燃气安全事故处理及应急
- 汽车发动机构造与维修课件 第六章 燃油供给系
- 可再生能源预测技术研究
- 2024-2030年中国耐火材料行业供需分析及发展前景研究报告
评论
0/150
提交评论