您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 12第7章中断与8259芯片07电信
取一条指令执行指令指令执行完?有中断请求?取中断类型号FR入栈IF=0CS:IP入栈进入中断处理NNYY中断系统中断源:有硬件故障、外部设备、CPU内部三种中断源。内部中断外部中断软件中断陷阱中断可屏蔽中断不可屏蔽中断中断的分类中断响应过程中断处理过程保存现场开中断执行中断服务关中断恢复现场开中断返回断点中断优先级判断硬件排队电路法优点是速度快,但连线较多。串行排队链电路有时也称菊花链硬件查询线路,电路较简单,但优先级不灵活,一旦硬件连接固定以后,优先次序也就固定了,想再改变或调整优先级很困难。两维结构优先排队软件查询法软件查询法是建立在简单接口电路基础之上中断嵌套8086/8088的中断系统CPU的内中断CPU的外中断分类软件中断陷阱中断不可屏蔽中断NMI(Non—maskableinterrupt)N=2可屏蔽中断INTR(Interruptrequestion)N=5断点中断N=3溢出中断N=4指令中断N=5除法错中断N=0单步中断N=18088/8086CPU将存储器00000H~003FFH区域用于存放中断向量(即中断服务程序入口地址),此区域共有1024个字节单元,最多可容纳256个中断向量。中断向量指针与中断类型号中断向量指针=中断类型号*4中断向量=(中断向量指针)中断向量的装入:在程序初始化部分进行。例如,假设中断类型号为60H,中断服务程序的段基址是SEG_INTR,偏移地址是OFFSET_INTR(006DH),则填写中断向量表的程序段为:CLI;令IF=0MOVAX,0;MOVDS,AX;MOVDI,4*60H;中断向量指针→DIMOVAX,OFFSET_INTR;中断服务程序入口的偏移值→AXMOV(DI),AX;AX→[DI][DI+1]中MOVAX,SEG-INTR;中断服务程序入口的段基址→AXMOV(DI+2),AX;AX→[DI+2][DI+3]STI;令IF=1MOVAX,00HMOVDS,AXMOVBX,60H*4;中断类型号×4→BXMOVAX,006DH;中断服务程序偏移地址MOV[BX],AX;装入偏移地址PUSHCSPOPAX;中断服务程序段基址MOV[BX+2],AX;装入段基址采用DOS功能调用“INT21H”中的AH=25H来装入中断向量:MOVAX,N;中断类型号MOVAH,25H;设置中断向量MOVDX,SEG_INTRMOVDS,DX;DS指向中断程序段址MOVDX,OFFSET_INTR;DX指向中断程序偏移量INT21H可编程中断控制器8259A功能:管理输入到CPU的中断请求,实现优先级判决,提供中断类型号,屏蔽中断输入等功能,能直接管理8级中断,通过级联,可管理64级中断。内部结构及引脚特性:A00XXX1LTIMXSNGLIC4ICW11T7T6T5T4T3XXXICW21S7S6S5S4S3S2S1S0主ICW31XXXXXID2ID1ID0从ICW31000SFNMBUFM/SAEOI1ICW41M7M6M5M4M3M2M1M0OCW10XESMMSMM01PRRRISOCW30XXXX查询字0RSLEOI00L2L1L0OCW2初始化控制字操作控制字ICW1ICW2SGNL=1主片?主ICW3从ICW3IC4=1ICW4结束YNNYYN例:4个通道:IR0、IR1、IR2、IR3,全嵌套方式,边沿触发,EOI方式,中断类型分别为:90H、901、92H、93H,中断向量分别为:0060H、0090H、00A0HH、00B0H,存于CS:340H开始的区域,地址:FFDCH,FFDEH。ICW1:00010011B=13HICW2:90HICW4:00000001B=01HOCW1:11110000B=F0HCLCMOVDX,0FFDCHMOVAL,13HOUTDX,ALINCDXMOVAL,90HOUTDX,ALMOVAL,01HOUTDX,ALMOVAL,0F0HOUTDX,ALSUBAX,AXMOVES,AXMOVCX,0004HPUSHCSPOPDSMOVSI,0340HMOVDI,240HCLDLOOP1:MOVSWMOVES:[DI],DSINCDIINCDILOOPLOOP1STI例:有一片主片和两片从片8259A,主片为:特定全嵌套方式、边沿触发、EOI方式、中断类型为:40H;从片为:全嵌套方式、边沿触发、EOI方式、中断类型为:60H、80H;,地址:FFDCH,FFDEH。主片:ICW1:00010001B=11HICW2:40HICW3:01001000B=48HICW4:00010001B=11H从片A:ICW1:00010001B=11HICW2:80HICW3:00000110B=06HICW4:00000001B=11H从片B:ICW1:00010001B=11HICW2:60HICW3:00000011B=03HICW4:00000001B=11H+5VINAL,21HOUT43H,AL端口(PORT)端口泛指I/O地址,通常对应寄存器一个接口电路可以具有多个I/O端口,每个端口用来保存和交换不同的信息数据寄存器、状态寄存器和控制寄存器占有的I/O地址常依次被称为数据端口、状态端口和控制端口,用于保存数据、状态和控制信息输入、输出端口可以是同一个I/O地址一定要理解
本文标题:12第7章中断与8259芯片07电信
链接地址:https://www.777doc.com/doc-343653 .html