




已阅读5页,还剩58页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,8.5中断控制器Intel8259A,8.5.1功能Intel8259A是可编程中断控制器(管理)PIC,配合CPU(I8080/85、I8086/88/286/386等)管理可屏蔽中断中断优先权管理中断屏蔽管理中断结束管理,.,8259A,8259A特点:1片8259A可以管理8级中断,经级连最多可扩展至64级每一级中断都可单独被屏蔽或允许在中断响应周期,可提供相应的调用指令(配合I8080/85)或中断向量号(配合I8086/88/286/386)8259A设计有多种工作方式,通过初始化编程进行设置,.,8.5.28259的结构及引脚,D7D0,INTA,INT,中断请求寄存器,中断屏蔽寄存器,数据总线缓冲器,IR0,IR7,读/写控制逻辑,级联缓冲器比较器,RD,WR,A0,CS,CAS0,CSA1,CAS2,SP/EN,优先权判别电路,中断服务寄存器,控制逻辑,.,8259的内部结构,中断请求寄存器IRR保存8条外界中断请求信号IR0IR7的请求状态Di位为1表示IRi引脚有中断请求;为0表示无请求中断服务寄存器ISR保存正在被8259A服务着的中断状态Di位为1表示IRi中断正在服务中;为0表示没有被服务中断屏蔽寄存器IMR保存对中断请求信号IR的屏蔽状态Di位为1表示IRi中断被屏蔽(禁止);为0表示允许8259占用两个端口地址A0=1、0(奇地址、偶地址)P323图7-118259与系统总线的连接。,.,CAS0IR0CAS1IR1CAS2IR2IR3INTAIR4IR5INTIR6IR7SP/EN,CAS0INTACAS1CAS2INTIR0IR1SP/ENIR7,CAS0IR0CAS1IR1CAS2IR2IR3INTAIR4IR5INTIR6IR7SP/EN,INTA,INTR,+5V,8259级联工作示意图,8259A的级连,输出得到响应的从片编号,.,中断级连,8259A可以级连,1个主片最多可以级连8个从片级连时,主片的级连线CAS0CAS2连至每个从片的CAS0CAS2,输出被选中的从片编号,每个从片的中断请求信号INT,连至主8259A的一个中断请求输入端IRi;主片的INT线连至CPU的中断请求输入端INTR在非缓冲方式下,引脚SP/EN,通过接地指定该片充当从片(-SP0);反之若接高电平则该片充当主片(-SP1)。,.,8259A的中断过程,CAS0CAS2,D0D7,SP/EN,IR0IR7,CPU响应周期,8259A工作波形,INT,第1个总线周期T1T2T3T4,ALE,CLK,第2个总线周期T1T2T3T4,第1个-INTA前保持高电平,INTA,LOCK,中断向量,主片输出级联信号从片接收,.,8259A的工作方式,普通全嵌套方式,特殊全嵌套方式,自动循环方式,特殊循环方式,优先权固定方式,优先权循环方式,设置优先权方式,普通中断结束方式,特殊中断结束方式,自动中断结束方式,非自动中断结束方式,结束中断方式,中断屏蔽方式,普通屏蔽方式,特殊屏蔽方式,中断触发方式,边沿触发方式,电平触发方式,数据线连接方式,缓冲方式,非缓冲方式,与CPU配合方式,与8080/8085CPU配合,与8086/8088CPU配合,级连方式,级连,不级连,.,与CPU的配合方式,与8080/8085CPU配合中断响应时,INTA信号3个机器周期有效,8259A送CALLXXXXH指令(3个字节)的机器代码到数据总线;与8086/8088CPU配合中断响应时,INTA信号2个总线周期有效,8259A送相应的中断向量号(1个字节)到数据总线。,8080/85CPU,8259A,8086/88CPU,8259A,CALLXXXXH,中断向量号,INTA,INTR,INTA,INTR,.,级连方式,不级连只用1片,如PC/XT级连使用29片,如PC/AT(2片),INTA,INTR,IR0,IR7,IR7,IR0,CAS0CAS2=010,INT,INT,D0D7,.,设置优先权方式,普通全嵌套方式8259A的中断优先权顺序固定不变,从高到低依次为:IR0、IR1、IR2、IR7中断请求后,8259A对当前请求中断中优先权最高的中断IRi予以响应,将其向量号送上数据总线,对应ISR的Di位置位,至到中断结束(ISR的Di位复位)在ISR的Di位置位期间,禁止再发生同级和低级优先权的中断,但允许高级优先权中断的嵌套特殊全嵌套方式允许同级中断嵌套(用于级连主片)P331优先权自动循环方式最高优先权自动转移到相邻的低优先级中断源(P332),如IR3被响应后,IR3最低,IR4最高。优先权特殊循环方式优先权由OCW2设置哪个IR最低,其他的随之确定。,.,中断结束字,什么是8259A的中断结束字(EOI)?,8259A判断中断服务寄存器ISR的状态:若某位为1,表示该中断源正在得到服务;一般情况下,将不再响应同级或低级的中断(采用特殊屏蔽方式时,可响应低级别的中断)若某位为0,表示该中断服务已结束,可响应低级级别中断。用指令向8259A送中断结束字,可以使ISR的某位清0该操作与CPU无关。,.,结束中断处理方式,自动中断结束方式中断响应后自动送结束字,清0ISR中当前优先级最高的中断服务标志。非自动中断结束方式中断结束时用户必须用指令送结束字,分特殊和非特殊两种。非特殊配合全嵌套优先权方式使用,清ISR中相应位当CPU用输出指令往8259A发出普通中断结束EOI命令时,8259A就会对ISR中当前优先级最高的中断服务标志清0特殊中断结束配合特殊全嵌套(循环优先权)方式中断结束时用户用指令送特定的结束字,指明要清除ISR中的哪一位。,.,屏蔽中断源方式P331,普通屏蔽方式将IMR的Di位置1,对应的中断IRi将被屏蔽,该中断请求将不能从8259A送到CPU如果将IMR的Di位置0,则允许对应的中断产生特殊屏蔽方式允许发生低级的中断嵌套,用于级连时的主片。将IMR的Di位置1,中断IRi被屏蔽;同时,ISR的Di位将置0,允许发生低级的中断。,.,6.中断触发方式,边沿触发方式中断请求输入端出现上升沿为有效的中断请求信号电平触发方式中断请求端出现高电平为有效的中断请求信号,.,7.数据线连接方式,缓冲方式对8259A的数据线(输出中断向量)加缓冲器予以隔离和驱动SP/EN引脚作为输出端,输出允许信号,用以关闭或开启缓冲器非缓冲方式SP/EN引脚作为输入端在8259A级连时,用它选择该芯片充当主片或从片,.,8.5.58259A的编程P253,初始化编程8259A开始工作前写入,共有ICW1-ICW4。用户必须对8259A进行初始化编程。通过写入初始化命令字ICW对8259A进行初始化。操作编程在8259A工作期间写入,共有OCW1OCW3。可以随时向8259A写入操作命令字OCW,使之按用户设置的新的工作方式进行工作用户还可以通过写操作命令字OCW通知8259A,下面的操作要读取8259A中的状态信息,以便了解其工作情况,.,1.初始化命令字ICW,8259A在开始工作前必须写入初始化命令字初始化命令字ICW最多可以有4个:ICW1ICW4必须按照以上顺序依次写入其中ICW1和ICW2是必须的ICW3和ICW4是否需要,由具体的工作方式决定,流程,.,ICW1写入偶地址,表示可以任意为1为0都可以(建议为0),1只能为1,作为标志,中断触发方式:LTIM1,电平触发方式LTIM0,边沿触发方式,规定单片或级连方式:SNGL1,单片方式SNGL0,级连方式,是否写入ICW4IC41,要写入ICW4IC40,不写入ICW4,即ICW4规定的位全为0,.,ICW2写入奇地址,设置中断向量号T7T3为中断向量号的高5位低3位由8259A自动确定:IR0为000、IR1为001、IR7为111,.,ICW3写入奇地址,级连命令字主片:Si1,说明其对应引脚IRi上连接有从片;否则引脚IRi上没有连接从片从片:ID0ID2编码说明该从片的INT引脚接到了主片上的哪个IRi引脚,针对从片,针对主片,.,ICW4写入奇地址,嵌套方式:特殊全嵌套方式(SFNM1)普通全嵌套方式(SFNM0),数据线的缓冲方式:缓冲方式(BUF1)非缓冲方式(BUF0),主片/从片选择:主片(M/S=1)从片(M/S=0),中断结束方式:自动中断结束(AEOI1)非自动中断结束(AEOI0),微处理器类型:16位80 x86(PM1)8位8080/8085(PM0),.,初始化主片8259A,moval,11h;写入ICW1out20h,alintr1:moval,08h;写入ICW2out21h,alintr2:moval,04h;写入ICW3out21h,alintr3:moval,1h;写入ICW4out21h,al,中断控制器的初始化程序段,PC机上8259地址:20h-21h,.,初始化从片8259A,moval,11h;写入ICW1out0a0h,alintr5:moval,70h;写入ICW2out0a1h,alintr6:moval,02h;写入ICW3out0a1h,alintr7:moval,01h;写入ICW4out0a1h,al,中断控制器的初始化程序段,该题中8259的两个地址:0a0h、0a1h,.,2.操作命令字OCW,8259A工作期间,可以随时接受操作命令字OCWOCW共有3个:OCW1OCW3写入时没有顺序要求,需要哪个OCW就写入那个OCW,.,OCW1写入奇地址,屏蔽命令字其内容将写入中断屏蔽寄存器IMRMi=1,则禁止对应IRi中断;Mi=0,则允许对应IRi中断。各位互相独立。,.,OCW2写入偶地址,R、SL和EOI配合使用产生中断结束EOI命令和改变优先权顺序,L2L0的3位编码指定IR引脚,.,OCW3写入偶地址,ESMM、SMM设置中断屏蔽方式,P、RR和RIS规定随后读取的状态字含义,.,3.读取状态字,CPU可随时读出IRR、ISR、IMR和查询字A0为低(偶地址)时由OCW3中RR和RIS位编码决定读取的是IRR或ISR,由OCW3中P位决定读取的是查询字,查询字可反映8259A是否有中断请求,及哪个引脚上有中断请求A0为高(奇地址)时,读取的是IMR,.,查询字:在OCW3的D2位P为1后的下一个读命令,查询为外设服务(P330),中断位I位为1,有外设请求中断,W2W0的编码当前中断请求的最高优先级,.,8259A的端口,.,4.命令字和状态字的区别方法,利用读写信号区别写入的控制寄存器和读出的状态寄存器利用地址信号区别不同I/O地址的寄存器由控制字中的标志位说明是哪个寄存器由芯片内顺序控制逻辑按一定顺序识别不同的寄存器由前面的控制字(引导字)决定后续操作的寄存器,接口电路中常用的方法,.,8259A在IBMPC系列机上的应用,CAS0CAS2,主8259A,D0D7INTSP/EN,实时钟改向0AH中断保留保留保留协处理器硬盘保留A0-INTRCS,IRQ8IRQ9IRQ10IRQ11IRQ12IRQ13IRQ14IRQ15A0CS,系统总线B4D3D4D5D6D7,对比8259A在IBMPC/AT机的应用,8259A在IBMPC/XT机上的应用,+5V,.,8259A在IBMPC/AT上的应用,CAS02,CAS02,+5V,主8259A,80286CPU,INTRD0D7,SP/ENINTD0D7,日时钟键盘串行口2串行口1并行口2软盘并行口1A0-INTR1CS,IRQ0IRQ1IRQ2IRQ3IRQ4IRQ5IRQ6IRQ7A0CS,从8259A,D0D7INTSP/EN,实时钟改向0AH中断保留保留保留协处理器硬盘保留A0-INTR2CS,IRQ8IRQ9IRQ10IRQ11IRQ12IRQ13IRQ14IRQ15A0CS,系统总线B25B24B23B22B21,系统总线B4D3D4D5D6D7,INTA,RD,WR,INTA,IOR,IOW,INTA,RD,WR,-S0-S2,82288,.,PC机中8259A应用注意事项,利用上升沿做为中断请求IRQ的有效信号IRQ0IRQ7中断向量号依次为08H0FHIRQ8IRQ15中断向量号依次为70H77H(PC/AT机)采用普通全嵌套优先权方式,中断优先权从高到低顺序为IRQ0IRQ2、IRQ8IRQ15(级连从片)、IRQ3IRQ7,且不能改变采用普通中断结束EOI方式,需在中断服务程序最后发送普通EOI命令一般采用普通屏蔽方式,通过写IMR相应位为0允许中断,应注意不要破坏原屏蔽状态。,.,8.6IBMPC/XT的中断结构,略,.,第8章教学要求,1.掌握中断的基本概念。(中断、CPU响应中断的条件、CPU响应中断的过程、中断优先权)。表2.掌握8088的中断类型、中断响应过程、中断向量表。3.掌握8259的功能、特点。理解8259A的内部结构、寄存器作用、中断过程、命令字。4.掌握8259A的普通全嵌套优先权、普通中断结束、边沿触发方式5、熟悉内部、外部中断服务程序的编写。,.,P263习题,38.288.31,.,外部中断服务程序,编写外部可屏蔽中断服务程序,需注意:中断服务结束时应向8259发送中断结束命令EOI(OCW2)一般只能采用存储单元来传递参数不能使用DOS系统功能调用(DOS为单用户单任务操作系统,不能重入)中断服务程序要尽量短小,以免影响系统的实时性,.,外部中断服务程序(续),编写主程序,需注意:修改中断向量控制CPU的中断允许标志设置8259A的中断屏蔽寄存器,.,例题:可屏蔽中断服务程序,在PC机中:8259A的IRQ0(向量号为08H)中断请求来自定时器8253,每隔55ms产生一次定时中断该例的08H号中断服务程序将显示一个字符串,10次中断共显示10个字符串用内存单元(共享变量)在主程序与外部中断服务程序之间传递参数:中断发生的次数显示信息安排在共同的数据段中,.,数据段,intmsgdbA8259AInterrupt!db0dh,0ah,0counterdb0,例,.,保存中断向量,movax,3508hint21hpushbx;保存偏移地址pushes;保存段基地址,例,.,设置中断向量,clipushds;保护dsmovdx,offsetnew08h;中断入口地址movax,segnew08hmovds,axmovax,2508hint21hpopds;恢复ds,例,.,设置中断寄存器,inal,21h;读IMRpushaxandal,0feh;允许IRQ0(接8253)out21h,almovcounter,0;设置中断次数初值sti;开中断,例,.,循环等待中断,start1:cmpcounter,10jbstart1;中断10次退出,例,就在主程序循环当中,.,new08hprocsti;开中断pushax;保护寄存器pushbxpushdsmovax,datamovds,ax;设置数据段DS,例,进入中断服务程序,.,中断处理,inccountermovsi,offsetintmsg;显示信息calldpstri,例,.,显示字符串,dpstriproc;显示字符串子程序pushaxpushbxdps1:lodsb;取一字符cmpal,0;判是否结束标志jzdps2,例,.,显示字符串(续),movbx,0movah,0ehint10hjmpdps1dps2:popbxpopaxretdpstriendp,例,.,退出中断服务程序,moval,20h;送中断结束字out20h,alpopds;恢复寄存器popbxpopaxiret;中断返回new08hendp,例,.,主程序结束,clipopaxout21h,alpopdxpopdsmovax,2508hint21hstimovax,4c00hint21h,例,A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!A8259AInterrupt!,.,驻留中断服务程序,内存驻留TSR(TerminateandStayResident)程序应用程序运行后仍然保存在主存中,可以被其他程序调用利用DOS功能调用31H代替4CH终止程序小型驻留程序常编写成.COM程序,但驻留程序也可编成.EXE程序需要驻留内存的程序段要书写在其他代码的前面,.,例题:报时中断驻留服务程序,在PC机中系统08H号中断服务程序调用INT1CH指令中断每隔55ms调用这个报时中断,中断65543次就是时间过了1小时该例编写驻留内存的INT1CH中断服务程序用于整点报时,程序功能是每过1小时显示1条信息执行此程序后,该报时中断服务程序将驻留内存,注意:因65543=65536+7,假定用2个字来记录中断发生的次数,则每经过1小时有:高字=高字+1低字=低字+7低字能被7整除时表示时间为整点,.,new1chprocsti;开中断pushsi;保护寄存器pushdsmovsi,cs;com程序数据和代码共段movds,si;设置数据段DSaddcountl,1;处理低字adccounth,0;处理高字,例7.3,进入中断服务程序,.,中断处理,cmpcountl,7;低字为7否jnzn1ch1cmpcounth,1;高字为1否jnzn1ch1movcountl,0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 6《让我们的学校更美好》(教学设计)-部编版道德与法治三年级上册
- 触发器教学课件
- Module 3 Unit 2 Reading and vocabulary-教学设计 2023-2024学年外研版八年级英语下册
- 网上证券交易委托协议经典版范本6篇
- 语言动作行为分析课件
- 【合同协议范文】财务人员聘用合同7篇
- 七广东省惠东县惠东中学2018-2019学年七年级生物下册-第5单元 环境中生物的多样性-第12章 空中的生物第三章 空中飞行的动物-鸟类教学设计
- 七年级生物上册 2.1.4《细胞的生活》教学设计2 (新版)新人教版
- 九年级历史下册 第一单元 殖民地人民的反抗与资本主义制度的扩展 第3课 美国内战教学设计 新人教版
- 2024-2025年高中化学 第1章 第1节 课时1 原子核 核素教学设计 鲁科版必修2
- 评估-说专业-市场营销专业
- 火电工程施工组织设计方案
- 日周月安全检查记录表
- 车间温湿度测量记录表
- 教学成果申报
- 空分装置增压机大修方案
- 2021年中国华电集团公司组织架构和部门职能
- 变电所倒闸操作课件
- 六层框架住宅毕业设计计算书2
- 胆汁淤积和自身免疫性肝病诊治专家共识参考教学提纲
- 光缆的敷设方法与要求
评论
0/150
提交评论