微机原理及应用(第7章)_第1页
微机原理及应用(第7章)_第2页
微机原理及应用(第7章)_第3页
微机原理及应用(第7章)_第4页
微机原理及应用(第7章)_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、u 了解微处理器的发展了解微处理器的发展 u 掌握计算机数制间的转换掌握计算机数制间的转换u 理解内存地址与内存内容间的区别理解内存地址与内存内容间的区别学习目标:学习目标: 掌握中断技术的基本概念 了解8086中断系统及其对各种类型中断的响应流程 了解8259A中涉及到的有关概念 掌握8259A的编程应用 第第7 7章章 中断系统中断系统学习目标:学习目标:u1 1中断和中断源中断和中断源u 所谓所谓“中断中断”是指是指CPUCPU中止正在执行的程序,转去中止正在执行的程序,转去执行请求执行请求CPUCPU为之服务的内、外部事件的服务程序,待为之服务的内、外部事件的服务程序,待该服务程序执行

2、完后,又返回到被中止的程序中继续运该服务程序执行完后,又返回到被中止的程序中继续运行的过程。行的过程。u 引起引起CPUCPU中断的事件称为中断的事件称为“中断源中断源”。常见的中断源。常见的中断源有:有:u 外部设备的请求,如外部设备的请求,如CRTCRT终端、键盘、打印机等;终端、键盘、打印机等;u 由硬件故障引起的,如电源掉电,硬件损坏等;由硬件故障引起的,如电源掉电,硬件损坏等;u 实时时钟,如定时器芯片等;实时时钟,如定时器芯片等;u 由软件引起的,如程序错、运算错、为调试程序由软件引起的,如程序错、运算错、为调试程序而设置的断点等。而设置的断点等。 u1 1中断请求中断请求 u2

3、2中断判优中断判优 u3 3中断响应中断响应2 2中断系统的功能:中断系统的功能: 能实现中断响应、中断服务及中断返回。能实现中断响应、中断服务及中断返回。 能实现中断优先权排队能实现中断优先权排队 能实现中断嵌套能实现中断嵌套通常中断响应的操作过程应包括(由硬件实现):通常中断响应的操作过程应包括(由硬件实现): 保留断点地址保留断点地址 关闭中断允许(关中断)关闭中断允许(关中断) 转入中断服务程序转入中断服务程序4 4中断处理中断处理 (由中断服务程序(由中断服务程序完成完成 ) 开中断开中断* *(弱允许中断嵌套)(弱允许中断嵌套) 保护现场保护现场 完成中断服务完成中断服务 恢复现场

4、恢复现场 5. 5. 中断返回中断返回 u1 1软件查询方式软件查询方式 u2 2链式优先权排队(菊花链法)链式优先权排队(菊花链法) u 中断控制器是集中断请求、中断屏蔽、中断控制器是集中断请求、中断屏蔽、中断判优、中断源类型码提供等功能于一身的中断判优、中断源类型码提供等功能于一身的专用大规模集成芯片。专用大规模集成芯片。u 采用可编程中断控制器是当前微型计算采用可编程中断控制器是当前微型计算机中解决中断的最常用方案。机中解决中断的最常用方案。IntelIntel公司的公司的8259A8259A,就是具有上述功能的可编程中断控制,就是具有上述功能的可编程中断控制器。器。u u 80 x86

5、 80 x86的中断系统可处理的中断系统可处理256256种个中断种个中断源。这些中断源可分为两大类:源。这些中断源可分为两大类:u 外部中断(硬件中断)外部中断(硬件中断)u 内部中断(软件中断)内部中断(软件中断) u1 1、可屏蔽中断、可屏蔽中断INTRINTR u受受CPUCPU中断允许标志位中断允许标志位IFIF的控制,即的控制,即IF=1IF=1时,时,CPUCPU才能响应才能响应INTRINTR引脚上的中断请求。引脚上的中断请求。u 复习:复习:CLI CLI 功能:功能:IF 0IF 0u STI IF 1 STI IF 1u(1)(1)在第一个总线周期内通知外部中断系统在第一

6、个总线周期内通知外部中断系统CPUCPU已响应;已响应;u(2)(2)在第二个总线周期,从中断源读取中断类型号;在第二个总线周期,从中断源读取中断类型号;u(3)(3)执行一个总线写周期,将标志寄存器内容压栈,同时使执行一个总线写周期,将标志寄存器内容压栈,同时使IFIF为为0 0,TFTF为为0 0;u(4)(4)执行一个总线写周期,把执行一个总线写周期,把CSCS内容压栈;内容压栈;u(5)(5)执行一个总线写周期,把当前执行一个总线写周期,把当前IPIP内容压栈;内容压栈;u(6)(6)执行一个总线读周期,从中断向量表中读取中断服务程执行一个总线读周期,从中断向量表中读取中断服务程序的偏

7、移地址并送序的偏移地址并送IPIP;u(7)(7)执行一个总线读周期,从中断向量表中读取中断服务程执行一个总线读周期,从中断向量表中读取中断服务程序的段地址并送序的段地址并送CSCS。 u 非屏蔽中断非屏蔽中断NMINMI信号连到信号连到CPUCPU的的NMINMI引脚,它不受引脚,它不受CPUCPU中中断允许标志位断允许标志位IFIF的控制;的控制; u 中断类型号为中断类型号为2 2; u PCPC机系统中,机系统中,NMINMI被用于检查系统被用于检查系统RAMRAM的奇偶错,或的奇偶错,或I/OI/O通道中扩展选件板上的奇偶校验错等。通道中扩展选件板上的奇偶校验错等。 u除法错中断:除

8、法错中断:执行除法指令时,若除数为执行除法指令时,若除数为0 0或商超过寄存器所或商超过寄存器所能表达的范围,则能表达的范围,则CPUCPU立即产生一个中断类型号为立即产生一个中断类型号为0 0的中断。的中断。 u溢出中断:溢出中断:如果上一条指令使溢出标志位如果上一条指令使溢出标志位OFOF为为1 1,则执行,则执行INTOINTO指令产生中断,溢出中断的中断类型号为指令产生中断,溢出中断的中断类型号为4 4。 uINT nINT n指令中断指令中断:在执行中断指令在执行中断指令INT nINT n时产生的一个中断类时产生的一个中断类型号为型号为n n的内部中断。的内部中断。 u单步中断单步

9、中断:当单步标志(陷阱标志)当单步标志(陷阱标志)TFTF置置“1”1”时,时,80 x8680 x86处处于单步工作方式。在单步工作时,每执行完一条指令,于单步工作方式。在单步工作时,每执行完一条指令,CPUCPU自自动产生中断类型号为动产生中断类型号为1 1的中断。的中断。u断点中断断点中断:断点中断是断点中断是80 x8680 x86提供的一种调试程序的手段。提供的一种调试程序的手段。用于设置程序中的断点,中断类型号为用于设置程序中的断点,中断类型号为3 3。u 除法错、溢出、除法错、溢出、INT nINT n指令、断点中断指令、断点中断u 非屏蔽中断非屏蔽中断u 可屏蔽中断可屏蔽中断I

10、NTRINTRu 单步中断单步中断中断向量表中断向量表 CPU 响应中断后,如何得到中断服务程序的入口地址入口地址 (中断向量中断向量),转入到中断服务程序?8086CPU 通过建立中断向量表的方法解决。 8.2.3 中断向量表中断向量表7.2.37.2.3中断向量和中断向量表中断向量和中断向量表 u 中断向量表是存放中断服务程序入口地址中断向量表是存放中断服务程序入口地址的表格。它存放于系统内存的最低端,共的表格。它存放于系统内存的最低端,共10241024个个字节,每字节,每4 4个字节存放一个中断服务程序的入口个字节存放一个中断服务程序的入口地址。地址。u CPUCPU响应中断后,将中断

11、类型号响应中断后,将中断类型号4 4,在中,在中断向量表中断向量表中“查表查表”得到中断服务程序入口地址得到中断服务程序入口地址,分别送,分别送CSCS和和IPIP,从而转入中断服务程序。,从而转入中断服务程序。 u1 1、将中断服务程序的入口地址直接写入中断向量、将中断服务程序的入口地址直接写入中断向量表中的相应单元表中的相应单元uMOV AX , 0000H MOV AX , 0000H uMOV DS , AX MOV DS , AX uMOV SI , MOV SI , 中断类型号中断类型号 * * 4 4uMOV AX , MOV AX , 中断服务程序偏移地址中断服务程序偏移地址u

12、MOV SI, AXMOV SI, AXuMOV AX , MOV AX , 中断服务程序段地址中断服务程序段地址uMOV SI+2 , AXMOV SI+2 , AXu2 2、利用、利用DOSDOS功能调用完成中断向量的设置功能调用完成中断向量的设置u 中断向量设置中断向量设置(DOS(DOS功能调用功能调用 INT 21H)INT 21H)u 功能号:功能号:AH=25HAH=25Hu 入口参数:入口参数:AL=AL=中断类型号,中断类型号,u DS:DX=DS:DX=中断向量中断向量( (段地址段地址: :偏移地址偏移地址) ) u 获取中断向量获取中断向量(DOS(DOS功能调用功能调

13、用 INT 21H)INT 21H)u 功能号:功能号:AH=35HAH=35Hu 入口参数:入口参数:AL=AL=中断类型号中断类型号u 出口参数:出口参数:ES:BX=ES:BX=中断向量中断向量( (段地址段地址: :偏移地址偏移地址) ) 7.2.4 80 x867.2.4 80 x86中断响应过程中断响应过程u 在在PC/XTPC/XT微机系统中使用了一片微机系统中使用了一片8259A8259A,在,在PC/ATPC/AT微机系统中使用了两片微机系统中使用了两片8259A8259A。目前的。目前的PCPC系列微机,其外围接口芯片(如系列微机,其外围接口芯片(如80C28680C286

14、)都集)都集成有与两片成有与两片8259A8259A相当的中断控制电路。相当的中断控制电路。 u 具有具有8 8级优先权控制,通过级联可扩展至级优先权控制,通过级联可扩展至6464级级u 每一级均可通过编程实现屏蔽或开放。每一级均可通过编程实现屏蔽或开放。u 能向能向CPUCPU提供相应的中断类型号。提供相应的中断类型号。u 可通过编程选择不同的工作方式。可通过编程选择不同的工作方式。u 中断请求寄存器(中断请求寄存器(IRRIRR): :用于寄存外部设备提出的中断用于寄存外部设备提出的中断请求,当请求,当IRIR0 0IRIR7 7中任何一个变为高电平,中任何一个变为高电平,IRRIRR中的

15、相应位置中的相应位置“1”1”。 u 中断服务寄存器(中断服务寄存器(ISRISR):用于寄存所有正在被服务的中):用于寄存所有正在被服务的中断请求,断请求,8259A8259A在接收到第一个信号后,使当前被响应的中断请在接收到第一个信号后,使当前被响应的中断请求所对应的求所对应的ISRISR置置“1”1”,而相应的,而相应的IRRIRR复位。在中断嵌套时,复位。在中断嵌套时,ISRISR中有多个位为中有多个位为“1”1”。 u 中断屏蔽寄存器(中断屏蔽寄存器(IMRIMR):用于寄存要屏蔽的中断。某位):用于寄存要屏蔽的中断。某位为为“1”1”,表示屏蔽相应中断请求,为,表示屏蔽相应中断请求

16、,为“0”0”,表示开放相应中,表示开放相应中断请求。断请求。 uA A0 0:地址线,输入,在使用中:地址线,输入,在使用中8259A8259A占用相邻两个端口地址,占用相邻两个端口地址,A A0 0与与 配合,配合,A A0 0=1=1选中奇地址端口,选中奇地址端口,A A0 0=0=0选中偶地址端口。在选中偶地址端口。在80X8680X86的的PCPC系列机中,主片系列机中,主片8259A8259A的的端口地址为端口地址为20H20H和和21H21H。 uCASCAS2 2CASCAS0 0:级联信号线,对主片:级联信号线,对主片8259A8259A,它为输出;对从片,它为输出;对从片8

17、259A8259A,它为输入。,它为输入。主、从片主、从片8259A 8259A 的的CASCAS2 2CASCAS0 0对应相连,主片对应相连,主片8259A8259A在第一个响应周期内通过在第一个响应周期内通过CASCAS2 2CASCAS0 0送出识别码,而和此识别码相符的从片送出识别码,而和此识别码相符的从片8259A8259A在接收到第二个信号后在接收到第二个信号后,将中断类型码发送到数据总线上。,将中断类型码发送到数据总线上。u / / :从编程:从编程/ /缓冲器允许信号,双向。缓冲器允许信号,双向。 / / 作为输入还是输出,取决于作为输入还是输出,取决于8259A8259A是

18、否采用缓冲方式,若采用缓冲方式,是否采用缓冲方式,若采用缓冲方式, / / 作为输出,反之,作为输入作为输出,反之,作为输入。作为输入的。作为输入的 使用时,用于区分主、从片使用时,用于区分主、从片8259A8259A。主片。主片8259A8259A的的=1=1,从片,从片8259A8259A的的=0=0。作为输出的。作为输出的 使用时,作为数据总线缓冲器的使能信号。使用时,作为数据总线缓冲器的使能信号。uINTINT:中断请求信号,输出。与:中断请求信号,输出。与CPUCPU的的INTRINTR引脚连接。引脚连接。u :中断响应信号,输入。与:中断响应信号,输入。与CPUCPU的的 引脚连接

19、。引脚连接。 CSINTAINTASPENSPENSPENSPEN 7.3.3 Intel 8259A7.3.3 Intel 8259A的引脚的引脚 双列直插式芯片,双列直插式芯片,2828个引脚个引脚 方方 波波键键 盘盘保保 留留串串 口口2 2 硬硬 盘盘软软 盘盘打印机打印机IOWIOW18.2Hz18.2HzA0A0CSCS8259A8259A总线总线A0A0数数 据据 线线 IORIORRDRDWRWR片片选选译译码码IR0IR0IR1IR1IR2IR2IR3IR3IR4IR4IR5IR5IR6IR6IR7IR7A1A1 A7A7D0D0 D7D7D0D0 D7D7VccVccSP

20、/ENSP/ENCAS0CAS0CAS1CAS1CAS2CAS2GNDGND+ 5V+ 5V用于多片用于多片8259A8259A级连情况级连情况INTAINTAINTINT INTA INTA INTR INTR串串 口口1 1 定时器定时器u1. 1. 中断嵌套方式中断嵌套方式 u (1 1)全嵌套方式。全嵌套方式是)全嵌套方式。全嵌套方式是8259A8259A最常用的一种最常用的一种工作方式,中断优先级别固定,工作方式,中断优先级别固定,IRIR0 0最高,最高,IRIR7 7最低。当最低。当IRIRi i中断请求响应时,相应的中断请求响应时,相应的ISRISRi i位置位置1 1,在中断

21、服务过,在中断服务过程中禁止同级和优先级低于本级的中断请求。程中禁止同级和优先级低于本级的中断请求。u (2 2)特殊全嵌套方式。特殊全嵌套方式与全嵌套方)特殊全嵌套方式。特殊全嵌套方式与全嵌套方式基本相同,只是在特殊全嵌套方式下,可响应同级式基本相同,只是在特殊全嵌套方式下,可响应同级的中断请求。特殊全嵌套方式一般用于的中断请求。特殊全嵌套方式一般用于8259A8259A的级联情的级联情况。况。u(1 1)优先级自动循环方式。初始时,优先次序为)优先级自动循环方式。初始时,优先次序为IRIR0 0IRIR7 7,IRIR0 0最高,最高,IRIR7 7最低。当某级中断响应后,则最低。当某级中

22、断响应后,则优先级降为最低。而其后的与之相邻的优先级升为最优先级降为最低。而其后的与之相邻的优先级升为最高。如,高。如,IRIR3 3响应后的优先级次序变为响应后的优先级次序变为IRIR4 4,IRIR5 5,IRIR6 6,IRIR7 7,IRIR0 0,IRIR1 1,IRIR2 2,IRIR3 3。u(2 2)优先权特殊循环方式。优先权特殊循环方式与优)优先权特殊循环方式。优先权特殊循环方式与优先权循环方式相比仅有一点不同,就是在优先权特殊先权循环方式相比仅有一点不同,就是在优先权特殊循环方式下,一开始的最低优先权是由编程确定的。循环方式下,一开始的最低优先权是由编程确定的。 u(1 1

23、)普通屏蔽方式。这种屏蔽方式是通过编程将中断屏蔽字写入)普通屏蔽方式。这种屏蔽方式是通过编程将中断屏蔽字写入IMRIMR而实现的。若写入某位为而实现的。若写入某位为1 1,则对应的中断请求被屏蔽;为,则对应的中断请求被屏蔽;为0 0,则对应的中断请求被开放。则对应的中断请求被开放。 u(2 2)特殊屏蔽方式。)特殊屏蔽方式。在执行较高级的中断服务时,希望开放较低在执行较高级的中断服务时,希望开放较低级的中断请求。级的中断请求。采用普通屏蔽方式是不能实现这一要求的,因为采用普通屏蔽方式是不能实现这一要求的,因为用普通方式时,即使把较低级的中断请求开放,但由于用普通方式时,即使把较低级的中断请求开

24、放,但由于ISRISR中当前中当前正在服务的较高中断级的对应位仍为正在服务的较高中断级的对应位仍为“1”1”,它会禁止所有优先级,它会禁止所有优先级比它低的中断请求。采用特殊屏蔽方式,可在中断服务程序中用比它低的中断请求。采用特殊屏蔽方式,可在中断服务程序中用中断屏蔽命令字来屏蔽当前正在服务的中断级别(即设置中断屏蔽命令字来屏蔽当前正在服务的中断级别(即设置IMRIMR的相的相应位为应位为“1”1”),同时使),同时使ISRISR中对应位清中对应位清“0”0”,这样就不但屏蔽了,这样就不但屏蔽了当前正在服务的中断级,同时真正开放了其它优先级较低的中断当前正在服务的中断级,同时真正开放了其它优先

25、级较低的中断请求。请求。 u8259A8259A有两种不同的结束中断处理方式:有两种不同的结束中断处理方式: u(1 1)自动中断结束方式()自动中断结束方式(AEOIAEOI)。此种方式只能用于单)。此种方式只能用于单片片8259A8259A的系统中,的系统中,8259A8259A在第二个在第二个 信号的上升沿,自信号的上升沿,自动清除动清除ISRISR的相应位。的相应位。显然显然AEOIAEOI只能用于不允许中断嵌套只能用于不允许中断嵌套的情况下。的情况下。 u(2 2)非自动中断结束方式()非自动中断结束方式(EOIEOI)。在这种工作方式下)。在这种工作方式下,中断服务程序返回前,必须

26、向中断服务程序返回前,必须向8259A8259A发送中断结束命令发送中断结束命令,清除,清除ISRISR的相应位,的相应位,表示该中断处理的结束。表示该中断处理的结束。INTAu(1 1)边沿触发方式)边沿触发方式u(2 2)电平触发方式)电平触发方式6 6中断请求触发方式中断请求触发方式 设置查询方式的过程为:写入查询方式命令字,然后设置查询方式的过程为:写入查询方式命令字,然后读取读取8259A8259A的查询字(的查询字(IRRIRR寄存器)。寄存器)。I=1I=1(D D7 7)表示有中)表示有中断请求,断请求,W W2 2W W1 1W W0 0表示表示8259A8259A请求服务的

27、最高优先级编码请求服务的最高优先级编码。 W2W1W0D7D6D5D4D3D2D1D0I7.3.5 8259A7.3.5 8259A的级联的级联 在一个中断系统中,可以使用多片在一个中断系统中,可以使用多片8259A8259A,采用级联方法,采用级联方法,使中断优先级从使中断优先级从8 8级可扩展到级可扩展到6464级。在级联时,只能有一片级。在级联时,只能有一片8259A8259A作为主片,其余的作为主片,其余的8259A8259A均作为从片。均作为从片。 主主8259A8259A的三条级联线的三条级联线CASCAS0 0CASCAS2 2作为输出线,通过驱动作为输出线,通过驱动器连接到每个

28、从片的器连接到每个从片的CASCAS0 0CASCAS2 2的输入端。如只有一个从片,的输入端。如只有一个从片,也可不加驱动器。也可不加驱动器。 图图8-98-9为为80 x8680 x86微机系统中,使用微机系统中,使用2 2片片8259A8259A构成的级联中构成的级联中断系统。系统分配给主片断系统。系统分配给主片8259A8259A的端口地址为的端口地址为20H20H和和21H21H,从片,从片8259A8259A的端口地址为的端口地址为A0HA0H和和A1HA1H,系统加电后,系统加电后,BIOSBIOS对它们的初对它们的初始化程序如下:始化程序如下: 8259A8259A在在80X8

29、680X86系统中的应用系统中的应用 ;主片;主片8259A8259AMOV AL,11H MOV AL,11H ;设置;设置ICWICW1 1,边沿触发,需,边沿触发,需ICWICW4 4OUT 20H,ALOUT 20H,ALMOV AL,08H MOV AL,08H ;设置;设置ICWICW2 2,中断类型号的高,中断类型号的高5 5位为位为0000100001OUT 21H,ALOUT 21H,ALMOV AL,04H MOV AL,04H ;设置;设置ICWICW3 3,从片连到主片的,从片连到主片的IRIR2 2上上OUT 21H,ALOUT 21H,ALMOV AL,15H MO

30、V AL,15H ;设置;设置ICWICW4 4,非缓冲,非自动,非缓冲,非自动EOIEOI,特殊全嵌套方式,特殊全嵌套方式OUT 21H,AL OUT 21H,AL ;从片;从片8259A8259AMOV AL,11H MOV AL,11H ;设置;设置ICWICW1 1,边沿触发,需,边沿触发,需ICWICW4 4OUT 0A0H,ALOUT 0A0H,ALMOV AL,70H MOV AL,70H ;设置;设置ICWICW2 2,中断类型号的高,中断类型号的高5 5位为位为0111001110OUT 0A1H,ALOUT 0A1H,ALMOV AL,02H MOV AL,02H ;设置;

31、设置ICWICW3 3,设定从片级联于主片的,设定从片级联于主片的IRIR2 2OUT 0A1H,ALOUT 0A1H,ALMOV AL,01H MOV AL,01H ;设置;设置ICWICW4 4,非缓冲,非自动,非缓冲,非自动EOIEOI,全嵌套方式,全嵌套方式OUT 0A1H,AL OUT 0A1H,AL 7.3.6 8259A7.3.6 8259A的编程的编程1 18259A8259A的初始化命令字的初始化命令字(1 1)初始化命令字)初始化命令字ICWICW1 11LTIMADISNGLICW4D7D6D5D4D3D2D1D0A00D D3 3(LTIMLTIM)表示中断请求信号起作

32、用的触发方式。)表示中断请求信号起作用的触发方式。D D3 3=1=1为电平触为电平触发,发,D D3 3=0=0为边沿触发。为边沿触发。 D D1 1(SNGLSNGL)表示系统是使用单片)表示系统是使用单片8259A8259A还是多片还是多片8259A8259A。D D1 1=1=1为单为单片,片,D D1 1=0=0为多片。为多片。 D D0 0(ICWICW4 4)表示是否需要)表示是否需要ICWICW4 4。D D0 0=1=1为需要,为需要,D D0 0=0=0为不需要。为不需要。 D D2 2(ADIADI)在)在808080808085CPU8085CPU模式下用,模式下用,8

33、0 x86 CPU80 x86 CPU模式下不用。模式下不用。 (2 2) 初始化命令字初始化命令字ICWICW2 2 设定设定8259A8259A的中断类型号的中断类型号 T7D7D6D5D4D3D2D1D0A01T6T4T5T3 D D7 7D D3 3为中断类型号的高为中断类型号的高5 5位,由用户给出。低位,由用户给出。低3 3位由位由8259A8259A按按IRIR0 0IRIR7 7三位编码值自动填入。三位编码值自动填入。 u8259A8259A作为主片的格式:作为主片的格式:(D Di i=1=1表示表示IRIRi i接有从片接有从片)D7D6D5D4D3D2D1D0A01S7S

34、5S6S4S3S2S1S08259A8259A作为从片的格式:作为从片的格式: 0ID2ID1ID0D7D6D5D4D3D2D1D0A010000表示从片的表示从片的INTINT输出与主片输出与主片8259A8259A中的哪一个中的哪一个IRIRi i相连接相连接 (4)4) 初始化命令字初始化命令字ICWICW4 4 SFNMM/SAEOIPMD7D6D5D4D3D2D1D0A01000BUFD D0 0(PMPM):):D D0 0=1=1为为80 x8680 x86系统,系统,D D0 0=0=0为为8080808080858085系统。系统。D D1 1(AEOI)AEOI):表示是否

35、采用自动结束中断方式,:表示是否采用自动结束中断方式,D D1 1=1=1为自动中断为自动中断结束方式,结束方式,D D1 1=0=0为非自动中断结束方式。为非自动中断结束方式。 D D2 2(M/SM/S):):D D2 2=1=1为主片,为主片,D D2 2=0=0为从片。为从片。 D D3 3(BUFBUF):):D D3 3=1=1表示有缓冲器表示有缓冲器D D3 3=0=0表示没有缓冲器。表示没有缓冲器。( (决定决定8259A8259A和系统数据总线之间是否有缓冲器和系统数据总线之间是否有缓冲器) )D D4 4(SFNMSFNM):):D D4 4=1=1为特殊全嵌套方式,为特殊

36、全嵌套方式,D D4 4=0=0为全嵌套方式。(用为全嵌套方式。(用于设定级联方式下的优先权管理方式)于设定级联方式下的优先权管理方式) u(1 1) 操作命令字操作命令字OCWOCW1 1(屏蔽操作命令字)(屏蔽操作命令字)D7D6D5D4D3D2D1D0A01M7M5M6M4M3M2M1M0M Mi i=1=1表示表示IRIRi i上的中断请求被屏蔽上的中断请求被屏蔽 uD D7 7(R R):中断排队是否循环的标志。):中断排队是否循环的标志。R=1R=1为优先级循环方式,为优先级循环方式,R=0R=0为固定优先级方式。为固定优先级方式。 uD D6 6(SLSL):选择):选择L L2

37、 2L L1 1L L0 0编码是否有效的标志。若编码是否有效的标志。若SL=1SL=1,则,则L L2 2L L1 1L L0 0编码编码有效,若有效,若SL=0SL=0,则无效。,则无效。 uD D5 5(EOIEOI):中断结束命令。):中断结束命令。D D5 5=1=1时,则使现行的时,则使现行的ISRISR中最高优先级中最高优先级的相应位复位(一般中断结束方式),或由的相应位复位(一般中断结束方式),或由L L2 2L L1 1L L0 0指定的指定的ISRISR相应相应位复位(特殊中断结束方式)。位复位(特殊中断结束方式)。 uD D2 2D D1 1D D0 0(L L2 2L

38、L1 1L L0 0):对应):对应8 8个二进制编码,有两个作用:一是用在特个二进制编码,有两个作用:一是用在特殊殊EOIEOI命令中,表示清除的是命令中,表示清除的是ISRISR的哪一位;另一是用在优先权特的哪一位;另一是用在优先权特殊循环方式中,表示系统中最低优先级编码。殊循环方式中,表示系统中最低优先级编码。 0L2L1L0D7D6D5D4D3D2D1D0A00EOISLR0uD D6 6D D5 5:决定:决定8259A8259A是否工作于特殊屏蔽方式。是否工作于特殊屏蔽方式。D D6 6D D5 5为为1111时,时,8259A8259A为特殊屏蔽方式;为特殊屏蔽方式;D D6 6

39、D D5 5为为1010时,时,8259A8259A为一般屏蔽方式。为一般屏蔽方式。 uD D1 1D D0 0:两位规定随后读取的寄存器。:两位规定随后读取的寄存器。D D1 1D D0 0为为1111时,时,表示要读表示要读ISRISR;D D1 1D D0 0为为1010时,表示要读时,表示要读IRRIRR。uD D2 2(P)(P):决定:决定8259A8259A是否处于程序查询方式。是否处于程序查询方式。D D2 2=1=1时,时,8259A8259A处于程序查询方式。当处于程序查询方式。当8259A8259A发出查询发出查询命令后,随后从偶地址读出的数据即为中断请求命令后,随后从偶

40、地址读出的数据即为中断请求状态字,其格式见状态字,其格式见7.3.37.3.3中的程序查询方式。中的程序查询方式。0PRRRISD7D6D5D4D3D2D1D0A00SMMESMM01uMOV ALMOV AL,00010011B 00010011B ;ICW1ICW1,边沿触发,单片,边沿触发,单片8259A8259A,需,需ICW4ICW4uOUT 20HOUT 20H,AL AL uMOV ALMOV AL,00001000B 00001000B ;设置;设置ICW2ICW2,中断类型号高,中断类型号高5 5位为位为00001 00001 uOUT 21HOUT 21H,AL AL uM

41、OV ALMOV AL,00001101B 00001101B ;设置;设置ICW4ICW4,非自动中断结束方式,非自动中断结束方式,u ;完全嵌套方式,缓冲方式;完全嵌套方式,缓冲方式 uOUT 21HOUT 21H,AL AL u 若要对若要对IRRIRR或或ISRISR读出时,则必须先写一个读出时,则必须先写一个OCWOCW3 3命命令字,以便令字,以便8259A8259A处于被读状态,然后再从偶地址端口处于被读状态,然后再从偶地址端口读出读出IRRIRR或或ISRISR中的内容。程序段如下:中的内容。程序段如下:u MOV ALMOV AL,0EH0EHu OUT 20H OUT 20H,AL AL ;设置;设置OCWOCW3 3u NOP NOPu IN AL IN AL,20H 20H ;读;读IRRIRR内容内容uDATA SEGMENTDATA SEGMENTu MESS DB This is a 8259A MESS DB This is a 8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论