单片机原理及应用-第三章(1讲).pptVIP

  • 2
  • 0
  • 约3.21千字
  • 约 19页
  • 2016-07-28 发布于江西
  • 举报
单片机原理及应用-第三章(1讲).ppt

第三章 MCS-96(8098) 中断系统;;§3.2 MCS-96(8098) 中断系统及中断源 一.中断源和中断类别 MCS-96(8098)单片机包含有8种中断类别,20个中断源。分别为: 外部中断:EXTINT(P2.2)、ACH7(P0.7)引脚产生正跳变电平,申请中断 串行口中断:发送完成标志TI、接收完成标志RI决定中断的产生 软件定时器:设定的软件定时器到时,产生中断请求 高速输入线HSI.0:当HSI.0引脚产生正跳变电平,申请中断 高速输出:HSO子系统中断申请,当HSO任一引脚在预定时刻被置1或置0,申请中断 高速输入HSI:当HSI保持寄存器有数或FIFO满可申请HSI 中断。 A/D转换器:当A/D转换器完成一次A/D转换,申请中断。 定时器溢出:当定时器T1、T2的计数器产生溢出,申请中断。 ;;二.中断系统的硬件结构及工作原理 中断系统包括:跳变检测器、中断挂号寄存器、中断屏蔽寄存器、门控电路、优先级编码器、中断发生器。控制中断是否产生的寄存器分别为:中断挂号寄存器与中断屏蔽寄存器,以及PSW中的中断控制位 I。 工作原理: 跳变检测器:用于检测8个中断类别输入端的正跳变 中断挂号寄存器:将跳变检测器检测到的8个中断类别输入端的正跳变保持在对应位(置“1”) 中断屏蔽寄存器:通过指令设定允许响应某些中断类别(置“1” )或屏蔽某些中断类别(置“0” ) 中断总体开关 I:通过指令设定允许响应中断(置“1” )或屏蔽中断(置“0” ) 门控电路:通过对中断屏蔽寄存器及中断总体开关 I的检测,决定是否允许中断挂号寄存器中的对应中断申请进入中断系统的下一级电路。 优先级编码器:对通过门控的各类别中断申请按照中断系统给出的优先级进行判别,当在同一时刻有多个中断类别申请中断时,依次让中断优先级别高的中断先执行。 中断发生器:进入中断发生器的中断必须响应。过程为:清除跳变检测器的对应位(置“0” ),将断点地址弹入堆栈(PC压栈),从中断向量表的对应地址取出中断服务程序的首地址装入PC (硬件调用过程) ,转向执行中断服务程序(中断事件的处理过程)。当中断服务程序执行完毕,通过返回指令RET将堆栈中的断点地址重新装入PC ,程序返回断点处执行被打断的程序(硬件调用过程) ;;三.中断向量表 存放中断服务程序首地址的存储空间 地址分配:2000H~2011H (18个地址单元) 按照优先级别的不同,每个中断类别分别占用特定的地址单元。同一类别的多个中断源共用一个中断向量地址(对于多个中断源占用一个中断向量地址的情况,需要通过标志判别来决定各中断服务程序的流向)。 ;§3.3 MCS-96(8098) 中断控制 一.中断源的接通与断开 1. IOC1对应位的控制(置1或清0选择同一中断类别的不同中断源) ;三、中断屏蔽寄存器INT-MASK(08H ) 根据需要,对某些中断类别作屏蔽处理(对应位置“0”) ;§3.4 中断处理及程序设计 如果在单片机系统中要运用到中断技术,对于程序设计而言,要用到较为特殊的程序设计方法。涉及到中断的程序通常包含两部分,一是在主程序中要对与中断有关的寄存器作初始化处理,二是要编制独立的中断服务程序(需要说明的是,中断服务程序不是通过子程序调用方式运行,而是当中断条件满足是,CPU主动执行)。 下图为中断程序设计流程图;例:在某单片机应用系统中,需要开放软件定时器,外中断EXTINT,堆栈区将设置在片内RAM从0FFH地址开始的存储空间。软件定时器中断服务程序将放置在3000H地址开始的存储空间,外中断EXTINT中断服务程序将放置在3500H地址开始的存储空间,请设置中断向量表的相关地址内容,编写主程序中的中断初始化程序。 ORG 200AH DW 3000H ORG 200EH DW 3500H ORG 2080H LD SP,#0100H ;设堆栈指针SP CLRB INT_PENDING ;清中断挂号寄存器 ANDB IOC1, ;选EXTINT外中断引脚中断源

文档评论(0)

1亿VIP精品文档

相关文档