资源描述
编辑ppt1第七章:中断操第七章:中断操作和中断系统作和中断系统7-1 概述概述7-2中断处理过程中断处理过程7-3 中断优先级和中断嵌套中断优先级和中断嵌套7-4 可编程中断控制器可编程中断控制器8259A编辑ppt27-1 概述概述实时操作实时操作 外设外设 CPU,再再CPU 外设外设例:外设键盘,原为空闲状态,现开始工作,例:外设键盘,原为空闲状态,现开始工作,CPU如何知道如何知道键盘何时工作呢?键盘何时工作呢?两种方法两种方法:a.每隔一段时间采样每隔一段时间采样b.中断请求中断请求 显然,中断请求的方法较合理显然,中断请求的方法较合理中断定义中断定义:当有外部数据输入或内部异常时,发送请求给:当有外部数据输入或内部异常时,发送请求给CPU,CPU暂时停止正在运行的程序,处理中断结束后,暂时停止正在运行的程序,处理中断结束后,返回继续运行先前的程序。返回继续运行先前的程序。两个最重要的特点两个最重要的特点:可返回性,现场保护可返回性,现场保护发送请求发送请求控制信号控制信号断点保护断点保护编辑ppt31、中断源:引起程序中断的事件,内部中断、外部中断、中断源:引起程序中断的事件,内部中断、外部中断2、中断响应:对外部中断而言,、中断响应:对外部中断而言,INTA对对INTR的响应的响应3、中断向量,中断向量表中断向量,中断向量表 中断向量中断向量:中断服务子程序的入口地址(逻辑地址)中断服务子程序的入口地址(逻辑地址)中断类型码中断类型码:中断向量的编号。:中断向量的编号。0-255,与中断向量是一一,与中断向量是一一对应的对应的 中断向量表中断向量表:内存中开出的一定区域,用来存储中断向量:内存中开出的一定区域,用来存储中断向量一、中断概念一、中断概念CS:IP编辑ppt41 1个中断向量必须用个中断向量必须用4 4个存储单元来存储个存储单元来存储(1 1个地址个地址CS CS:IPIP,分别有,分别有1616位,而存储单元内容位,而存储单元内容8 8位,所位,所以需要以需要4 4个)个)地址低地址低高高 如右图所示存放如右图所示存放CPU在内存中开出在内存中开出1024个字节来存储中断向量,即个字节来存储中断向量,即00000H00000H003FFH 003FFH (中断向量表,(中断向量表,内存中内存中0段,段,1K1K字节)字节)IP 低低8IP 高高8CS 低低8CS 高高8n n+1 n+2 n+3编辑ppt5例例1 1:中断类型号:中断类型号 中断向量地址中断向量地址 中断向量中断向量 4 10H4 10H13H13H 32H C8H 32H C8HCBHCBH例例2 2:中断类型号:中断类型号64D=40H64D=40H,中断操作过程:,中断操作过程:v中断向量地址中断向量地址64D64D*4=256D=00100H4=256D=00100H。v若中断向量中内容如图若中断向量中内容如图 则则CS CS:IP=1312 IP=1312:11101110v转向中断服务程序转向中断服务程序中断返回到中断返回到INT 40HINT 40H指令的下一条指令指令的下一条指令10H11H12H13H00100H 00101H 00102H 00103H内容内容编辑ppt6各个外设的中断服务子程序的入口地址集中在一个表各个外设的中断服务子程序的入口地址集中在一个表(中断向量表)中,(中断向量表)中,CPU响应中断时,根据中断源提供响应中断时,根据中断源提供的中断类型号的中断类型号 i,i4在中断向量表查找对应的中断在中断向量表查找对应的中断服务子程序服务子程序 i 的入口地址,内容装入的入口地址,内容装入CS、IP,转而执行,转而执行中断服务子程序中断服务子程序 i编辑ppt74、中断优先级:、中断优先级:当同时有多个中断请求,先响应优先级高的当同时有多个中断请求,先响应优先级高的当一个中断服务程序正在执行时,又一个中断源申请中断:当一个中断服务程序正在执行时,又一个中断源申请中断:高不睬低,停低转高高不睬低,停低转高 中断嵌套中断嵌套5、中断屏蔽、中断屏蔽中断源中断源硬件屏蔽硬件屏蔽CPU的的IFCPU编辑ppt8二、中断分类二、中断分类1 1、内部中断(软件中断)、内部中断(软件中断)中断指令中断指令 INT nINT n n n中断类型码中断类型码 n=0n=0255255由由CPUCPU的运算错误引起的:的运算错误引起的:a.a.除法错中断:除法错中断:INT 0INT 0(除数为零或商超过范围,自动产生中断)(除数为零或商超过范围,自动产生中断)b.b.溢出中断:溢出中断:INT 4 INT 4 (当(当OF=1OF=1,且在程序中有,且在程序中有INTOINTO指令,产生中断)指令,产生中断)由调试程序由调试程序debugdebug设置的中断设置的中断 a.a.单步中断:单步中断:INT 1 INT 1(当(当TF=1TF=1,每执行完一条指令,产生,每执行完一条指令,产生中断)中断)b.b.断点中断:断点中断:INT 3 INT 3(利用(利用G G命令设置断点,当程序执行到断点,产生中断)命令设置断点,当程序执行到断点,产生中断)编辑ppt9特点:特点:由指令产生,中断类型码包括在指令中,不需要取中断由指令产生,中断类型码包括在指令中,不需要取中断类型码类型码是可预见性的,是人为预先安排,中断处理子程序与主是可预见性的,是人为预先安排,中断处理子程序与主程序间有数据的传送。而硬件中断,两者之间则是相互程序间有数据的传送。而硬件中断,两者之间则是相互独立独立编辑ppt102 2、外部中断(硬件中断)、外部中断(硬件中断)不可屏蔽中断不可屏蔽中断NMINMI a.a.上升沿触发上升沿触发 b.CPU b.CPU必须予以响应,不能用必须予以响应,不能用IFIF屏蔽屏蔽 c.c.INT 2INT 2,中断,中断类型码为类型码为2,中断向量固定存放于中断向量固定存放于00008H00008H 0000BH0000BH中中 d.d.用于发生重大故障时申请中断用于发生重大故障时申请中断可屏蔽中断可屏蔽中断INTRINTR a.a.电平触发电平触发 b.b.是否响应,与是否响应,与IFIF有关有关 c.c.中断类型号由硬件连线决定中断类型号由硬件连线决定 d.d.一般事件申请中断一般事件申请中断编辑ppt11CPU内部规定的优先级别:内部规定的优先级别:内部中断(除法错,溢出,内部中断(除法错,溢出,INT n)NMIINTRTF单步中断单步中断 高高 低低编辑ppt127-2 中断处理过程中断处理过程一、一、CPU响应中断的过程响应中断的过程参见课本参见课本P268 流程图流程图CPUCPU自动完成的工作自动完成的工作STEP 1STEP 1STEP 2STEP 2STEP 3STEP 3STEP STEP 4 4STEP STEP 5 5STEP 6STEP 6STEP 7STEP 7握手握手信号信号 取中取中断类断类型码型码FLAGSFLAGS入栈入栈清除清除IF IF、TFTFCSCS入入栈栈IPIP入入栈栈中断向中断向量偏移量偏移地址装地址装入入IPIP中断向中断向量段地量段地址装入址装入CSCSINTR才有才有CS、IP为被中断程序为被中断程序的下一条指令的地址的下一条指令的地址编辑ppt13内部中断、内部中断、NMINMI中断、单步中断,均无须取中断类型码。中断、单步中断,均无须取中断类型码。事先由系统约定好了事先由系统约定好了断点保护断点保护(可返回可返回)由由CPUCPU自动完成;现场保护由编程完成自动完成;现场保护由编程完成 INT转入中断子程序和转入中断子程序和CALL调用子程序比较,两者不同处:调用子程序比较,两者不同处:多了标志(多了标志(FLAGS)入栈)入栈 CPU自动关中断。若想在中断响应过程中,允许中断嵌套,自动关中断。若想在中断响应过程中,允许中断嵌套,必须在子程序中开中断必须在子程序中开中断(STI)编辑ppt14二、中断处理子程序二、中断处理子程序开中断:响应中断时,开中断:响应中断时,CPUCPU已已自动关中断,为允许中断自动关中断,为允许中断嵌套,需重开中断嵌套,需重开中断关中断:恢复现场时不允许关中断:恢复现场时不允许被中断被中断执行执行IRET指令指令:v从堆栈中依次弹出程序断从堆栈中依次弹出程序断点点,送到送到IP和和CS寄存器中寄存器中v弹出弹出PSW的内容的内容(恢复标(恢复标志、开中断);志、开中断);v按按CS:IP的值使的值使CPU返回返回断点,继续执行原来被中断点,继续执行原来被中断的程序。断的程序。保护中断现场保护中断现场PUSH 开中断开中断 中断处理具体内容中断处理具体内容关中断关中断恢复中断现场恢复中断现场POP中断返回指令中断返回指令IRET编辑ppt151 1、中断类型码的获取中断类型码的获取除法错、单步、除法错、单步、NMINMI、断点中断、溢出:由、断点中断、溢出:由CPUCPU自动提供,自动提供,分别为分别为0 04 4软中断指令软中断指令 INT n INT n :nn中断类型号,由指令提供中断类型号,由指令提供外部中断外部中断INTR INTR:中断类型号由可编程控制器:中断类型号由可编程控制器8259A8259A获得获得2 2、中断向量的设置中断向量的设置预置:预置:AL=AL=中断类型号中断类型号 DS DS:DX=DX=中断服务程序入口地址中断服务程序入口地址 AH=25H AH=25H执行:执行:INT 21H INT 21H 三、中断向量三、中断向量编辑ppt16四、中断时序(对可四、中断时序(对可屏蔽中断而言)屏蔽中断而言)INTRINTACPU AD0AD7INTINTA8259D0D7 INTAT1 T2 T3T4T1 T2T3第一个第一个INTA周期周期T4中断类型号中断类型号nD0D7编辑ppt177-3 中断中断优先级和优先级和中断嵌套中断嵌套一、可屏蔽中断一、可屏蔽中断INTRINTR优先级的设定优先级的设定v软件查询:在中断处理子程序中安排查询,查询程序软件查询:在中断处理子程序中安排查询,查询程序的次序,决定了优先级的高低。见后页的次序,决定了优先级的高低。见后页 最先查询的优先级最高最先查询的优先级最高v简单硬件:菊花链法,简单硬件:菊花链法,越靠近越靠近CPUCPU的优先级越高。的优先级越高。图图7-87-8专用硬件:专用硬件:8259A8259A,可编程的,可编程的编辑ppt18查询方式查询方式INTR0中断程序中断程序输入状态输入状态D0=1?D1=1?INTR1中断程序中断程序INTR0INTR1INTRn INTR0CS+INTR CPU D0 D1INTR174LS244编辑ppt19菊花链电路菊花链电路+INTAINTR中断回答中断回答中断请求中断请求编辑ppt20二、二、中断嵌套中断嵌套 图图7-10同时申请中断时,响应高优先级的,正在执行中断时,高同时申请中断时,响应高优先级的,正在执行中断时,高不睬低,停低转高不睬低,停低转高中断程序在保护现场后,须开中断,才能实现嵌套。中断程序在保护现场后,须开中断,才能实现嵌套。中断服务结束后,须用中断服务结束后,须用EOI指令清除指令清除8259A中中ISR的对应的对应位,使低级中断申请得以响应,然后紧接着须有位,使低级中断申请得以响应,然后紧接着须有IRET,返回断点返回断点编辑ppt217-4 中断优先级控制器中断优先级控制器8259A8259A特点:特点:v一片一片8259A可管理可管理8个中断源,通过级连,可用个中断源,通过级连,可用9片组成片组成64级主从式中断管理系统。级主从式中断管理系统。v 可编程,使用灵活可编程,使用灵活v每一个中断可通过编程单独屏蔽或允许中断每一个中断可通过编程单独屏蔽或允许中断1.可提供中断类型号给可提供中断类型号给CPU编辑ppt22一、一、8259A引腿信号引腿信号1、CS:片选。通过译码电路与:片选。通过译码电路与CPU高位地址总线相连,即高位地址总线相连,即与译码电路的输出端相连与译码电路的输出端相连2、A0:片内选址。连:片内选址。连CPU低位地址线,用于选择低位地址线,用于选择8259A的的两个端口两个端口3、RD、WR:连:连CPU的的RD、WR(最小模式)(最小模式)连连8288总线控制器(最大模式)总线控制器(最大模式)4、D7D0:数据总线:数据总线5、INT:连:连CPU的的INTR端,向端,向CPU发出中断请求信号发出中断请求信号编辑ppt236、INTA:连:连CPU的的INTA(最小模式),(最小模式),CPU给给8259A的中断响应信号,两个负脉冲的中断响应信号,两个负脉冲 响应中断响应中断 读取中断类型号读取中断类型号 连连8288总线控制器(最大模式)总线控制器(最大模式)7、IR7-IR0:连连外设外设的中断请求信号线,的中断请求信号线,中断级联时,连从片中断级联时,连从片INT端端8、CAS2CAS0 与与级联有关级联有关 SP/EN 级联:级联:CAS2CAS0 主片:输出主片:输出 从片:输入从片:输入 SP/EN 主片:主片:SP=1 从片:从片:SP=0 单片单片8259A8259A时,接高电平时,接高电平编辑ppt24二、二、8259A编程结构及工作原理编程结构及工作原理数据总线缓冲器:写入控制字,读出数据总线缓冲器:写入控制字,读出8259A8259A状态,送出中断状态,送出中断类型号,接类型号,接D D0 0-D-D7 7 请求请求IRRIRR:锁存外部中断请求信号:锁存外部中断请求信号IRIR0 0IRIR7 7,有中断请求时,有中断请求时,对应位置对应位置1 1,中断请求被响应时,对应位复位,中断请求被响应时,对应位复位屏蔽屏蔽IMRIMR:设置是否屏蔽:设置是否屏蔽IRRIRR中相应位的中断请求,置中相应位的中断请求,置1 1则屏蔽则屏蔽优先级判别优先级判别PRPR:管理、识别中断源的优先级别。完全嵌套:管理、识别中断源的优先级别。完全嵌套方式下,方式下,IRIR0 0最高最高中断服务寄存器中断服务寄存器ISRISR:存放:存放正在处理中的所有正在处理中的所有中断请求信号。中断请求信号。中断嵌套时,多位被置中断嵌套时,多位被置1 1,为以后的中断优先级裁决提供,为以后的中断优先级裁决提供依据依据 IRR IMR IRR IMR对其进行过滤对其进行过滤 PRPR比较优先级比较优先级 ISRISR外设中断请求外设中断请求编辑ppt25数据数据 缓冲器缓冲器读读/写写 控制控制 电路电路级联级联 缓冲器缓冲器/比较器比较器中断服务中断服务寄存器寄存器ISR优先级优先级 裁决器裁决器 PR中断请求中断请求寄存器寄存器IRR控控 制制 电电 路路中中 断断 屏屏 蔽蔽 寄寄 存存 器器 IMR INTINTD7D0A0CAS0CAS1CAS2IR08259A8259A内部总线内部总线INTAINTACECERDRDWRWRIR1IR6IR7SP/ENSP/EN编辑ppt26控制电路控制全过程:控制电路控制全过程:根据根据IRR的置位情况和的置位情况和IMR的设置情况,通过的设置情况,通过PR判定优判定优先级,选出需处理的中断请求信号,送入先级,选出需处理的中断请求信号,送入ISR向向CPU发送发送INT中断申请中断申请 INTR接收接收CPU发出的第一个响应发出的第一个响应INTA负脉冲,负脉冲,ISR相应位置相应位置1,IRR相应位清相应位清0 INTA第二个负脉冲时,向第二个负脉冲时,向CPU送出中断类型码,使送出中断类型码,使CPU转入中断程序,最后将转入中断程序,最后将ISR相应位清相应位清0编辑ppt277-5 8259A7-5 8259A的编程方法的编程方法两类命令字:初始化命令字两类命令字:初始化命令字ICW ICW 操作命令字操作命令字OCWOCW初始化命令字初始化命令字ICW1ICW1ICW4ICW4:由初始化程序设置的由初始化程序设置的 初始化命令字一经设定,在系统工作过程中将不再改变初始化命令字一经设定,在系统工作过程中将不再改变 初始化命令字必须顺序填写初始化命令字必须顺序填写 ICW1ICW1、ICW2ICW2必须预置,必须预置,ICW3ICW3、ICW4ICW4不一定,是否设置体不一定,是否设置体现在现在ICW1ICW1编辑ppt28操作命令字操作命令字OCW1OCW1OCW3OCW3:由应用程序设定,用来对中断处理过程进行控制由应用程序设定,用来对中断处理过程进行控制在系统运行过程中,操作命令字可以重新设置在系统运行过程中,操作命令字可以重新设置设置设置OCWOCW,次序上没有严格要求,次序上没有严格要求 (OCW2OCW2命令字定义中断方式时,通常放在中断服务子命令字定义中断方式时,通常放在中断服务子程序中)程序中)编辑ppt29一、初始化命令字一、初始化命令字ICWICWICW1ICW1芯片控制初始化命令字芯片控制初始化命令字 A0 D7 D0标志位标志位1:电平触发:电平触发 0:上升沿触发:上升沿触发 1:单级使用:单级使用 0:级联:级联 1:需要设置:需要设置ICW4 0:不需要设置:不需要设置ICW4 IC4SNGL0LTIM10编辑ppt30A A0 0:决定写入命令字的端口地址:决定写入命令字的端口地址A A0 0=0=0,表示,表示ICW1ICW1必须写入必须写入8259A8259A的的低低地址端口中地址端口中例例1 1:系统中:系统中8259A8259A端口地址为端口地址为20H20H、21H21H,工作在单片方式,工作在单片方式,电平触发,要求设置电平触发,要求设置ICW4ICW4解:初始化解:初始化ICW1ICW1的指令为:的指令为:MOV AL MOV AL,1BH1BH OUT 20H OUT 20H,ALAL00011011B编辑ppt31ICW2ICW2设置中断类型号初始化命令字设置中断类型号初始化命令字 A0 D7 D0 中断类型的高中断类型的高5位位 作用:用来设置作用:用来设置中断类型号的基值中断类型号的基值,即,即IR0端对应的中端对应的中断类型号断类型号例例2:若:若T7T3=00001,即,即IR0的类型号为的类型号为08H,IR0IR7:08H0FH 则初始化则初始化ICW2的指令为:的指令为:MOV AL,08H OUT 21H,AL000T3T4T5T6T71编辑ppt32主片主片 S Si i=0=0:表示:表示IRIRi i端上未接有端上未接有8259A8259A从片从片 1 1:表示:表示IRIRi i端上接有端上接有8259A8259A从片从片从片从片 ID ID2 2IDID0 0=000=000111 111 表示从片接在主片的哪个表示从片接在主片的哪个IRIRi i端端1S0S1S2S3S4S5S6S7ICW3标识主片标识主片/从片初始化命令字从片初始化命令字 (当(当ICW1中中SNGL=0时才设置时才设置)ID0ID1ID2000001编辑ppt33A A0 0 D D7 7 D D4 4 D D3 3 D D2 2 D D1 1 D D0 01:8086/8088配置配置 0:8080/8085 1:自动:自动EOI方式方式0:非自动:非自动EOI方式方式 0:非缓冲方式:非缓冲方式 1:缓冲方式:缓冲方式 1:特殊全嵌套工作方式:特殊全嵌套工作方式0:完全嵌套工作方式:完全嵌套工作方式 1ICW4ICW4方式控制初始化命令字(当方式控制初始化命令字(当ICW1ICW1中中IC4=1IC4=1时才设置)时才设置)PMAEOIM/SBUFSFNM0 0 0编辑ppt34 Mi=1:屏蔽由:屏蔽由IRi引入的中断请求引入的中断请求 0:允许:允许 例:系统要求屏蔽例:系统要求屏蔽IR4、IR7 MOV AL,10010000B OUT 21H,ALM0M1M2M3M4M5M6M71二、操作命令字二、操作命令字OCW1OCW1中断屏蔽操作命令字中断屏蔽操作命令字编辑ppt350000:IR0 001:IR1 111:IR7001:普通:普通EOI方式方式 011:特殊:特殊EOI方式方式101:普通:普通EOI循环方式循环方式111:特殊:特殊EOI循环方式循环方式 000:自动:自动EOI循环(复位)循环(复位)100:自动:自动EOI循环(置位)循环(置位)110:置位优先权命令:置位优先权命令 010:无效:无效 标志位标志位OCW2 优先权循环方式和中断结束方式操作字优先权循环方式和中断结束方式操作字L0L1L200EOISLR编辑ppt36R:(:(ROTATE)R=1 中断优先级按循环方式中断优先级按循环方式SL:指明:指明L2L0是否有效;是否有效;SL=1,L2L0有效有效EOI:指定中断结束;:指定中断结束;EOI=1,用中断命令结束,用中断命令结束编辑ppt37OCW3 特殊屏蔽方式和查询方式操作字特殊屏蔽方式和查询方式操作字0X:无效:无效 10:读:读IRR 11:读:读ISR 1:查询:查询8259A状态状态 0:不查询:不查询 0X:无效:无效 10:特殊屏蔽方式复位:特殊屏蔽方式复位 11:特殊屏蔽方式置位:特殊屏蔽方式置位标志位标志位RISRRP10SMMESMM0编辑ppt38三、三、优先级设置方式优先级设置方式完全嵌套方式完全嵌套方式 默认默认特点:特点:中断优先级次序固定。中断优先级次序固定。IR0最高,最高,IR7最低最低中断嵌套时,允许优先处理更高级的中断,禁止同级或低中断嵌套时,允许优先处理更高级的中断,禁止同级或低级中断级中断ICW4中,中,SFNM=0;OCW2中,中,R.SL=0 0特殊全嵌套工作方式特殊全嵌套工作方式中断优先级次序固定。中断优先级次序固定。IR0最高,最高,IR7最低最低中断嵌套时,允许优先处理更高级或中断嵌套时,允许优先处理更高级或同级同级的中断的中断ICW4中,中,SFNM=1;OCW2中,中,R.SL=0 0专门用于多片专门用于多片8259A级联级联的系统的系统编辑ppt39优先级自动循环方式优先级自动循环方式优先级次序可以改变,初始次序为优先级次序可以改变,初始次序为IR0最高,最高,IR7最低,但当最低,但当任何一级中断被处理完后,它的优先级变为最低,将最高任何一级中断被处理完后,它的优先级变为最低,将最高优先级赋给原先比它低一级的中断请求优先级赋给原先比它低一级的中断请求例:响应处理完例:响应处理完IR3,则优先级次序为,则优先级次序为IR4、IR5、IR6、IR7、IR0、IR1、IR2、IR3OCW2中,中,R.SL=1 0适用在多个中断源优先级相等的场合适用在多个中断源优先级相等的场合优先级特殊循环方式优先级特殊循环方式优先级次序可以改变,优先级次序可以改变,初始的初始的优先级次序由优先级次序由程序程序决定决定OCW2中,中,R.SL=1 1编辑ppt40四、中断结束方式四、中断结束方式(什么时刻使什么时刻使ISRISR中对应位置中对应位置“0”0”,就产生不同的中断结束,就产生不同的中断结束方式)方式)ICW4ICW4,OCW2OCW2固定优先级方式固定优先级方式 普通普通EOIEOI结束方式结束方式 非自动非自动EOIEOI结束方式结束方式 特殊特殊EOIEOI结束方式结束方式 自动自动AEOIAEOI结束方式:不执行结束命令结束方式:不执行结束命令循环优先级方式循环优先级方式 普通普通EOIEOI循环方式循环方式 非自动非自动EOIEOI循环方式循环方式 特殊特殊EOIEOI循环方式循环方式 自动自动EOIEOI循环方式循环方式 用中断结束命令用中断结束命令使使ISR对应位置对应位置0编辑ppt41自动自动EOIEOI结束方式结束方式 建议避免使用,以免重复嵌套建议避免使用,以免重复嵌套中断响应后,当中断响应后,当8259A8259A收到第二个脉冲后,即自动将收到第二个脉冲后,即自动将ISRISR中中正在服务的相应位置正在服务的相应位置“0”0”ICW4ICW4中中AEOIAEOI位置位置“1”1”普通普通EOIEOI结束方式结束方式一旦中断处理结束,一旦中断处理结束,CPUCPU向向8259A8259A传送传送EOIEOI结束命令字(即设结束命令字(即设置置OCW2OCW2),),EOIEOI结束命令字必须放在中断服务子程序中的返结束命令字必须放在中断服务子程序中的返回指令回指令IRETIRET前前8259A8259A收到收到EOIEOI结束命令字后,将结束命令字后,将ISRISR中中优先级别最高优先级别最高的置的置“1”1”位清位清“0”0”ICW4ICW4中中AEOIAEOI位置位置“0”0”,OCW2OCW2中,中,R R、SLSL、EOI=0 0 1EOI=0 0 1编辑ppt42特殊特殊EOIEOI结束方式结束方式同同8259A8259A收到收到EOIEOI结束命令后,将结束命令后,将ISRISR中由中由L L2 2L L0 0指定的相应位指定的相应位清清“0”0”ICW4ICW4中中AEOIAEOI位置位置“0”0”;OCW2OCW2中中 R R.SLSL.EOI=0 1 1EOI=0 1 1自动自动EOI循环方式循环方式同同同时自动改变各级中断的优先级别同时自动改变各级中断的优先级别 本级本级最低优先级最低优先级 下一级下一级最高优先级最高优先级OCW2OCW2中,中,R R.SLSL.EOI=1 0 0EOI=1 0 0编辑ppt43普通普通EOIEOI循环方式循环方式同同同同,同时自动改变中断优先级别,同时自动改变中断优先级别OCW2OCW2中,中,R R.SLSL.EOI=1 0 1EOI=1 0 1特殊特殊EOIEOI循环方式循环方式同同同同OCW2OCW2中,中,R R.SLSL.EOI=1 1 1EOI=1 1 1编辑ppt44例例7-107-10:已知:优先级别:已知:优先级别IRIR0 0最高、最高、IRIR7 7最低,最低,IRIR2 2、IRIR5 5有中有中断请求信号。普通断请求信号。普通EOIEOI循环方式循环方式原始原始状态状态ISR内容内容ISR7ISR6ISR5ISR4ISR3ISR2ISR1ISR000100100优先级优先级76543210处理处理完完IR2ISR内容内容00100000优先级优先级43210765处理处理完完IR5ISR内容内容00000000优先级优先级10765432编辑ppt45(1 1)CLICLI关中断指令关中断指令禁止所有的可屏蔽中断禁止所有的可屏蔽中断 (以下两种是对中断请求单独屏蔽)以下两种是对中断请求单独屏蔽)(2 2)普通屏蔽方式)普通屏蔽方式将将IMRIMR的某一位置的某一位置“1”1”,即可屏蔽对应位的中断请求,即可屏蔽对应位的中断请求设置中断屏蔽操作命令字设置中断屏蔽操作命令字OCW1OCW1(3 3)特殊屏蔽方式)特殊屏蔽方式希望在中断处理子程序中,对本级中断进行屏蔽,而允许希望在中断处理子程序中,对本级中断进行屏蔽,而允许较高或较低优先级的中断进入较高或较低优先级的中断进入先设置先设置OCW3OCW3中中ESMM.SMM=1 1ESMM.SMM=1 1,再设置,再设置OCW1OCW1,使,使IMRIMR中本级中本级中断对应位置中断对应位置“1”1”中断服务子程序结束后,取消特殊屏蔽方式,恢复原先优中断服务子程序结束后,取消特殊屏蔽方式,恢复原先优先级的控制先级的控制 (设置(设置OCW1OCW1,使复位;再设置,使复位;再设置OCW3OCW3中中ESMM.SMM=1 0ESMM.SMM=1 0)五、中断源屏蔽方式五、中断源屏蔽方式编辑ppt46例:例:普通屏蔽方式,普通屏蔽方式,IRIR7 7、IRIR5 5、IRIR1 1被屏蔽。若此时被屏蔽。若此时IRIR3 3正被正被处理,则处理,则IRIR3 3及比及比IRIR3 3低的中断申请被屏蔽,只有低的中断申请被屏蔽,只有IRIR0 0和和IRIR2 2的中断源可以产生中断嵌套。的中断源可以产生中断嵌套。低低 高高IR7 IR0 ISR中断服中断服务务00001000IMR中断中断屏蔽屏蔽10100010IRR中断请中断请求求11111111编辑ppt47(1)边沿触发方式)边沿触发方式 8259A CPU,第二,第二(2)高电平触发方式)高电平触发方式 个个 负脉冲,读中断类型号负脉冲,读中断类型号 (3)中断查询方式)中断查询方式 外设发出中断请求,外设发出中断请求,8259A在在ISR中相应位置中相应位置1 CPU使用软件查询来确定中断源使用软件查询来确定中断源 CPU执行的查询程序应包括如下过程:执行的查询程序应包括如下过程:a、CPU关中断关中断INTAINTINTA CPUINT8259A IR0外设外设XDB六、六、中断请求引入方式中断请求引入方式编辑ppt48b、CPU 8259A 偶地址偶地址 OCW3:c、CPU 8259A 偶地址偶地址 查询字:查询字:IR=1:有外设请求中断:有外设请求中断 0:无外设请求中断:无外设请求中断例:优先级次序为例:优先级次序为IR3、IR4、IR5、IR1、IR2若有中断请求若有中断请求IR2、IR4,则,则W2 W1 W0=1 0 0IN指令查询字W0W1W2IR3OUTOCW指令命令字0011000W2、W1、W0IRi组成的代码表示当前中组成的代码表示当前中断请求的最高优先级断请求的最高优先级编辑ppt49七、七、8259A8259A的中断级联的中断级联1 1、8259A8259A与系统总线相连的方式:由初始化命令字与系统总线相连的方式:由初始化命令字ICW4ICW4来设来设置置缓冲方式缓冲方式8259A8259A通过总线驱动器和数据总线相连通过总线驱动器和数据总线相连SP/EN SP/EN 为输出端,与总线驱动器允许端相连为输出端,与总线驱动器允许端相连 EN=0 EN=0 控制控制 8259A CPU8259A CPU EN=1 8259A CPUEN=1 8259A CPU编程编程/双向使能缓冲双向使能缓冲数据数据编辑ppt50非缓冲方式非缓冲方式8259A8259A直接与数据总线相连直接与数据总线相连SP/ENSP/EN为输入端,用来决定本片为输入端,用来决定本片8259A8259A是主片还是从片是主片还是从片 SPSP =1 =1 主片主片 SP=0 SP=0 从片从片2 2、CASCAS0 0CASCAS2 2 指出具体的从片指出具体的从片 当主片检测到中断请求来自从片,从主片的当主片检测到中断请求来自从片,从主片的CASCAS0 0CASCAS2 2将将级联地址输出到所有从片,只有级联地址与级联地址输出到所有从片,只有级联地址与CASCAS0 0CASCAS2 2相相同的从片才能选通同的从片才能选通编辑ppt51一、硬件连接一、硬件连接 图图7-147-14 1 1、两级级联:、两级级联:1 1片主片,片主片,2 2片从片片从片 2 2、非缓冲方式:无数据总线驱动器、非缓冲方式:无数据总线驱动器 3 3、CASCAS0 0CASCAS2 2:主片:主片从片从片 4 4、INTINT:主:接主:接CPUCPU的控制总线的控制总线 从:接主片的从:接主片的IRIRi i端端 5 5、SP/EN SP/EN:主:输入主:输入 SP=1SP=1,接,接Vcc +5VVcc +5V 从:输入从:输入 SP=0 SP=0,接地,接地 6 6、D D7 7D D0 0:接数据总线低:接数据总线低8 8位位 7 7、CSCS,A A0 0:接地址总线:接地址总线 A A0 0CPUCPU的的A A1 1 CS CS接接LS138LS138译码输出,决定译码输出,决定 端口地址端口地址 8 8、:接控制总线:接控制总线INTA7-6 7-6 硬件连接及初始化程序硬件连接及初始化程序编辑ppt52CS A0 D7D0 INTA INT CAS0 从从 8259A CAS1 CAS2SP/EN IR0 IR1.IR7 CS A0 D7D0 INTA INT CAS0 从从 8259A CAS1 CAS2SP/EN IR0 IR1.IR7 CS A0 D7D0 INTA INTCAS0CAS1 主主8259A CAS2SP/EN IR0 IR1.IR7 GNDGNDVCCABCBDB编辑ppt53二、例二、例 中断向量的形成中断向量的形成:将中断入口地址写入中断向量表:将中断入口地址写入中断向量表 MOV AX MOV AX,1000H 1000H MOV DS MOV DS,AX AX ;功能量;功能量AH=25HAH=25H的中断的中断21H21H调用调用 MOV DX MOV DX,5020H 5020H 设置中断向量设置中断向量 DSDS:DX=DX=中断向量中断向量 MOV AL MOV AL,50H AL50H AL:中断类型号:中断类型号 MOV AH MOV AH,25H 25H INT 21H INT 21H ;设置设置IRIR0 0,中断类型号,中断类型号50H50H MOV DX MOV DX,6100H6100H MOV AL MOV AL,52H 52H INT 21H INT 21H ;设置设置IRIR2 2:52H 52H MOV DX MOV DX,3250H3250H MOV AL MOV AL,54H54H INT 21H INT 21H ;设置设置IRIR4 4:54H54H编辑ppt54初始化编程初始化编程 MOV AL,13HMOV AL,13H OUT 20H,AL OUT 20H,AL ;设置;设置ICW1ICW1,边沿触发,单级使用,需要设置,边沿触发,单级使用,需要设置ICW4ICW4 MOV AL,50H MOV AL,50H OUT 21H,AL OUT 21H,AL ;设置;设置ICW2ICW2,中断类型号,中断类型号50H50H57H57H MOV AL,01H MOV AL,01H ;OUT 21H,AL OUT 21H,AL ;设置;设置ICW4ICW4,完全嵌套方式,非缓冲方式,非自动,完全嵌套方式,非缓冲方式,非自动EOIEOI结束方式结束方式 MOV AL,OEAHMOV AL,OEAH OUT 21H,AL OUT 21H,AL ;定义;定义OCW1OCW1,允许,允许IRIR0 0、IRIR2 2、IRIR4 4,其余屏蔽。,其余屏蔽。11101010B11101010B MOV AL,20H MOV AL,20H OUT 20H,AL OUT 20H,AL ;定义;定义OCW2OCW2,普通,普通EOIEOI结束结束编辑ppt55谢谢大家!谢谢大家!作业:作业:2,10,15,16(选做)(选做)
展开阅读全文