第5章MCS 51单片机中断.pptVIP

  • 4
  • 0
  • 约1.07万字
  • 约 52页
  • 2018-06-07 发布于福建
  • 举报
第5章MCS 51单片机中断

5.1 中断概述  5.2 MCS - 51中断系统 5.3 中断系统的应用 5.4 空调制冷控制系统温度预置案例 教学目的 1、理解中断的概念及中断处理过程。 2、掌握MCS-51单片机的中断系统的中断源、中断控制及中断处理方法。 3、学会利用MCS-51单片机中断解决实际问题。 随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点: 5.2 MCS-51中断系统 中断系统是指能实现中断功能的那部分硬件电路和软件程序。 中断系统机构需要完成的工作: 1.自动、及时响应中断(异常事件) 2 . 进行中断优先权的排队 3.实现中断嵌套 4.实现中断返回 引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。 MCS-51中断系统 TCON寄存器——T0和T1控制寄存器 2.中断优先级控制 MCS-51单片机有两个中断优先级:高级中断和低级中断。 每一个中断源都可以通过编程确定为高优先级中断或低优先级中断。当有多个中断源提出中断请求时,CPU先响应高级中断,然后再响应低级中断。 若CPU当前正在为低优先级中断服务,在开中断的条件下,它能被另一个高优先级中断请求所中断,转去为高级中断服务,再返回到被中断了的低级中断的服务程序,这即为中断嵌套。 中断嵌套过程 MCS-51系列单片机中断响应原则: (1)高级中断请求可以中断正在执行的低级中断。 (2)同级或低级中断请求不能中断正在执行的中断。 (3)多个中断源同时向CPU申请中断,首先响应优先级别最高的中断请求;多个同级中断源同时向CPU申请中断,CPU通过内部硬件查询,按自然优先级确定优先响应哪一个中断请求。 CPU封锁对中断的响应的情况: 若外部中断定义为电平触发方式,中断标志位的状态随CPU在每个机器周期采样到的外部中断输入引脚的电平变化而变化,这样能提高CPU对外部中断请求的响应速度。但外部中断源若有请求,必须把有效的低电平保持到请求获得响应时为止,不然就会漏掉;而在中断服务程序结束之前,中断源又必须撤消其有效的低电平,否则中断返回之后将再次产生中断。 5.3 中断系统的应用 5.3.2 中断服务程序 中断服务程序是一种具有特定功能的独立程序段,它为中断源的特定要求服务,以中断返回指令结束。在中断响应过程中,断点的保护主要由硬件电路来完成。对用户来说,在编写中断服务程序时,主要需考虑现场的保护与恢复。 1.中断服务程序的起始地址 每个中断向量地址只间隔了8个单元,如0003H~000BH,在如此少的空间中是无法存储一个比较完整的中断服务程序的,一般在相应的入口处定一条跳转指令,并以跳转指令的目标地址作为中断服务程序的起始地址进行编程。 2.中断服务程序编写中的注意事项 (1)视需要确定是否保护现场。 (2)及时清除那些不能被硬件自动清除的中断请求标志,以免产生错误的中断。 (3)中断服务程序中的压栈(PUSH)与出栈(POP)指令必须成对使用,以确保中断服务程序的正确返回。 (4)主程序和中断服务程序之间的参数传递与主程序和子程序的参数传递方式相同。 例5-4:写出外中断1为低电平触发、高优先级的中断系统初始化程序。 解:(1)采用位操作指令 SETB EA SETB EX1 ;开外中断1中断 SETB PX1 ;令外中断1为高优先级 CLR IT1 (2)采用字节型指令 MOV IE,#84H ;开外中断1中断 ORL  IP,#04H ;令外中断1为高优先级 ANL  TCON,#0FBH;令外中断1为电平触发 5.3.3 程序的单步执行方式案例 在计算机中,程序计数器PC的内容是将要执行的指令的地址,PC具有自动加1的功能,因此通常情况下程序是顺序执行的。这种连续执行方式难以适应调试程序的要求,为便于用户在调试时排除程序中的错误,在单片机开发系统中都具有单步运行用户程序的功能。用户每按一次单步执行键,CPU就执行一条指令,然后进入等等状态。 单步中断的实现方法: 把电路设计成不按键时为 低电平,按一次单步键则产生一个正脉冲。因此在没有按下键时(不产生正脉冲),CPU总是处于响应中断的状态(设置 为电平触发方式)。 5.4 空调制冷控制系统温度预置案例 ;外部中断0服务程序入口 ORG 0003H SJMP UP ;外部中断1服务程序入口 ORG 0013H SJMP DOWN 温度设定中断子程序:

文档评论(0)

1亿VIP精品文档

相关文档