




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验二 中断优先级控制及中断保护实验实验二 中断优先级控制及中断保护实验 自动化 1002 吴会欢 201019100227 一 实验目的一 实验目的 1 掌握单片机中断机制 2 熟悉中断的应用和编程 二 实验设备二 实验设备 统一电子开发平台 三 实验要求三 实验要求 USB 线连接开发板 电源开关 S1 打到 usb 位置 J5 跳针跳到 1 4 位置 按键 B 对应 INT0 P3 2 按键 F 连接 INT1 P3 3 在平时状态下 发光二极管行以 600ms 的时间间 隔 依次点亮 B 键按下时 INT0 中断处理程序点亮 LED4 对应的发光管 2 秒钟 其他发光 管熄灭 F 键按下时 LED5 对应发光管点亮 2 秒 其他发光管熄灭 四 实验原理四 实验原理 通常一个微处理器读取外围设备 如键盘等 的输入信息的方法有轮询 Polling 及中 断 Interrupt 两种 轮询的方法是 CPU 依照某种既定法则 依序询问每一外围设备 I O 是否 需要服务 此种方法 CPU 需花费一些时间来做询问服务 当 I O 设备增加时 询问服务时间也相对增加 因此势必浪费许多 CPU 时间 降低整体运行的效率 使用中断是一个较好的解决方法 使用中断使系统 对外部设备的请求响应 更加灵敏 并且不需要占用 CPU 的时间进行轮询 但是 当使用中断 特别是有 多个中断嵌套时要特别 注意内存单元内容的保护 4 1 8051 中断结构 当中断发生后 程序将跳至对应中断入口地址去执行中断子程序 或称中断服务 例程 Interrupt Service Routine 这些特殊的地址称为中断向量 例如当 80C51 外部中断 INTl 发 生时 会暂停主程 序的执行 跳至地址 0013H 去执行中断服务例程 直到 RETI 指令后 才返回主 程序继续执行 MCS 51 系列的程序内存中有 7 个矢量地址 叙述如下 1 00H 复位 当第 9 脚 RESET 为高电平 CPU 会跳至地址 00H 处开始执行程 序 亦即程序一定要从地 址 00H 开始写起 2 03H 外部中断 0 当 INT0 引脚由高电位变至低电位时 CPU 会接受外部中 断 0 并跳至地址 03H 处去执行中断子程序 3 0BH 计时 计数器 0 中断 当 CPU 接受计时 计数器 0 中断置位而产生中断 要求时 会跳至地址 0BH 处去执行中断子程序 4 13H 外部中断 1 当 INTl 引脚由高电位变至低电位时 CPU 会接受外部中 断 1 并跳至地址 13H 处去执行中断子程序 5 1BH 计时 计数器 1 中断 当 CPU 接受计时 计数器 1 中断置位而产生中 断要求时 会跳至地址 1BH 刻去执行中断子程序 6 23H 串行中断 1 当串行端口传送数据或接收数据完毕时 CPU 会接受串行 中断 并跳至地址 23H 处去执行中断子程序 7 2BH 计时 计数器 2 中断 当 CPU 接受计时 计数器 2 产生中断要求时 会跳至地址 2BH 处去执 行中断子程序 此中断仅 8052 系列才有 2 中断使能位 8051 针对中断提供两层使能 第一层为 EA 全局使能控制 第二层为分别控制 EX0 ET0 EXl ETl ES ET2 当 8051 在初始状态时 寄存器的各个中断使能位都预设为 0 即所 有中断都禁止 故欲 允许中断时 应先使能相对应的中断 当中断产生后 此中断状态会记录于定时 器 计数器控制寄存器 Timer CounterControlRigister TCON 的中断请求标志 InterruptRequest flag 中 当标志被设立 表示中断已发生 由图 1 可知 当外部中断或定时器 0 定时器 1 中断发生时 CPU 都可以判别是哪种 中断 因此当这四个中断发生时 中断服务例程被执行后 CPU 会主动清除中断 请求标志 对于其他的 中断 由于 CPU 无法判别 因此中断请求标志需由程序指令来清除 另外 在 TCON 中尚有两个位称为 中断型式控制位 Wype control bit 经由这两个位的设定 可以边择外部中断为负 边缘触发或低电平 触发 欲设定中断使能与否 必须规划位于特殊功能寄存器中的中断使能寄存器 IE Interrupt Enable Register 其位于地址 A8H 是一个可位寻址的寄存器 3 中断保护 由于各个中断执行的起始地址间仅有 8 个 Bytes 因此欲在此空间内完成中断服务 例程是有困难的 通常中断服务例程是置于主程序后面 而在中断向量地址只书写跳跃指令 跳至 相对应中断服务例程去 执行 当执行新的中断服务例程时 注意不可以破坏旧有的数据和状态 因此在 编写时还要保存各个寄 存器的数据 通常会被更改的数据 如 ACC PSW 等 可以利用堆栈在执行中断 服务例程之前就将其 PUSH 起来 待执行结束后再将相关寄存器 POP 即可 另外 因为 8051 可任意选择四 个寄存器库中的一组寄 存器 所以利用选择不同寄存器库的方式亦可达到数据保存的目的 4 中断优先级 8051 对于各种中断优先权采用双层结构 首先对于优先权可由中断优先权寄存器 Interrupt Priority IP 设定该中断为高优先权或低优先权 高优先权可以中断低优先权 但是 当优先权相同时 都 为高优先权或低优先权 则由内部的轮询顺序决定哪一个中断被接受 轮询次序 如图 1 所示 5 实验原理图 六 实验步骤六 实验步骤 中断优先级控制及中断保护实验 注意 J14 跳到 8LED J15 跳到 8LED J5 跳到 1 4 SW1 上的开关 1 打开 按 B 键控制 INT0 按 F 键控制 INT1 ORG 0000H AJMP MAIN 跳至主程序 ORG 03H 外部中断 0 中断向量地址 AJMP INT0 SUB ORG 13H 外部中断 1 中断向量地址 AJMP INT1 SUB ORG 0030H MAIN 使能 INT0 INTl MOV IE 10000101B 使能 INT0 INTl MOV TCON 00000101B 设 INT0 INTl 负缘触发 MOV IP 01H 中断 0 优先 MOV SP 30H 将堆栈移至 30H START MOV P1 0FEH 注意 16 进制数 A F 前要加 0 MOV A P1 ACALL DELAY200MS 调用延时子程序 以使观察 LED 的状态 LOOP1 RR A MOV P1 A ACALL DELAY200MS 调用延时子程序 以使观察 LED 的状态 ACALL DELAY200MS ACALL DELAY200MS AJMP LOOP1 DELAY2S 延迟 2S 子程序 MOV R2 0AH DEL 1 ACALL DELAY200MS DJNZ R2 DEL 1 RET DELAY200MS 延迟 200ms 子程序 MOV R1 014H DEL 0 ACALL DELAY10ms DJNZ R1 DEL 0 RET DELAY10ms 延迟 10ms 子程序 MOV R5 0BH DEL 2 MOV R3 0EFH DEL 3 MOV R4 09H DJNZ R4 DJNZ R3 DEL 3 DJNZ R5 DEL 2 RET DELAY10MS 程序占用时钟周期为 2 2 4 9 4 0XEF 4 11 110484 一个时钟周期是 T 1 11059200s 故延迟时间为 114084 T 9 990234375ms INT0 SUB INT0 中断子程序 CLR EA 清除中断 ACALL DELAY10ms 延迟 10ms JNB INT0 HAVEKEY0 确认有键 SETB EA 开启全局中断 RETI HAVEKEY0 PUSH PSW 保存寄存器数据 PUSH ACC SETB RS0 选择寄存器组 1 CLR RS1 选择寄存器组 1 SETB EA 开启全局中断 MOV P1 0FEH ACALL DELAY2S POP ACC 出保存寄存器数据 POP PSW RETI INT1 SUB 1NT1 中断子程序 CLR EA 清除中断 ACALL DELAY10MS 延迟 JNB INT1 HAVEKEY1 确认有键 SETB EA 开启全局中断 RETI HAVEKEY1 以下请仿照中断 IN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年风湿免疫科风湿性疾病诊治试题答案及解析
- 2025年教师资格高频难、易错点题及参考答案详解(能力提升)
- 2025年广西农业农村厅直属事业单位招聘128人笔试备考题库含答案详解
- 农发行牡丹江市林口县2025秋招结构化面试15问及话术
- 2025年人教版8年级数学下册《平行四边形》专题攻克练习题(详解)
- 2025年反射疗法师大赛理论试题及答案详解(各地真题)
- 监理师考试题目及答案
- 驾校译音考试题及答案
- 农发行娄底市涟源市2025秋招小语种岗笔试题及答案
- 农发行吕梁市孝义市2025秋招笔试价值观测评题专练及答案
- 养老护理员四级考试题库及答案
- 建筑工程质量控制体系
- 中国电子科技集团公司第三十六研究所新能源、电子项目(二期)环评报告
- 工艺验证检查指南2025
- 临床教学中的情感教育PBL教学法的探索与实践
- 建筑工程碳排放计量指南
- 安全生产大检查方案
- 《劳动教育》 课件 专题一端正劳动态度 第四节 劳动最美丽
- 备考2025年成人高考-专升本-政治考点及必背知识点大全
- 小儿疝气科普知识
- 变电站电气设备巡视-变压器巡视(变电站电气运行)
评论
0/150
提交评论