微机原理及应用(第7章)教材课件.ppt

上传人(卖家):ziliao2023 文档编号:7471530 上传时间:2024-01-23 格式:PPT 页数:51 大小:2.27MB
下载 相关 举报
微机原理及应用(第7章)教材课件.ppt_第1页
第1页 / 共51页
微机原理及应用(第7章)教材课件.ppt_第2页
第2页 / 共51页
微机原理及应用(第7章)教材课件.ppt_第3页
第3页 / 共51页
微机原理及应用(第7章)教材课件.ppt_第4页
第4页 / 共51页
微机原理及应用(第7章)教材课件.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

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 2中

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

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

5、处理的中断系统可处理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)执行一个总线读周期,从中断向量表中读取中断服务程执行一个总线读周期,从中断向量表中读取中断服务程序的偏移地址并送序的偏移地址并送I

7、PIP;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 可屏蔽中断可屏蔽中断INTRINTRu 单步中断单步中断中断向量

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

11、中断向量表中断向量表中“查表查表”得到中断服务程序入口地址得到中断服务程序入口地址,分别送,分别送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,中断服务程序偏移地址中断服务程序偏移地址uMOV SI,AXMOV SI,AXuMOV AX,MOV AX,中断服务程序段地址中

12、断服务程序段地址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功能调用功能调用 INT 21H)INT 21H)u 功能号:功能号:AH=35HAH=35Hu 入口参数:入口参数:AL=AL=中断

13、类型号中断类型号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)都集)都集成有与两片成有与两片8259A8259A相当的中断控制电路。相当的中断控制电路。u 具有具有8 8级优先权控制,通过级联可

14、扩展至级优先权控制,通过级联可扩展至6464级级u 每一级均可通过编程实现屏蔽或开放。每一级均可通过编程实现屏蔽或开放。u 能向能向CPUCPU提供相应的中断类型号。提供相应的中断类型号。u 可通过编程选择不同的工作方式。可通过编程选择不同的工作方式。u 中断请求寄存器(中断请求寄存器(IRRIRR):用于寄存外部设备提出的中断用于寄存外部设备提出的中断请求,当请求,当IRIR0 0IRIR7 7中任何一个变为高电平,中任何一个变为高电平,IRRIRR中的相应位置中的相应位置“1”1”。u 中断服务寄存器(中断服务寄存器(ISRISR):用于寄存所有正在被服务的中):用于寄存所有正在被服务的中

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

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

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

18、使用时,用于区分主、从片8259A8259A。主片。主片8259A8259A的的=1=1,从片,从片8259A8259A的的=0=0。作为输出的。作为输出的 使用时,作为数据总线缓冲器的使能信号。使用时,作为数据总线缓冲器的使能信号。uINTINT:中断请求信号,输出。与:中断请求信号,输出。与CPUCPU的的INTRINTR引脚连接。引脚连接。u :中断响应信号,输入。与:中断响应信号,输入。与CPUCPU的的 引脚连接。引脚连接。CSINTAINTASPENSPENSPENSPEN 7.3.3 Intel 8259A7.3.3 Intel 8259A的引脚的引脚 双列直插式芯片,双列直插式

19、芯片,2828个引脚个引脚 方方 波波键键 盘盘保保 留留串串 口口2 2 硬硬 盘盘软软 盘盘打印机打印机IOWIOW18.2Hz18.2HzA0A0CSCS8259A8259A总线总线A0A0数数 据据 线线 IORIORRDRDWRWR片片选选译译码码IR0IR0IR1IR1IR2IR2IR3IR3IR4IR4IR5IR5IR6IR6IR7IR7A1A1 A7A7D0D0 D7D7D0D0 D7D7VccVccSP/ENSP/ENCAS0CAS0CAS1CAS1CAS2CAS2GNDGND+5V+5V用于多片用于多片8259A8259A级连情况级连情况INTAINTAINTINT INT

20、A INTA INTR INTR串串 口口1 1 定时器定时器u1.1.中断嵌套方式中断嵌套方式 u (1 1)全嵌套方式。全嵌套方式是)全嵌套方式。全嵌套方式是8259A8259A最常用的一种最常用的一种工作方式,中断优先级别固定,工作方式,中断优先级别固定,IRIR0 0最高,最高,IRIR7 7最低。当最低。当IRIRi i中断请求响应时,相应的中断请求响应时,相应的ISRISRi i位置位置1 1,在中断服务过,在中断服务过程中禁止同级和优先级低于本级的中断请求。程中禁止同级和优先级低于本级的中断请求。u (2 2)特殊全嵌套方式。特殊全嵌套方式与全嵌套方)特殊全嵌套方式。特殊全嵌套方

21、式与全嵌套方式基本相同,只是在特殊全嵌套方式下,可响应同级式基本相同,只是在特殊全嵌套方式下,可响应同级的中断请求。特殊全嵌套方式一般用于的中断请求。特殊全嵌套方式一般用于8259A8259A的级联情的级联情况。况。u(1 1)优先级自动循环方式。初始时,优先次序为)优先级自动循环方式。初始时,优先次序为IRIR0 0IRIR7 7,IRIR0 0最高,最高,IRIR7 7最低。当某级中断响应后,则最低。当某级中断响应后,则优先级降为最低。而其后的与之相邻的优先级升为最优先级降为最低。而其后的与之相邻的优先级升为最高。如,高。如,IRIR3 3响应后的优先级次序变为响应后的优先级次序变为IRI

22、R4 4,IRIR5 5,IRIR6 6,IRIR7 7,IRIR0 0,IRIR1 1,IRIR2 2,IRIR3 3。u(2 2)优先权特殊循环方式。优先权特殊循环方式与优)优先权特殊循环方式。优先权特殊循环方式与优先权循环方式相比仅有一点不同,就是在优先权特殊先权循环方式相比仅有一点不同,就是在优先权特殊循环方式下,一开始的最低优先权是由编程确定的。循环方式下,一开始的最低优先权是由编程确定的。u(1 1)普通屏蔽方式。这种屏蔽方式是通过编程将中断屏蔽字写入)普通屏蔽方式。这种屏蔽方式是通过编程将中断屏蔽字写入IMRIMR而实现的。若写入某位为而实现的。若写入某位为1 1,则对应的中断请

23、求被屏蔽;为,则对应的中断请求被屏蔽;为0 0,则对应的中断请求被开放。则对应的中断请求被开放。u(2 2)特殊屏蔽方式。)特殊屏蔽方式。在执行较高级的中断服务时,希望开放较低在执行较高级的中断服务时,希望开放较低级的中断请求。级的中断请求。采用普通屏蔽方式是不能实现这一要求的,因为采用普通屏蔽方式是不能实现这一要求的,因为用普通方式时,即使把较低级的中断请求开放,但由于用普通方式时,即使把较低级的中断请求开放,但由于ISRISR中当前中当前正在服务的较高中断级的对应位仍为正在服务的较高中断级的对应位仍为“1”1”,它会禁止所有优先级,它会禁止所有优先级比它低的中断请求。采用特殊屏蔽方式,可在

24、中断服务程序中用比它低的中断请求。采用特殊屏蔽方式,可在中断服务程序中用中断屏蔽命令字来屏蔽当前正在服务的中断级别(即设置中断屏蔽命令字来屏蔽当前正在服务的中断级别(即设置IMRIMR的相的相应位为应位为“1”1”),同时使),同时使ISRISR中对应位清中对应位清“0”0”,这样就不但屏蔽了,这样就不但屏蔽了当前正在服务的中断级,同时真正开放了其它优先级较低的中断当前正在服务的中断级,同时真正开放了其它优先级较低的中断请求。请求。u8259A8259A有两种不同的结束中断处理方式:有两种不同的结束中断处理方式:u(1 1)自动中断结束方式()自动中断结束方式(AEOIAEOI)。此种方式只能

25、用于单)。此种方式只能用于单片片8259A8259A的系统中,的系统中,8259A8259A在第二个在第二个 信号的上升沿,自信号的上升沿,自动清除动清除ISRISR的相应位。的相应位。显然显然AEOIAEOI只能用于不允许中断嵌套只能用于不允许中断嵌套的情况下。的情况下。u(2 2)非自动中断结束方式()非自动中断结束方式(EOIEOI)。在这种工作方式下)。在这种工作方式下,中断服务程序返回前,必须向中断服务程序返回前,必须向8259A8259A发送中断结束命令发送中断结束命令,清除,清除ISRISR的相应位,的相应位,表示该中断处理的结束。表示该中断处理的结束。INTAu(1 1)边沿触

26、发方式)边沿触发方式u(2 2)电平触发方式)电平触发方式6 6中断请求触发方式中断请求触发方式 设置查询方式的过程为:写入查询方式命令字,然后设置查询方式的过程为:写入查询方式命令字,然后读取读取8259A8259A的查询字(的查询字(IRRIRR寄存器)。寄存器)。I=1I=1(D D7 7)表示有中)表示有中断请求,断请求,W W2 2W W1 1W W0 0表示表示8259A8259A请求服务的最高优先级编码请求服务的最高优先级编码。W2W1W0D7D6D5D4D3D2D1D0I7.3.5 8259A7.3.5 8259A的级联的级联 在一个中断系统中,可以使用多片在一个中断系统中,可

27、以使用多片8259A8259A,采用级联方法,采用级联方法,使中断优先级从使中断优先级从8 8级可扩展到级可扩展到6464级。在级联时,只能有一片级。在级联时,只能有一片8259A8259A作为主片,其余的作为主片,其余的8259A8259A均作为从片。均作为从片。主主8259A8259A的三条级联线的三条级联线CASCAS0 0CASCAS2 2作为输出线,通过驱动作为输出线,通过驱动器连接到每个从片的器连接到每个从片的CASCAS0 0CASCAS2 2的输入端。如只有一个从片,的输入端。如只有一个从片,也可不加驱动器。也可不加驱动器。图图8-98-9为为80 x8680 x86微机系统中

28、,使用微机系统中,使用2 2片片8259A8259A构成的级联中构成的级联中断系统。系统分配给主片断系统。系统分配给主片8259A8259A的端口地址为的端口地址为20H20H和和21H21H,从片,从片8259A8259A的端口地址为的端口地址为A0HA0H和和A1HA1H,系统加电后,系统加电后,BIOSBIOS对它们的初对它们的初始化程序如下:始化程序如下:8259A8259A在在80X8680X86系统中的应用系统中的应用 ;主片;主片8259A8259AMOV AL,11H MOV AL,11H ;设置;设置ICWICW1 1,边沿触发,需,边沿触发,需ICWICW4 4OUT 20

29、H,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 MOV AL,15H ;设置;设置ICWICW4 4,非缓冲,非自动,非缓冲,非自动EOIEOI,特殊全嵌套方式,特殊全嵌套方式OUT 21H,AL OUT 21H,AL;从片;从片8259A8259AMO

30、V 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 ;设置;设置ICWICW3 3,设定从片级联于主片的,设定从片级联于主片的IRIR2 2OUT 0A1H,ALOUT 0A1H,ALMOV AL,01H MOV AL,01H ;设置;设置ICWICW4 4,非缓

31、冲,非自动,非缓冲,非自动EOIEOI,全嵌套方式,全嵌套方式OUT 0A1H,AL OUT 0A1H,AL 7.3.6 8259A7.3.6 8259A的编程的编程1 18259A8259A的初始化命令字的初始化命令字(1 1)初始化命令字)初始化命令字ICWICW1 11LTIMADISNGLICW4D7D6D5D4D3D2D1D0A00D D3 3(LTIMLTIM)表示中断请求信号起作用的触发方式。)表示中断请求信号起作用的触发方式。D D3 3=1=1为电平触为电平触发,发,D D3 3=0=0为边沿触发。为边沿触发。D D1 1(SNGLSNGL)表示系统是使用单片)表示系统是使用

32、单片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模式下用,模式下用,80 x86 CPU80 x86 CPU模式下不用。模式下不用。(2 2)初始化命令字初始化命令字ICWICW2 2 设定设定8259A8259A的中断类型号的中断类型号 T7D7D6D5D4D3D2D1D0A0

33、1T6T4T5T3 D D7 7D D3 3为中断类型号的高为中断类型号的高5 5位,由用户给出。低位,由用户给出。低3 3位由位由8259A8259A按按IRIR0 0IRIR7 7三位编码值自动填入。三位编码值自动填入。u8259A8259A作为主片的格式:作为主片的格式:(D Di i=1=1表示表示IRIRi i接有从片接有从片)D7D6D5D4D3D2D1D0A01S7S5S6S4S3S2S1S08259A8259A作为从片的格式:作为从片的格式:0ID2ID1ID0D7D6D5D4D3D2D1D0A010000表示从片的表示从片的INTINT输出与主片输出与主片8259A8259A

34、中的哪一个中的哪一个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):表示是否采用自动结束中断方式,:表示是否采用自动结束中断方式,D D1 1=1=1为自动中断为自动中断结束方式,结束方式,D D1 1=0=0为非自动中断结束方式。为非自动中断结束方式。D D2 2(M/SM/S):):D D2

35、 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为特殊全嵌套方式,为特殊全嵌套方式,D D4 4=0=0为全嵌套方式。(用为全嵌套方式。(用于设定级联方式下的优先权管理方式)于设定级联方式下的优先权管理方式)u(1 1)操作命令字操作命令字OCWOCW1 1(屏蔽操作命令字)(屏蔽操作命令字)D7D6D

36、5D4D3D2D1D0A01M7M5M6M4M3M2M1M0M Mi i=1=1表示表示IRIRi i上的中断请求被屏蔽上的中断请求被屏蔽 uD D7 7(R R):中断排队是否循环的标志。):中断排队是否循环的标志。R=1R=1为优先级循环方式,为优先级循环方式,R=0R=0为固定优先级方式。为固定优先级方式。uD D6 6(SLSL):选择):选择L L2 2L L1 1L L0 0编码是否有效的标志。若编码是否有效的标志。若SL=1SL=1,则,则L L2 2L L1 1L L0 0编码编码有效,若有效,若SL=0SL=0,则无效。,则无效。uD D5 5(EOIEOI):中断结束命令。

37、):中断结束命令。D D5 5=1=1时,则使现行的时,则使现行的ISRISR中最高优先级中最高优先级的相应位复位(一般中断结束方式),或由的相应位复位(一般中断结束方式),或由L L2 2L L1 1L L0 0指定的指定的ISRISR相应相应位复位(特殊中断结束方式)。位复位(特殊中断结束方式)。uD D2 2D D1 1D D0 0(L L2 2L L1 1L L0 0):对应):对应8 8个二进制编码,有两个作用:一是用在特个二进制编码,有两个作用:一是用在特殊殊EOIEOI命令中,表示清除的是命令中,表示清除的是ISRISR的哪一位;另一是用在优先权特的哪一位;另一是用在优先权特殊循

38、环方式中,表示系统中最低优先级编码。殊循环方式中,表示系统中最低优先级编码。0L2L1L0D7D6D5D4D3D2D1D0A00EOISLR0uD D6 6D D5 5:决定:决定8259A8259A是否工作于特殊屏蔽方式。是否工作于特殊屏蔽方式。D D6 6D D5 5为为1111时,时,8259A8259A为特殊屏蔽方式;为特殊屏蔽方式;D D6 6D D5 5为为1010时,时,8259A8259A为一般屏蔽方式。为一般屏蔽方式。uD D1 1D D0 0:两位规定随后读取的寄存器。:两位规定随后读取的寄存器。D D1 1D D0 0为为1111时,时,表示要读表示要读ISRISR;D

39、D1 1D D0 0为为1010时,表示要读时,表示要读IRRIRR。uD D2 2(P)(P):决定:决定8259A8259A是否处于程序查询方式。是否处于程序查询方式。D D2 2=1=1时,时,8259A8259A处于程序查询方式。当处于程序查询方式。当8259A8259A发出查询发出查询命令后,随后从偶地址读出的数据即为中断请求命令后,随后从偶地址读出的数据即为中断请求状态字,其格式见状态字,其格式见7.3.37.3.3中的程序查询方式。中的程序查询方式。0PRRRISD7D6D5D4D3D2D1D0A00SMMESMM01uMOV ALMOV AL,00010011B 0001001

40、1B;ICW1ICW1,边沿触发,单片,边沿触发,单片8259A8259A,需,需ICW4ICW4uOUT 20HOUT 20H,AL AL uMOV ALMOV AL,00001000B 00001000B;设置;设置ICW2ICW2,中断类型号高,中断类型号高5 5位为位为00001 00001 uOUT 21HOUT 21H,AL AL uMOV ALMOV AL,00001101B 00001101B;设置;设置ICW4ICW4,非自动中断结束方式,非自动中断结束方式,u ;完全嵌套方式,缓冲方式;完全嵌套方式,缓冲方式 uOUT 21HOUT 21H,AL AL u 若要对若要对IR

41、RIRR或或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

42、 This is a 8259A interrupt!,0Ah,0Dh,$interrupt!,0Ah,0Dh,$uDATA ENDSDATA ENDSuCODE SEGMENTCODE SEGMENTu ASSUME CS:CODE,DS:DATA ASSUME CS:CODE,DS:DATAu START:MOV AX,DATA START:MOV AX,DATAu MOV DS,AX MOV DS,AXu CLI CLI ;关中断;关中断 u PUSH DSPUSH DSu MOV AX,SEG DISPLAY MOV AX,SEG DISPLAY ;取中断服务程序入口段地;取中断服务程

43、序入口段地址址u MOV DS,AXMOV DS,AXu MOV DX,OFFSET DISPLAY MOV DX,OFFSET DISPLAY;取中断服务程序入口偏移地取中断服务程序入口偏移地址址 MOV AX,250AH MOV AX,250AH ;设置中断向量;设置中断向量 INT 21HINT 21H POP DS POP DS MOV AL,13H MOV AL,13H ;设置;设置ICWICW1 1,边沿触发,单片,边沿触发,单片8259A8259A,需,需ICWICW4 4 OUT 20H,AL OUT 20H,AL MOV AL,08H MOV AL,08H ;设置;设置ICW

44、ICW2 2,中断类型号的高,中断类型号的高5 5位为位为0000100001 OUT 21H,AL OUT 21H,AL MOV AL,05H MOV AL,05H ;设置;设置ICWICW4 4,非,非AEOIAEOI方式,完全嵌套方式方式,完全嵌套方式 OUT 21H,ALOUT 21H,AL IN AL,21H IN AL,21H ;读取;读取IMRIMR AND AL,0FBH AND AL,0FBH ;开放;开放IRIR2 2 OUT 21H,AL OUT 21H,AL MOV BL,10 MOV BL,10 ;初始化中断次数;初始化中断次数 STISTI uWAIT1:CMP B

45、L,0WAIT1:CMP BL,0u NOP NOPu JNZ WAIT1 JNZ WAIT1u CLI CLIu IN AL,21H IN AL,21Hu OR AL,04H OR AL,04H ;禁止;禁止IRIR2 2u OUT 21H,AL OUT 21H,ALu STI STIu MOV AH,4CH MOV AH,4CH ;返回;返回DOSDOSu INT 21H INT 21H u DISPLAY PROC NEAR DISPLAY PROC NEARu LEA DX,MESS LEA DX,MESS ;显示字符串;显示字符串u MOV AH,09HMOV AH,09Hu INT 21H INT 21Hu DEC BL DEC BL u MOV AL,20H MOV AL,20H ;发送中断结束命令;发送中断结束命令u OUT 20H,ALOUT 20H,ALu IRET IRETu DISPLAY ENDP DISPLAY ENDPuCODE ENDSCODE ENDSu END START END START

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(微机原理及应用(第7章)教材课件.ppt)为本站会员(ziliao2023)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|