8259A中断控制显示课设

上传人:mg****2 文档编号:123321087 上传时间:2020-03-09 格式:DOC 页数:17 大小:16.40MB
返回 下载 相关 举报
8259A中断控制显示课设_第1页
第1页 / 共17页
8259A中断控制显示课设_第2页
第2页 / 共17页
8259A中断控制显示课设_第3页
第3页 / 共17页
8259A中断控制显示课设_第4页
第4页 / 共17页
8259A中断控制显示课设_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《8259A中断控制显示课设》由会员分享,可在线阅读,更多相关《8259A中断控制显示课设(17页珍藏版)》请在金锄头文库上搜索。

1、.8259中断控制显示1.课程设计的目的微机原理与接口技术课程设计注重提高学生应用能力、创新能力。在掌握了基本的实验方法和实验技能且理论教学完成的基础上,要求学生通过一周的集中工作,初步锻炼综合运用所学知识的能力,通过讨论与合作,完成一项完整的设计工作。更深入的了解微机芯片的用法和程序的完成过程,调试方法及技巧。本课程设计需要综合应用各种微机接口和其他单元电路构成小规模 “ 原理 ” 型的微机应用系统,体现了既强化本学科内容,又扩展知识面的特点。2.设计方案论证2.1 8086和8259A的原理2.1.1 8086微处理器 8086是Intel系列的第三代微处理器。它是功能很强的16位微处理器

2、,它既能处理16位数据,也能处理8位数据。它采用了HMOS高密度工艺,集成度达每片4万多晶体管,单一+5V电源,主频为5MHz/10MHz。它的内部和外部的数据总线宽度都是16位,地址总线宽度20位,可寻址空间达,即1MB。2.1.1.1 8086微处理器的功能结构8086微处理器由两个独立的工作部件:执行部件EU(Execution Unit)和总线接口不见BIU(Bus Interface Unit)构成。EU由算术逻辑单元ALU、通用数据寄指令的执行。它的具体功能有以下3个方面:从BIU的指令队列缓冲器中取出指令,由EU控制器的指令译码器译码产生相应的操作控制信号传给各部件。对操作数进行

3、算术运算和逻辑运算,并将运算结果的状态特征保存到状态寄存器FR中。EU不直接与CPU外部系统相连,当需要与主存储器或I/O设备交换数据时,EU向BIU发出命令,并提供给BIU16位有效地址及所需传送的数据。BIU由4个16位段寄存器、16位指针寄存器、20位物理地址加法器、6字节指令队列及总线控制逻辑组成,负责完成CPU与存储器或I/O设备之间的数据传送。它的具体功能有以下3个方面:BIU从主存取指令送到指令队列缓冲器。CPU执行指令时,总线接口单元要配合EU从指定的主存单元或外设端口中取数据,将数据传送给EU或把EU的操作结果传送到指定的主存单元或外设端口中。计算并形成访问存储器的20位物理

4、地址。8086CPU的内部功能结构框图如图1所示。图1 8086CPU的内部功能结构框图2.1.1.2 8086的引脚功能8086微处理器采用40引脚的DIP封装,如图2所示。图2 8086的引脚(1)INTR(可屏蔽中断请求):输入,高电平有效。当INTR=1,表示外设提出了中断请求。CPU在执行每条指令的最后一个时钟周期采用此信号,若INTR=1且IF=1(中断允许),则响应中断。(2) (中断响应):输出,低电平有效。 有效表示对INTR的外部中断请求响应,进入中断响应周期。 (3) AD AD (地址/数据):在总线周的T1状态输出要访问的存储器或I/O端口的地址,T2,T3状态,对于

5、写操作,是传输数据,对于读操作,则处于浮空状态,等待数据传入。(4)A/S-A/S(引脚35-38):地址/状态复用引脚,输出。在总线周期T1状态输出要访问的存储器的地址。T2-T4状态,用来输出CPU的状态信息。2.1.2可编程中断控制器8259A(8259A是专门为了对8086/8088进行中断控制而设计的芯片,它是可以用程序控制的中断控制器。它具有如下功能:(1)它可以接收多个外部中断源的中断请求,并进行优先级别判断,选中当前优先级别最高的中断请求,再将此请求送到微处理器的中断输入端。(2)具有提供中断向量、屏蔽中断输入等功能。(3)可用于管理8级优先权中断,也可以将多片8259A通过级

6、联方式构成最多可达512级优先权的中断管理系统。2.1.2 .1 8259A芯片内部结构8259A可编程中断控制器有8个功能模块,如图3所示。图3 8259A内部结构(1)中断请求寄存器(IRR)中断请求寄存器(IRR)为8位,接受来自IR0IR7的中断请求信号,当IR0IR7上出现某一中断请求信号时,IRR对应位被置1。(2)中断屏蔽寄存器IMR中断屏蔽寄存器IMR 为8位(8个中断输入),用来存放对各中断请求的屏蔽信息。当该寄存器中某一位置“1”,表示禁止这一级中断请求进入系统,通过IMR寄存器可实现对各级中断的有选择的屏蔽。(3)中断服务寄存器ISR中断服务寄存器ISR是8位寄存器,用来

7、记录正在处理中的中断请求,当任何一级中断响应,CPU正在执行它的中断服务程序时,ISR寄存器中相应位置“1”,一直保持到该级中断处理过程中止。(4)优先权判别器PR若某中断请求正在被处理,8259A外部又有新的中断请求,则由优先权判别器将新进入的中断请求和当前正在处理的中断进行比较,以决定哪一个优先级更高。(5)读/写控制器用来接收来自CPU读/写控制命令和片选控制信息。2.1.2 .2 8259A芯片引脚功能 8259A芯片有28条引脚,双列直插式封装。8259A芯片引脚图如图4所示。图4 8259A芯片引脚(1)INT:8259A向CPU发出的中断请求信号,高电平有效,该引脚接CPU的IN

8、TR引脚。(2)INTA:中断响应信号,输入,接收CPU发来的中断响应脉冲以通知8259A中断请求已被响应,使其将中断类型号送到数据总线上。 (3)CS:片选信号,输入,低电平有效,来自地址译码器的输出。只有该信号有效时,CPU才能对8259A进行读/写操作。(4)IR7IR0:中断请求信号,输入,从I/O接口或其他8259A(从控制器)上接收中断请求信号。2.1.2.3 8259A的编程8259A的初始化命令字共4个(ICW1ICW4)。本次课程设计我选用ICW1边沿触发方式。ICW1:规定8259的连接方式(单片或级联)与中断源请求信号的有效形式(边沿或电平触发)。ICW1控制字如图5所示

9、。(注意:D7、D6、D5、 D2在8086/8088系统中不用,可为1,也可为0。)程序将ICW1设置成00010011B,即ICW1实现需要ICW4的单片使用边沿触发方式。表1 ICW1控制字ADDDDDDDD0AAA1LTIMADISNGLIC4(1) D3(LTIM)用来设定中断请求信号的形式 。如果LTIM=1,则表示中断请求为电平触发方式 。(2) D1(SNGL)用来指出本片8259A是否与其他8259A处于级连状态。 当系统中只有一片8259A时,SNGL为1。(3)D0(IC4)用来指出初始化过程中是否设置ICW4。若D0 为0,表示不用ICW4; 若D0为1,表示用ICW4

10、。表2 ICW4命令字ADDDDDDDD1MMMSFNMBUFM/SAEOIPM PM:当PM=1时,8086/8080恒置1;当PM=0时,8080/8085恒置0。 AEOI:当AEOI=1时,采用中断自动结束方式;当AEOI=0时,采用一般中断结束方式。 M/S、BUF:当BUF、M/S为“ 11”时,采用缓冲方式主片;当BUF、M/S为“ 10”时,采用缓冲方式从片;当BUF、M/S为“ 01”和“00”时,采用非缓冲方式。 SFNM:“1”代表特殊完全嵌套方式,“0”代表一般完全嵌套方式。在8086/8088系统中,ICW4是必须使用的,此时D0必定为1。 8259A操作命令字有3个

11、,OCW1OCW3,可独立使用。(1) OCW1(屏蔽控制字)M7M0代表8个屏蔽位,用来控制IR0-IR7输入的中断请求信号。若Mn=0,则中断被开放。主程序将OCW1设置为11111011B,即允许中断从IR2端进入。表3 OCW1控制字ADDDDDDDD1MMMMMMMM(2)OCW2(控制中断结束和优先权循环的操作命令字)R,SL,EOI三位编码可定义多种不同的中断结束方式或发出置位优先权命令。L0L2指定的R编码级别上执行;SL=0时,L0L2无效。本次课设采用R=0固定优先权和非自动EOI(不指定)结束方式。端口地址为偶地址(A0=0),D3D4=00是OCW2的标志位。表4 OC

12、W2控制字ADDDDDDDD0RSLEOI00LLL2.1.2.4 8259A初始化流程图。开始ICW1(A0=0,D4=1)ICW2(A0=0)SNGL=0?ICW3(A0=1)IC4=1?ICW4(A0=1)准备接受中断NYYN 图5 8259A初始化流程图2.2锁存器CS_273 锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。利用此锁存器与单次脉冲信号实现八个单色LED灯交替亮。 2.3总体设计2.3.1 8259A中断控制显示的主要功能 本课程设计用8086、8259A、单次脉冲模块、扩展输出模块及八位逻辑电平显示模块实现每按一次单次

13、脉冲键,就产生一次中断,中断服务程序使输出状态反转一次。相对应八位逻辑电平的LED灯交替亮。2.3.2 程序编写流程图开始初始化8259CS_273输出灯初始状态按单次脉冲键?LED灯状态反转NY初始化中断向量表开中断延时结束关中断、中断结束命令OCW2图6 8259A中断控制程序流程2.3.3 8259A电路原路图图7 8259A电路原理图实际8259A模块与8086模块、单次脉冲模块的电路连接只用到端口INT、INTA、CS_8259、INT2。(分别为17、26、1、20引脚) 各模块之间的电路连接:用导线连接单次脉冲低信号到8259模块的INT_2; 用导线连接8259模块的CS_82

14、59到CPU模块的200H; 用导线对应连接8259模块的INT、INTA到CPU模块的88INTR、88/INTA; 扩展输出模块的JD1C接8位LED显示的JD4B; 用导线连接扩展输出模块的CS_273到CPU模块的208H3设计过程与结果分析3.1简单的实验步骤(1)按照实验电路原理图连接电路。(2)将启动PC机,打开THGMW-88软件,输入源程序,并编译源程序,程序无错误之后,编译连接实验箱,连接成功后,再执行程序。(3)手动按单次脉冲,按一次产生一次中断,LED显示状态反转一次。3.2实验结果程序执行成功之后,手动按单次脉冲一次的结果图:图8 按一次单次脉冲结果图程序执行成功之后,手动按单次脉冲一次之后,再按一次的结果图:图9 按两次单次脉冲结果图3.3实验结果分析 本次实验主要采用8259A中断控制器和8086微处理器硬件,用8086的中断控制引脚INTR、INTA和中断控制标志字IF与可编程中断控制器8259A边沿触发方式中断请求相结合,实现八位逻辑电平的反转。我用到扩展输出模块的CS_273,利用锁存器,在时钟上升沿或者下降沿来的时候锁存输入,然后产生输

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 设计及方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号