《微型计算机接口技术ppt课件》第5章-中断技术

上传人:hknru****knru 文档编号:240919990 上传时间:2024-05-17 格式:PPT 页数:55 大小:1.05MB
返回 下载 相关 举报
《微型计算机接口技术ppt课件》第5章-中断技术_第1页
第1页 / 共55页
《微型计算机接口技术ppt课件》第5章-中断技术_第2页
第2页 / 共55页
《微型计算机接口技术ppt课件》第5章-中断技术_第3页
第3页 / 共55页
点击查看更多>>
资源描述
第第5章章 中断技术中断技术本本 章章 内内 容容 中断技术的基本概念中断技术的基本概念 中断技术的工作原理中断技术的工作原理 系统配置的中断资源的应用系统配置的中断资源的应用中断向量修改及中断服务程序的编写中断向量修改及中断服务程序的编写1第5章 中断技术本 章 内 容15.1 中断中断 基本概念基本概念 中断中断是是指指CPU在正常运行程序时,在正常运行程序时,由于外部由于外部/内部事件,内部事件,或由程序引起或由程序引起CPU中断正在运行的程序中断正在运行的程序,而而转到为中断事件转到为中断事件服务的程序服务的程序中去,中去,服务完毕服务完毕,再,再返回执行原程序返回执行原程序,这一,这一过过程程称为中断称为中断。外部中断外部中断的特征:的特征:具有随机性具有随机性。25.1 中断25.2 中断的类型中断的类型5.2.1 外部中断外部中断1.可屏蔽中断可屏蔽中断INTR这是这是由外部设备由外部设备通过中断控制器用中断请求线通过中断控制器用中断请求线INTR向微处理器向微处理器申请而产生的中断申请而产生的中断,但,但微处理器微处理器可以可以用用CLI指令指令来屏蔽来屏蔽(禁止),(禁止),即不响应它的中断请求,即不响应它的中断请求,因此因此把这种中断把这种中断称为称为可屏蔽中断可屏蔽中断。2.不可屏蔽中断不可屏蔽中断NMI由系统硬件引发的中断由系统硬件引发的中断,如协处理器出错、通道等。它的优先级,如协处理器出错、通道等。它的优先级高于外部硬件中断,且高于外部硬件中断,且不受中断允许标志位不受中断允许标志位(IF)的影响的影响,即,即微处微处理器理器不可以不可以用用CLI指令指令来屏蔽,来屏蔽,所以所以是是不可屏蔽中断不可屏蔽中断。35.2 中断的类型35.2.2 内部中断内部中断内部中断是内部中断是由用户在程序中发出中断指令由用户在程序中发出中断指令INTnH产生的产生的,指令中的指令中的操作数操作数n称为称为软中断号软中断号。内部中断内部中断包括包括DOS中断功能中断功能和和BIOS中断功能两部分,中断功能两部分,可供用户可供用户在编写应用程序时在编写应用程序时调用调用。1.DOS功能调用功能调用DOS是存放在磁盘上的操作系统软件,其中内部中断是存放在磁盘上的操作系统软件,其中内部中断INT 21H是是DOS的内核。它是一个很重要、功能庞大的的内核。它是一个很重要、功能庞大的中断服务程序,包含中断服务程序,包含06CH个子功能,包括对设备、个子功能,包括对设备、文件、目录及内存的管理功能,涉及各个方面,可供系文件、目录及内存的管理功能,涉及各个方面,可供系统软件和应用程序调用,同时,由于它处在统软件和应用程序调用,同时,由于它处在ROM-BIOS层的上一个层次,与系统硬件层有层的上一个层次,与系统硬件层有ROM-BIOS在逻辑上在逻辑上的隔离,所以,它对系统硬件的依赖性大大减少,兼容的隔离,所以,它对系统硬件的依赖性大大减少,兼容性好。性好。2.BIOS功能调用功能调用BIOS是一组存放在是一组存放在ROM中、独立于中、独立于DOS的的I/O中断服务中断服务程序。它在系统硬件的上一层,直接对系统中的程序。它在系统硬件的上一层,直接对系统中的I/O设设备进行设备级控制,可供上层软件和应用程序调用备进行设备级控制,可供上层软件和应用程序调用。45.2.2 内部中断4除了上述外部中断和内部中断两类中断之外,除了上述外部中断和内部中断两类中断之外,微机的中断系统微机的中断系统还还包括一些特殊中断包括一些特殊中断,这些中断,这些中断既不是由外部设备提出既不是由外部设备提出申请而产生申请而产生的,的,也不是由用户在程序中发中断指令也不是由用户在程序中发中断指令INTnH而而发生的发生的,而是而是由内由内部的突发事件部的突发事件所引起的中断所引起的中断,即在执行指令的过程中,即在执行指令的过程中,CPU发现某发现某种突发事件时就启动内部逻辑转去执行预先规定的中断号所对应的种突发事件时就启动内部逻辑转去执行预先规定的中断号所对应的中断服务程序。中断服务程序。这类中断这类中断也是也是不可屏蔽中断不可屏蔽中断,其中断处理过程具有,其中断处理过程具有与内部中断相同的特点,因此,有的书上把它们归结为内部中断这与内部中断相同的特点,因此,有的书上把它们归结为内部中断这一类。这类中断有如下几种。一类。这类中断有如下几种。(1)0号中断号中断除数为零中断;除数为零中断;(2)1号中断号中断单步中断;单步中断;(3)3号中断号中断断点中断;断点中断;(4)4号中断号中断溢出中断。溢出中断。3.内部中断的应用内部中断的应用DOS调用调用和和BIOS调用调用是用户使用系统资源的重要方法和是用户使用系统资源的重要方法和基本途径,也基本途径,也是用户编写是用户编写MS-DOS应用程序应用程序使用很频繁的方使用很频繁的方法法,应学会使用。,应学会使用。5除了上述外部中断和内部中断两类中断之外,微机的中断系统还包括 5.3 中断号中断号5.3.1 中断号与中断号的获取中断号与中断号的获取1.什么是中断号什么是中断号中断号中断号是系统分配给每个中断源是系统分配给每个中断源的代号的代号,以便识别和处理。,以便识别和处理。中断中断号号在中断处理过程中在中断处理过程中起到很重要的作用起到很重要的作用,在,在采用向量中断方式采用向量中断方式的的中断系统中,中断系统中,CPU必须必须通过中断号通过中断号才可以才可以找到中断服务程序的入找到中断服务程序的入口地址口地址,实现实现程序的转移程序的转移。2.中断号的获取中断号的获取CPU对系统中对系统中不同类型的中断源不同类型的中断源,获取获取它们的它们的中断号的方法是不中断号的方法是不同的同的。可屏蔽可屏蔽中断的中断号中断的中断号是在中断响应周期是在中断响应周期从中断控制器获取从中断控制器获取的。的。内部中断内部中断INTnH的中断号的中断号(nH)是是由中断指令直接给出由中断指令直接给出的。的。不可屏蔽中断不可屏蔽中断NMI以及以及CPU内部内部一些特殊中断一些特殊中断的中断号的中断号是是由系统由系统预先设置好的预先设置好的,如,如NMI的中断号为的中断号为02H,非法除数的中断号为,非法除数的中断号为0H等。等。6 5.3 中断号65.3.2 中断响应周期中断响应周期当当CPU收到外部设备收到外部设备通过中断控制器提出通过中断控制器提出的中断请求的中断请求INT后,后,如果如果当前一条指令已执行完当前一条指令已执行完,且,且中断标志位中断标志位IF=1时(即允许中时(即允许中断),又断),又没有没有DMA请求请求,那么那么,CPU进入进入中断响应周期中断响应周期,发发出两个连续出两个连续中断应答信号中断应答信号 完成一个中断响应周期完成一个中断响应周期。图。图5.1表示是中断响应周期时序。表示是中断响应周期时序。75.3.2 中断响应周期7 一个一个中断响应周期中断响应周期完成的完成的操作有操作有:1.置位中断服务寄存器置位中断服务寄存器ISR 当当CPU发出发出第一个脉冲第一个脉冲 时时,CPU输出有效的总线锁定信号,输出有效的总线锁定信号,使总线在此期间处于封锁状态,防止其他处理器或使总线在此期间处于封锁状态,防止其他处理器或DMA控制器占控制器占用总线。与此同时,用总线。与此同时,中断控制器将中断控制器将判优后允许的判优后允许的中断级中断级存放存放在在寄寄存器存器ISR中中,即将,即将相应位置相应位置1,以登记正在服务的中断级别以登记正在服务的中断级别。在在中中断服务程序执行完毕断服务程序执行完毕之后,之后,该寄存器该寄存器自身不能清零自身不能清零,故故需要需要向中向中断控制器断控制器发中断结束命令发中断结束命令EOI才能清零才能清零。2.读取中断号读取中断号 当当CPU发出发出第二个脉冲第二个脉冲 时时,总线锁定信号撤除,总线被解封,总线锁定信号撤除,总线被解封,地址允许信号地址允许信号ALE也变为低电平(无效),即允许数据线工作。也变为低电平(无效),即允许数据线工作。正好此时正好此时中断控制器将中断控制器将当前中断服务程序的当前中断服务程序的中断号送到数据线上中断号送到数据线上,由由CPU读入读入。5.3.3 中断号的分配中断号的分配 系统对外部中断和内部中断一律统一编号,共有系统对外部中断和内部中断一律统一编号,共有256个号,个号,微机微机系统的中断号分配系统的中断号分配如表如表5.1所示所示。表中。表中两块灰色区域两块灰色区域的中断号分别的中断号分别是系统是系统分配给分配给PC微机系统中的微机系统中的中断控制器主片中断控制器主片与与从片的中断号从片的中断号,用户用户可以可以采用修改其中断向量的方法采用修改其中断向量的方法进行应用进行应用。8 一个中断响应周期完成的操作有:8 表5.1 9表5.1 910105.4 中断触发方式与中断排队方式中断触发方式与中断排队方式5.4.1 中断触发方式中断触发方式中断触发方式中断触发方式是指是指外部设备外部设备以什么逻辑信号以什么逻辑信号去向中断控制器申请中去向中断控制器申请中断断,中断控制器,中断控制器允许用边沿允许用边沿或或电平信号申请中断电平信号申请中断,即,即边沿触发边沿触发和和电电平触发平触发两种方式。两种方式。触发方式触发方式在在中断控制器初始化时中断控制器初始化时设定设定。5.4.2 中断排队方式中断排队方式 中断系统对中断系统对中断源的中断请求中断源的中断请求是按优先级提供服务的是按优先级提供服务的。中断优先中断优先级级从高到低的顺序从高到低的顺序是:内部中断是:内部中断不可屏蔽中断不可屏蔽中断可屏蔽中断。可屏蔽中断。当当系统有多个中断源时,就可能系统有多个中断源时,就可能出现同时有几个中断源都申请中出现同时有几个中断源都申请中断断,而,而微处理器微处理器在一个时刻在一个时刻只能响应并处理一个中断请求只能响应并处理一个中断请求。为此,。为此,要进行中断排队要进行中断排队,微处理器,微处理器一般是一般是按按“优先级高的先服务优先级高的先服务”的原则的原则提提供服务供服务,但也有,但也有其他一些其他一些中断排队中断排队的方式。的方式。中断排队中断排队方式方式在在中断控中断控制器初始化时制器初始化时设定设定。115.4 中断触发方式与中断排队方式11 具体中断排队方式如下:具体中断排队方式如下:1.按优先级排队按优先级排队 根据任务的轻重缓急根据任务的轻重缓急,给每个中断源指定,给每个中断源指定CPU响应的优响应的优先级,先级,任务紧急的任务紧急的先响应先响应,可以暂缓的可以暂缓的后响应后响应。2.循环轮流排队循环轮流排队 不分级别高低不分级别高低,CPU轮流响应轮流响应各个中断源的各个中断源的中断请求中断请求,并为其服务并为其服务。3.中断嵌套中断嵌套 在实际应用中,当在实际应用中,当CPU正在处理某个中断源,即正在处理某个中断源,即正在正在执执行中断服务程序行中断服务程序时时,会出现会出现优先级更高优先级更高的的中断源申请中断中断源申请中断。为了使为了使更紧急的更紧急的、级别更高级别更高的中断源的中断源及时得到服务及时得到服务,需要需要暂暂时时打断(挂起)打断(挂起)当前正在执行的当前正在执行的级别较低级别较低的中断服务程序,的中断服务程序,去处理级别更高去处理级别更高的中断源的中断源,待,待处理完处理完以后,以后,再返回到被打断再返回到被打断了了的中断服务程序的中断服务程序继续执行。这就是继续执行。这就是所谓的所谓的中断嵌套中断嵌套。INTR可以可以进行进行中断嵌套中断嵌套。NMI不可以不可以进行进行中断嵌套中断嵌套。12 具体中断排队方式如下:125.5 中断向量与中断向量表中断向量与中断向量表 当发生中断当发生中断,就意味着就意味着要发生程序的转移,即要发生程序的转移,即由主程序由主程序转移转移到到服务程序去服务程序去。那么,。那么,如何才能进入中断服务程序如何才能进入中断服务程序,即,即如何找到如何找到中断服务程序的入口地址是中断服务程序的入口地址是解决问题的解决问题的关键。关键。为此,为此,当当采用向量中断方式采用向量中断方式(不是查询中断方式)(不是查询中断方式)时时,设置设置中中断向量断向量和和中断向量表中断向量表,通过通过中断向量表中断向量表中的中的中断向量查找中断服务程序的中断向量查找中断服务程序的入口地址入口地址。5.5.1 中断向量与中断向量表中断向量与中断向量表 1.什么是中断向量什么是中断向量 CPU响应中断后,响应中断后,中断源中断源提供提供中断号中断号,再,再由中断号生成由中断号生成地址信息地址信息,以以此此地址信息地址信息为指针,为指针,对程序的执行进行导向,对程序的执行进行导向,引导到中断服务程序中去引导到中断服务程序中去,故,故把这个地址信息称为中断向量把这个地址信息称为中断向量(存储单元)。(存储单元)。中断向量中断向量包括包括中断服务程序的段基址中断服务程序的段基址CS(高高位位字字)和和偏偏移地移地址址IP(低(低位位字)字)共共4个字节个字节。其中,其中,中断号中断号4=偏偏移地移地址址IP;中断号;中断号4+2=段基址段基址CS。例如,例如,8号中断号中断中断源中断源的中断向量:的中断向量:IP8=84=20H21H;CS8=84+2=22H23H.135.5 中断向量与中断向量表13 2.什么是中断向量表什么是中断向量表 所有的所有的中断向量集中存放中断向量集中存放到存储器到存储器的某一区域的某一区域,这,这一一区域区域称之为中断向量表称之为中断向量表。微机系统规定把存储器的微机系统规定把存储器的0000H03FFH共共1024个地个地址单元作为中断向量存储区址单元作为中断向量存储区,这表明中断向量表的起始地,这表明中断向量表的起始地址是固定的,并且从存储器的物理地址址是固定的,并且从存储器的物理地址0开始。开始。中断向量表中断向量表如图如图5.2所示所示。每个中断向量包含每个中断向量包含4个字节个字节,这,这4个字节个字节在在中断向量表中中断向量表中的的存放规律是存放规律是向量的偏移量(向量的偏移量(IP)存放在存放在两个低字节单元中两个低字节单元中,向量的基址(向量的基址(CS)存放在存放在两个两个高字节单元中高字节单元中。14 2.什么是中断向量表14图5.2中断向量表15图5.2中断向量表155.5.2 中断向量表的填写中断向量表的填写 中断向量中断向量表的填写表的填写分分系统填写系统填写和和用户填写用户填写两种情况。两种情况。系统设置的中断服务程序,其中断向量由系统负责填写。系统设置的中断服务程序,其中断向量由系统负责填写。用户开发的中断系统,在编写中断服务程序时,其中断向量由用户负责填用户开发的中断系统,在编写中断服务程序时,其中断向量由用户负责填写,可采用写,可采用MOV指令直接向中断向量表中填写中断向量。指令直接向中断向量表中填写中断向量。不过,一般不过,一般情况下,情况下,用户都是通过用户都是通过修改中断向量的方法修改中断向量的方法使用系统的中断资使用系统的中断资源源,故故很少很少由用户自己直接填写由用户自己直接填写中断向量中断向量。16165.6 中断处理过程中断处理过程5.6.1 可屏蔽中断的处理过程可屏蔽中断的处理过程1.中断申请与响应中断申请与响应的的握手握手过程过程当当外部设备外部设备要求要求CPU服务时服务时,需向需向CPU发出中断申请发出中断申请。CPU若若发现发现有外部中断请求有外部中断请求,并且处在并且处在开中断开中断条件条件(IF=1),又),又没有没有DMA申请申请,则,则CPU在在当前指令执行结束当前指令执行结束时,进入时,进入中断响应中断响应总线总线周期,周期,响应中断请求响应中断请求,同时同时通过中断回答信号通过中断回答信号INTA,从中断控从中断控制器制器读取读取中断源的中断源的中断号中断号,完成完成中断申请中断申请与与中断响应中断响应的握手过程。的握手过程。这一阶段的这一阶段的主要目标主要目标是获取外部中断源的中断号是获取外部中断源的中断号。2.标志位的处理与断点保存标志位的处理与断点保存微处理器微处理器获得获得外部中断源的中断号外部中断源的中断号后,把后,把标志寄存器标志寄存器FLAGS压压入堆栈入堆栈,并,并置置IF=0,关闭中断关闭中断;置置TF=0,防止单步执行防止单步执行。然后。然后将当前程序将当前程序(主程序主程序)的的代码段寄存器代码段寄存器CS和和指令指针指令指针IP压入堆栈压入堆栈,这样就把这样就把断点断点(返回地址)(返回地址)保存到了堆栈的保存到了堆栈的栈顶栈顶。这一阶段的这一阶段的主主要目标要目标是是完成由主程向服务程序转移前的准备工作。完成由主程向服务程序转移前的准备工作。175.6 中断处理过程173.向中断服务程序转移并执行中断服务程序向中断服务程序转移并执行中断服务程序将将已获得的已获得的中断号乘以中断号乘以4得到得到地址指针地址指针,在,在中断向中断向量表中量表中,读取读取中断服务程序的中断服务程序的入口地址入口地址CS IP,再,再把它写入代码段和指令指示器把它写入代码段和指令指示器,实现实现程序控制的转程序控制的转移。移。这一阶段的这一阶段的主要主要目标目标是完成主程序向中断服务是完成主程序向中断服务程序的转移程序的转移,或称为中断服务程序的加载。,或称为中断服务程序的加载。4.返回断点返回断点中断服务程序中断服务程序执行完毕执行完毕后,后,要返回要返回主程序主程序,因此,因此,一定要恢复一定要恢复断点断点和和标志寄存器标志寄存器的内容的内容,否则,主程,否则,主程序无法继续执行。为此,序无法继续执行。为此,在中断服务程序的末尾,在中断服务程序的末尾,执行中断返回指令执行中断返回指令IRET,将栈顶的内容依次弹出到将栈顶的内容依次弹出到IP、CS和和FLAGS,就恢复了主程序的执行。,就恢复了主程序的执行。这一这一阶段的阶段的主要主要目标目标是完成中断服务程序是完成中断服务程序向向主程序的转主程序的转移移。183.向中断服务程序转移并执行中断服务程序185.6.2 不可屏蔽中断和软中断的处理过程不可屏蔽中断和软中断的处理过程由于由于它们它们的不可屏蔽性,并且其中断号的获取方法的不可屏蔽性,并且其中断号的获取方法与可屏蔽中与可屏蔽中断断不一样不一样,所以其中断处理过程也有所差别。其,所以其中断处理过程也有所差别。其主要差别主要差别是:是:不需通过中断响应周期获取中断号不需通过中断响应周期获取中断号,是由系统分配的是由系统分配的;中断服中断服务程序结束,不需发中断结束命令务程序结束,不需发中断结束命令EOI,是自动结束方式是自动结束方式。其。其他处理过程与可屏蔽中断的一样。他处理过程与可屏蔽中断的一样。195.6.2 不可屏蔽中断和软中断的处理过程195.7 中断外部中断的解决方案中断外部中断的解决方案5.7.1 中断控制器中断控制器82C59A的外部特性的外部特性82C59A的的外部引脚外部引脚如图如图5.3所示所示,3组信号线如下组信号线如下:(1)面向)面向CPU的信号线的信号线。包括用于。包括用于CPU发命令及发命令及读取中断号的读取中断号的8根数据线根数据线D0D7,一对中断请求线,一对中断请求线INT和中断回答线,以及、控制线与地址线、和中断回答线,以及、控制线与地址线、A0。(2)面向)面向I/O设备的信号线设备的信号线。8根中断申请线根中断申请线IR0IR7,其作用有二:一是接收外设的中断申请,可其作用有二:一是接收外设的中断申请,可接收接收8个外部中断源的中断申请;二是作外部中断个外部中断源的中断申请;二是作外部中断优先级排队用,可进行优先级排队用,可进行8级中断排队,采用完全中级中断排队,采用完全中断嵌套排队方式时,连接断嵌套排队方式时,连接IR0的设备优先级最高,的设备优先级最高,连接连接IR7的设备优先级最低。的设备优先级最低。(3)面向同类芯片的中断级联信号线)面向同类芯片的中断级联信号线。中断级联中断级联信号线用于扩展中断源,包括主信号线用于扩展中断源,包括主/从芯片的设定线从芯片的设定线/EN,3根用以传送从片识别码的级联线根用以传送从片识别码的级联线CAS0CAS2。图5.3 82C59A引脚图205.7 中断外部中断的解决方案82C59A的外部引脚如图5.5.7.2 中断控制器中断控制器82C59A的工作方式的工作方式1中断触发方式中断触发方式(1)边沿触发方式)边沿触发方式 IR0IR7输入线上出现输入线上出现由低电平到高电平的跳变由低电平到高电平的跳变,表示表示有中断有中断请求请求。(2)电平触发方式)电平触发方式 IR1IR7输入线出现输入线出现高电平时高电平时,表示表示有中断请求有中断请求。2中断级联方式中断级联方式 82C59A可以单片使用,也可以多片使用,可以单片使用,也可以多片使用,两片以上使两片以上使用时用时才有才有级联问题级联问题。级联问题级联问题分两个方面分两个方面:从主片看从主片看,它的哪一,它的哪一根或哪几根中断申请输入线根或哪几根中断申请输入线IR上有从片连接;上有从片连接;从从片看从从片看,它的中,它的中断申请输出线断申请输出线INT与主片的哪一根中断申请输入线与主片的哪一根中断申请输入线IR相连。相连。21213.中断屏蔽方式中断屏蔽方式82C59A的的中断屏蔽中断屏蔽是指对外设中断申请的屏蔽是指对外设中断申请的屏蔽,即,即允许允许还是不允许还是不允许外设申请中断外设申请中断,而不是对已经提出的中断申请响不响,而不是对已经提出的中断申请响不响应的问题。应的问题。82C59A有有常规屏蔽方式常规屏蔽方式和和特殊屏蔽方式特殊屏蔽方式两种两种,常规屏常规屏蔽方式蔽方式使用较多使用较多。(1)常规屏蔽方式)常规屏蔽方式 常规屏蔽方式是常规屏蔽方式是通过通过向向82C59A屏蔽寄存器屏蔽寄存器写入写入8位屏蔽码位屏蔽码来实来实 现的现的,要要屏蔽屏蔽哪个哪个中断申请中断申请,就将就将屏蔽码的屏蔽码的相应位置相应位置1;不不屏蔽的屏蔽的,即开放中断的,则即开放中断的,则相应位置相应位置0。例如,。例如,屏蔽码屏蔽码11111011B,表示表示仅开仅开 放放IR2,其他均屏蔽。,其他均屏蔽。(2)特殊屏蔽方式)特殊屏蔽方式用于用于开放低级别的中断申请开放低级别的中断申请。允许允许比正在服务的中断比正在服务的中断级别低的级别低的中断申请中断,而中断申请中断,而屏蔽同级的屏蔽同级的中断再次申请中断。中断再次申请中断。4.4.中断优先级排队方式中断优先级排队方式 82C59A提供了提供了3种种中断优先级排队方式:中断优先级排队方式:完全嵌套方式完全嵌套方式、特殊特殊嵌套方式嵌套方式和和优先级循环方式优先级循环方式。223.中断屏蔽方式225.中断结束方式中断结束方式(1)自动结束方式)自动结束方式自动结束方式自动结束方式是中断响应之后,在中断响应周期,就是中断响应之后,在中断响应周期,就自动清零自动清零该该中断源中断源在在ISR寄存器中寄存器中被置被置1的位的位。因此,因此,在中断服务程序中在中断服务程序中不需不需发出发出中断结束命令中断结束命令EOI。(2)非自动结束方式)非自动结束方式非自动结束方式非自动结束方式是是在在ISR中中被置被置1的位的位,在服务完毕后,在服务完毕后,不能自动不能自动清零清零,而,而必须必须在中断服务程序中发出在中断服务程序中发出中断结束命令中断结束命令EOI,才能清,才能清零,故称为非自动结束。零,故称为非自动结束。非自动结束方式非自动结束方式是常用的方式是常用的方式,其中又,其中又有有两种两种命令格式命令格式。常规结束命令常规结束命令:该命令:该命令隐含指定隐含指定ISR寄存器中寄存器中优先级最高的置优先级最高的置1位位清零清零(复位)。(复位)。指定结束命令指定结束命令:该命令:该命令明确指定明确指定ISR寄存器中寄存器中哪一个置哪一个置1的位的位清清零,零,即服务完毕,具体指定哪一级中断结束。即服务完毕,具体指定哪一级中断结束。指定结束指定结束方式方式应用较多。应用较多。235.中断结束方式23245.7.3 中断控制器中断控制器82C59A的编程模型的编程模型 82C59A82C59A编程模型编程模型包括包括内部可访问的内部可访问的寄存器、端口寄存器、端口地址,及地址,及相应的相应的7 7个个命令字命令字。内部寄存器内部寄存器如图如图5.55.5所示所示。245.7.3 中断控制器82C59A的编程模型 82C(1)命令寄存器)命令寄存器 8位位,隐含在,隐含在“控制逻辑控制逻辑”模块内部,模块内部,接收并处理接收并处理7个命令字个命令字,用户,用户可以访问。可以访问。(2)中断请求寄存器()中断请求寄存器(IRR)8位,以逻辑位,以逻辑1记录已经提出中断请求的中断级,等待记录已经提出中断请求的中断级,等待CPU响应。响应。当提出中断请求的外设产生中断时,由当提出中断请求的外设产生中断时,由82C59A置位,直到中断被响置位,直到中断被响应才自动清零。应才自动清零。IRR的内容可以由的内容可以由CPU通过通过OCW3命令读出。命令读出。(3)中断服务寄存器()中断服务寄存器(ISR)在中断响应之后,在中断响应之后,获准中断请求的中断级获准中断请求的中断级在相应的在相应的ISR中中置置1。例如,例如,IR3获准获准,则,则ISR中的中的IS3置置1,表明表明IR3正处于服务正处于服务。这些。这些置置1的位的位保持,保持,直到直到中断服务程序中中断服务程序中发中断结束命令发中断结束命令才能清才能清0182C59A内部寄存器内部寄存器25(1)命令寄存器182C59A内部寄存器25(4)中断屏蔽寄存器()中断屏蔽寄存器(IMR)是对中断请求是对中断请求IR起屏蔽作用,即对中断请求起屏蔽作用,即对中断请求IR允许还是不允许,允许还是不允许,屏蔽寄存器屏蔽寄存器8位位对应对应8级中断屏蔽级中断屏蔽。哪一级中断哪一级中断被屏蔽被屏蔽,哪位哪位就写就写“1”,即禁止即禁止IR提出中断请求。哪一级中断被允许,哪位就写提出中断请求。哪一级中断被允许,哪位就写“0”,即开放,即开放IR提提出中断请求。出中断请求。(5)中断申请优先级分析器()中断申请优先级分析器(PR)这是一个中断请求的判优电路。它把新来的中断请求优先级与这是一个中断请求的判优电路。它把新来的中断请求优先级与ISR寄存寄存器中记录在案的中断优先级进行比较,看谁的优先级最高,就让谁申请中器中记录在案的中断优先级进行比较,看谁的优先级最高,就让谁申请中断。其操作过程全部由硬件完成,故断。其操作过程全部由硬件完成,故该寄存器对用户是不可访问的该寄存器对用户是不可访问的,它不它不属于属于82C59A的编程模型之内的编程模型之内。26(4)中断屏蔽寄存器(IMR)26 282C59A的端口地址的端口地址 中断控制器中断控制器82C59A是系统资源是系统资源,其端口地址端口地址由系统分配由系统分配,见见第第3章表章表3.1。主片主片的的两个端口地址两个端口地址为为20H和和21H;从片从片的的两个端口地址两个端口地址为为0A0H和和0A1H。7个命令个命令具体使用哪个端口地址具体使用哪个端口地址由由命令的标志位命令的标志位A0指示指示。27 282C59A的端口地址 中断控制器8382C59A的命令的命令 82C59A共有共有7个编程命令个编程命令,分为,分为初始化命令初始化命令ICW1ICW4和和操作命令操作命令OCW1OCW3两类。初始化命令两类。初始化命令ICW确定中确定中断控制器的基本配置或工作方式,而操作命令断控制器的基本配置或工作方式,而操作命令OCW执行由执行由ICW命令定义的基本操作。命令定义的基本操作。值得指出的是值得指出的是,初始化命令初始化命令是是在在用户自行另外设计中断系统时用户自行另外设计中断系统时才会用到才会用到。如果是如果是利用系利用系统已有的中断资源统已有的中断资源来开发中断应用来开发中断应用,就不需要就不需要进行初始化进行初始化,也就不会使用也就不会使用这些这些初始化命令初始化命令。下面分别介绍各的作用及。下面分别介绍各的作用及格式。格式。(1)初始化命令()初始化命令(ICW1ICW4)4个初始化命令个初始化命令用来对用来对82C59A的的工作方式工作方式和和中断号中断号进行进行设置设置,包括包括中断触发方式中断触发方式、级联方式级联方式、排队方排队方式式及及结束方结束方式式。28382C59A的命令28ICW1 ICW1 命令命令功能功能:设置设置中断请求的中断请求的触发方式触发方式、是否多片使用是否多片使用、要不要写要不要写ICW4 ICW1的格式的格式如图如图5.6(1)所示所示。例如,例如,若若采用边沿触发,单片使用,需要采用边沿触发,单片使用,需要ICW4 则则 ICW1命令字命令字=00010011B=13H,其程序段为:,其程序段为:MOV AL,00010011B ;ICW1命令命令 OUT 20H,AL ;写入;写入ICW1端口(端口(A0=0)29图5.6(1)初始化命令ICW1格式ICW1 命令例如,若采用边沿触发,单片使用,需要ICW42ICW2 ICW2 命令命令 功能功能:设置设置中断号中断号。对连接到对连接到主片主片和和从片从片上的上的8级中断源级中断源的的中断号,高中断号,高5位位分别为分别为08H与与70H(见表见表5.3和表和表5.4),而而低低3位位由由连接到主连接到主/从片从片申请线申请线IRi的编码确定,的编码确定,与软件编程无关与软件编程无关。因此,。因此,向向ICW2写入中断号,写入中断号,只写只写高高5位位,低低3位位写写0。ICW2命令的格式,命令的格式,如图如图5.6(2)所示所示。例如例如,硬盘的,硬盘的中断号中断号是是0DH,其中,其中,高高5位位由由ICW2给出给出,低,低3位位由硬件连线决定由硬件连线决定。MOV AL,08H ;中断号高中断号高5位位 OUT 21H,AL ;写入;写入ICW2的端口的端口(A0=1)由于由于硬盘中断请求线连接硬盘中断请求线连接IR5,故,故低低3位位=05H,由,由cpu写入。写入。30图5.6(2)初始化命令ICW2格式ICW2 命令 例如,硬盘的中断号是0DH,其中,高5ICW3命令命令 功能功能:设置设置中断级联方式中断级联方式。主片主片和和从片从片分开设置分开设置。ICW3命令的格式命令的格式如图如图5.6(3)所示。所示。a.主片主片的的ICW3 b.从片从片的的ICW331图5.6(3)初始化命令ICW3格式ICW3命令b.从片的ICW331图5.6(3)初始化命ICW3命令命令只有系统只有系统存在存在2片以上片以上中断控制器芯片中断控制器芯片时才启用时才启用,否则否则,不用不用ICW3命令。分主片和从片,分开设置。命令。分主片和从片,分开设置。对主片对主片 主片主片IRi的的哪一个哪一个输入引脚上输入引脚上有有从片连接从片连接,主片,主片ICW3的的相应位相应位写写1;若若无无,则则写写0。例如,若例如,若主片的主片的IR4上有上有从片连接从片连接,则,则主片的主片的ICW3=00010000B=10H。初始化主片的初始化主片的ICW3程序段如下。程序段如下。MOV AL,10H ;主片主片ICW3命令命令 OUT 21H,AL ;写入主写入主ICW3的端口的端口(A0=1)对从片对从片 从片的从片的中断请求线中断请求线INT连到了主片哪一个连到了主片哪一个IRi上上,则将,则将IRi的的编号编号代码代码写入写入从片的从片的ICW3。例如,若例如,若从片从片A的的INT连接到主片的连接到主片的IR4上上,则,则从片的从片的ICW3=00000100B=04H。初始化从片初始化从片A的的ICW3程序段如下。程序段如下。MOV AL,04H ;从片从片ICW3命令命令 OUT 0A1H,AL ;写入从写入从ICW3的端口的端口(A0=1)32ICW3命令只有系统存在2片以上中断控制器芯片时才启用,3 又又如,假设主片的如,假设主片的IR3和和IR6两个输入端分别连接了从片两个输入端分别连接了从片A与与B 的的INT,故,故主片的主片的ICW3=01001000B=48H,从从片片A的的ICW3=00000011B=03H 从片从片B的的ICW3=00000110B=06H,初始化主片的初始化主片的ICW3程序段如下。程序段如下。MOV AL,48H ;主片主片ICW3命令命令 OUT 21H,AL ;写入写入ICW3(主主)的端口的端口(A0=1)初始化从片初始化从片A的的ICW3程序段如下。程序段如下。MOV AL,03H ;从片从片A的的ICW3命令命令 OUT 0A1H,AL ;写入从片写入从片A的的CW3端口端口(A0=1)初始化从片初始化从片B的的ICW3程序段如下。程序段如下。MOV AL,06H ;从片从片B的的ICW3的命令的命令 OUT 0A1H,AL ;写入从片写入从片B的的ICW3 端口端口(A0=1)33 又如,假设主片的IR3和IR6两个输入端分别连接了从34ICW4命令命令 功能:设置功能:设置优先级排队优先级排队和和中断结束方式中断结束方式 ICW4的格式的格式如图如图5.6(4)所示所示。例如例如,若,若CPU为为16位位,非自动结束方式非自动结束方式,82C59A与系统总线之间与系统总线之间采用缓采用缓冲器冲器连接,只用连接,只用1片片8259A,正常完全嵌套,正常完全嵌套,其初始化命令字其初始化命令字 ICW4=00001101B=0DH 初始化初始化ICW4的程序段如下。的程序段如下。MOV AL,0DH ;ICW4命令命令 OUT 21H,AL ;写入写入ICW4的端口的端口(A0=1)图5.6(4)ICW4命令 格式 34ICW4命令 图5.6(4)ICW4命令 格式 (2)操作命令()操作命令(OCW1OCW3)3个操作命令个操作命令是对是对82C59A经经初始化所设置的初始化所设置的中断屏蔽中断屏蔽、中断结束中断结束、中断排队方式中断排队方式进行进行实际操作实际操作。其中,。其中,OCW3很少使用。很少使用。OCW1命令命令 功能:执行功能:执行常规的中断屏蔽常规的中断屏蔽/开放开放操作操作。OCW1命令的格式命令的格式如图如图5.7(1)所示所示。35图5.7(1)操作命令OCW1格式例如例如,若若要要使中断源使中断源IR3开放开放,其余被屏蔽,其余被屏蔽,则则OCW1=11110111B=F7H 屏蔽程序段为:屏蔽程序段为:MOV AL,0F7H ;OCW1命令命令 OUT 21H,AL ;21H为为OCW1的端口的端口(A0=1)(2)操作命令(OCW1OCW3)35图5.7(OCW2命令命令功能:执行功能:执行中断结束中断结束操作操作和和优先级排队优先级排队操作操作。OCW2的的格式如图格式如图 5.7(2)所示所示。OCW2OCW2中中R R、SLSL、EOIEOI的的组合功能组合功能如表如表5.25.2所示所示.36图5.7(2)操作命令OCW2格式 OCW2命令OCW2中R、SL、EOI的组合功能如表5.37R RSLSLEOIEOI功能001不指定EOI命令,全嵌套方式EOI命令,全嵌套方式011指定EOI命令,全嵌套方式,LEOI命令,全嵌套方式,L2L0指定对应ISR位清零ISR位清零101不指定EOI命令,优先级自动循环EOI命令,优先级自动循环111指定EOI命令,优先级特殊循环,LEOI命令,优先级特殊循环,L2L0指定最低优先级100自动EOI,优先级自动循环EOI,优先级自动循环000自动EOI,取消优先级自动循环EOI,取消优先级自动循环110优先级特殊循环,LL2L0指定最低优先级010无操作表5.2OCW2中R、SL、EOI的组合功能37RSLEOI功能001不指定EOI命令,全嵌套方式EOIOCW2的的具体操作具体操作:1)执行执行中断结束中断结束操作操作:当在初始化命令当在初始化命令ICW1选用非自动结束方式时,就选用非自动结束方式时,就利用利用OCW2来来控制中断结束控制中断结束。又分为。又分为不指定中断结束不指定中断结束和和指定中断结束指定中断结束两种情况。两种情况。对不指定结束对不指定结束,OCW2格式中的格式中的EOI(D5)=1,要求要求发结束命令发结束命令 SL(D6)=0,不指定不指定中断结束中断结束 L2L0(D0D2)=000,编码编码为为0 所以,所以,OCW2=00100000B 对指定结束对指定结束,OCW2格式中的格式中的EOI(D5)=1,要求要求发结束命令发结束命令 SL(D6)=1,指定中断结束指定中断结束 L2L0(D0D2)=编码编码是被指定的中断级是被指定的中断级 例如例如,若,若指定指定IR5中断结束中断结束,则,则OCW2=01100101B=65H。38OCW2的具体操作:382)执行执行中断优先级排队中断优先级排队操作操作R(D7)=1:轮换优先权轮换优先权,分二种若,分二种若SL=0:固定优先权固定优先权,即正常完全嵌套方式,即正常完全嵌套方式1:优先权指定轮换:优先权指定轮换0:自动轮换:自动轮换OCW3命令命令功能功能:执行执行特定的中断屏蔽特定的中断屏蔽/开放开放操作操作。OCW3在实际中很少使用,不做介绍,可参考文献在实际中很少使用,不做介绍,可参考文献21。392)执行中断优先级排队操作R(D7)=1:轮换优先权,分二种5.7.4 中断控制器对中断控制器对CPU处理中断的支持作处理中断的支持作用用1.接受外部设备的中断请求接受外部设备的中断请求 经过优先权判决并找到哪一个中断源的中断请求级别最高,然后,经过优先权判决并找到哪一个中断源的中断请求级别最高,然后,再向再向CPU提出中断申请提出中断申请INT。2.优先级排队管理优先级排队管理 根据任务轻重缓急或设备的特殊要求,分配中断源的中断源等级。根据任务轻重缓急或设备的特殊要求,分配中断源的中断源等级。3.提供中断类型号提供中断类型号 为为CPU实现程序的转移提供中断号,寻找中断服务程序入口地址。实现程序的转移提供中断号,寻找中断服务程序入口地址。4.实现中断请求的屏蔽和开放实现中断请求的屏蔽和开放5.执行中断结束命令执行中断结束命令405.7.4 中断控制器对CPU处理中断的支持作用405.8 可屏蔽中断的体系结构及初始化可屏蔽中断的体系结构及初始化5.8.1 可屏蔽中断的体系结构可屏蔽中断的体系结构可屏蔽中断体系可屏蔽中断体系由由主主/从两片从两片82C59A中断控制器中断控制器进行进行级联组成级联组成,可可支持支持15级级可屏蔽中断处理可屏蔽中断处理,如图,如图5.8所示。所示。415.8 可屏蔽中断的体系结构及初始化414215级级可屏蔽中断的中断号分配可屏蔽中断的中断号分配如如表表5.3和表和表5.4所示所示。中断源中断号高中断号高5 5位位5 5位位低3位3位中断号日时钟08HIR0(0)08H键盘08HIR1(1)09H保留08HIR2(2)0AH通信(二)08HIR3(3)0BH通信(一)08HIR4(4)0CH硬盘08HIR5(5)0DH软盘08HIR6(6)0EH打印机08HIR7(7)0FH中断源中断号高中断号高5 5位位5 5位位低3位3位中断号实时钟70HIR0(0)70H改向INTOAINTOA70HIR1(1)71H保留70HIR2(2)72H保留70HIR3(3)73H保留70HIR4(4)74H协处理器70HIR5(5)75H硬盘70HIR6(6)76H保留70HIR7(7)77H表表5.4从片从片82C59A8级硬中断源的中断号级硬中断源的中断号表表5.3主片主片82C59A8级硬中断源的中断号级硬中断源的中断号4215级可屏蔽中断的中断号分配如表5.3和表5.4所示。中5.8.2 可屏蔽中断的初始化设置可屏蔽中断的初始化设置1初始化设置的内容初始化设置的内容 (1)中断触发方式)中断触发方式采用边沿触发边沿触发,上跳变有效。(2)中断屏蔽方式)中断屏蔽方式采用常规屏蔽方式常规屏蔽方式,即使用OCW1向IMR写入屏蔽码。(3)中断优先级排队方式)中断优先级排队方式采用固定优先级的完全嵌套方式固定优先级的完全嵌套方式。(4)中断结束方式)中断结束方式采用非自动结束方式中的不指定不指定结束结束和指定指定结束结束两种命令格式,即在中断服务程序服务完毕中断返回之前,发结束命令代码命令代码20H或6XH均可(X为07)。(5)级联方式)级联方式采用两片主/从连接方式,并且规定把从片的从片的中断申请输出引脚INT连到主片的连到主片的中断请求输入引脚IR2上上。两片级联处理15级中断。(6)15级中断号的分配级中断号的分配为:中断号中断号08H0FH对应IRQ0IRQ7,中断号中断号70H77H对应IRQ8IRQ15。(7)两片)两片82C59A的端口地址分配的端口地址分配为:主片主片82C59A的两个端口端口是20H和和21H;从片从片82C59A的两个端口端口是0A0H和和0A1H43432初始化设置的程序初始化设置的程序(1)初始化流程)初始化流程系统上电期间,分别对82C59A的主片和从片进行初始化。初始化流程初始化流程如图如图5.9所示所示。442初始化设置的程序44(2)系统对中断控制器初始化程序段)系统对中断控制器初始化程序段 82C59A主片主片汇编语言初始化程序段如下汇编语言初始化程序段如下。INTA00 EQU 020H ;82C59A主片端口(A0=0)INTA01 EQU 021H ;82C59A主片端口(A0=1)MOV AL,11H ;ICW1:边沿触发,多片,要ICW4OUT INTA00,ALJMP SHORT$+2 ;I/O端口延时要求(下同)MOV AL,8H ;ICW2:中断号的高5位OUT INTA01,ALJMP SHORT$+2MOV AL,04H ;ICW3:主片的IR2上接从片,(A0=1)OUT INTA01,ALJMP SHORT$+2MOV AL,01H ;ICW4:非缓冲,全嵌套,16位的CPU,非自动结束OUT INTA01,AL45(2)系统对中断控制器初始化程序段INTA00 EQU 02 82C59A从片从片汇编语言初始化程序段如下汇编语言初始化程序段如下。INTB00 EQU 0A0H ;82C59A从片端口(A0=0)INTB01 EQU 0A1H ;82C59A从片端口(A0=1)MOV AL,11H ;ICW1:边沿触发,多片,要ICW4OUT INTB00,ALJMP SHORT$+2MOV AL,70H ;ICW2:中断号的高5位OUT INTB01,ALJMP SHORT$+2MOV AL,02H ;ICW3:从片接主片的IR2(ID2ID1ID0=010)OUT INTB01,ALJMP SHORT$+2MOV AL,01H ;ICW4:非缓冲,全嵌套,16位的CPU,非自动结束OUT INTB01,AL 系统一旦完成了对系统一旦完成了对82C59A的的初始化初始化,所有外部硬件中断源和服务程序所有外部硬件中断源和服务程序(包括已开发和未开发的)都必须都必须按初始化的规定去做按初始化的规定去做,因此,为慎重起见为慎重起见,对系统的对系统的82C59A初始化编程不由用户去做,初始化编程不由用户去做,而是在微机启动后由处理器由处理器按按初始化设置要求初始化设置要求自动完成自动完成。46 82C59A从片汇编语言初始化程序段如下。465.9 系统中断资源的应用系统中断资源的应用5.9.1 修改中断向量修改中断向量修改中断向量修改中断向量是修改修改同一中断号下的同一中断号下的中断服务程序入口地址中断服务程序入口地址。1中断向量修改的方法中断向量修改的方法中断向量修改的中断向量修改的方法方法是利用是利用DOS功能调用INT21H的的35H号功能号功能和和25H号功能号功能。INT21H系统功能调用为用户程序修改中断向量提供了两个读/写中断向量的功能号,其入口/出口参数如下。(1)INT21H的的35H号功能号功能是从中断向量表从中断向量表中读取读取(被替换被替换)中断向量中断向量入口参数:无。AH=功能号35H,AL=中断号N。调用:即执行INT 21H。出口参数:ESBX=读取的中断向量的段基址:偏移量。(2)INT21H的的25H号功能号功能是向中断向量表向中断向量表中写入写入(替换替换)中断向量中断向量 入口参数:DSDX=要写入的中断向量的段基址:偏移量。AH=功能号25H,AL=中断号N。调用:即执行INT 21H。出口参数:无。475.9 系统中断资源的应用472中断向量修改与恢复的步骤中断向量修改与恢复的步骤(1)调用)调用35H号功能号功能,从向量表中读取读取某一中断号的原中断向量原中断向量,并并保存保存在双字节变量中。(2)调用)调用25H号功能,号功能,将新中断向量写入将新中断向量写入中断向量表中原中断向量的原中断向量的位置位置,取代原中断向量。(3)恢复原中断向量,)恢复原中断向量,新中断服务程序完毕后新中断服务程序完毕后,再用再用25H号功能号功能将将保存在双字节变量中的原中断向量写回去原中断向量写回去。482中断向量修改与恢复的步骤485.9.2 编写中断服务程序编写中断服务程序1中断服务程序的一般格式中断服务程序的一般格式NEW_INT PROC FARNEW_INT PROC FAR (寄存器进栈寄存器进栈);现场保护现场保护 (服务程序主体服务程序主体););服务程序服务程序 MOV AL,20H MOV AL,20H ;向从片向从片82C59A82C59A发结束命令发结束命令 MOV DX,0A1H MOV DX,0A1H OUT DX,AL OUT DX,AL OUT 20H,AL OUT 20H,AL ;向主片向主片82C59A82C59A发结束命令发结束命令 (寄存器出栈寄存器出栈);恢复现场恢复现场 IRET IRET ;中断返回中断返回NEW_INT ENDPNEW_INT ENDP4949502编写中断服务程序需要注意的几个问题编写中断服务程序需要注意的几个问题(1)注意现场的保护)注意现场的保护 在中断服务程序中要使用中断服务程序中要使用的的某些寄存器寄存器,要进栈保存进栈保存,以以免免破坏破坏主程序也使用的这些寄存器内容这些寄存器内容。(2)注意堆栈操作的对称性)注意堆栈操作的对称性 存放存放在在堆栈中堆栈中的的中断返回地址中断返回地址及及现场信息现场信息,要特别注意进特别注意进栈与出栈的栈与出栈的对称性,即进栈进栈与与出栈的内容出栈的内容和和顺序都要一一对顺序都要一一对应应,不要出现进栈与出栈进栈与出栈不一致不一致,以免以免发生发生中断结束后不能不能正确返回断点正确返回断点,造成严重后果。(3)中断服务程序要尽可能短)中断服务程序要尽可能短 为为避免避免对同级对同级或或低级的中断源低级的中断源造成阻塞和干扰造成阻塞和干扰,要求中断中断服务程序服务程序执行要快执行要快。因此,能在能在主程序主程序中做的工作中做的工作尽可能安排在主程序中进行,而不要放到不要放到中断服务程序中断服务程序中去中去。502编写中断服务程序需要注意的几个问题515.10 中断服务程序设计中断服务程序设计5.10.1 主中断控制器的中断服务程序设计主中断控制器的中断服务程序设计例例5.1 利用系统中断控制器主片82C59A的中断服务程序设计。1.要求要求中断申请电路如图5.10所示。微动开关微动开关SW的的中断请求中断请求接到IRQ7。要求要求每按下每按下1次开关次开关SW就申请就申请1次中断次中断,按按8次后显示次后显示“OK!”,程序结束,程序结束。试编写中断服务程序。2.分析分析IRQ7是主片是主片82C59A的IR7引脚上的中断请求输入线引脚上的中断请求输入线,中断号为中断号为0FH,系统分配给打印机中断,当打印机空闲不使用时,用户用户可以可以通过修改中断
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!