收藏 分享(赏)

8259A中断控制课设.doc

上传人:精品资料 文档编号:8303245 上传时间:2019-06-19 格式:DOC 页数:16 大小:16.41MB
下载 相关 举报
8259A中断控制课设.doc_第1页
第1页 / 共16页
8259A中断控制课设.doc_第2页
第2页 / 共16页
8259A中断控制课设.doc_第3页
第3页 / 共16页
8259A中断控制课设.doc_第4页
第4页 / 共16页
8259A中断控制课设.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

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

2、 系列的第三代微处理器。它是功能很强的 16 位微处理器,它既能处理 16 位数据,也能处理 8 位数据。它采用了 HMOS 高密度工艺,集成度达每片 4 万多晶体管,单一+5V 电源,主频为 5MHz/10MHz。它的内部和外部的数据总线宽度都是 16位,地址总线宽度 20 位,可寻址空间达 ,即 1MB。202.1.1.1 8086 微处理器的功能结构8086 微处理器由两个独立的工作部件:执行部件 EU(Execution Unit)和总线接口不见 BIU(Bus Interface Unit)构成。EU 由算术逻辑单元 ALU、通用数据寄指令的执行。它的具体功能有以下 3 个方面:从

3、BIU 的指令队列缓冲器中取出指令,由 EU 控制器的指令译码器译码产生相应的操作控制信号传给各部件。对操作数进行算术运算和逻辑运算,并将运算结果的状态特征保存到状态寄存器 FR 中。EU 不直接与 CPU 外部系统相连,当需要与主存储器或 I/O 设备交换数据时,EU课程设计说明书 NO.2沈 阳 大 学向 BIU 发出命令,并提供给 BIU16 位有效地址及所需传送的数据。BIU 由 4 个 16 位段寄存器、16 位指针寄存器、20 位物理地址加法器、6 字节指令队列及总线控制逻辑组成,负责完成 CPU 与存储器或 I/O 设备之间的数据传送。它的具体功能有以下 3 个方面:BIU 从主

4、存取指令送到指令队列缓冲器。CPU 执行指令时,总线接口单元要配合 EU 从指定的主存单元或外设端口中取数据,将数据传送给 EU 或把 EU 的操作结果传送到指定的主存单元或外设端口中。计算并形成访问存储器的 20 位物理地址。8086CPU 的内部功能结构框图如图 1 所示。图 1 8086CPU 的内部功能结构框图2.1.1.2 8086 的引脚功能8086 微处理器采用 40 引脚的 DIP 封装,如图 2 所示。课程设计说明书 NO.3沈 阳 大 学图 2 8086 的引脚(1)INTR(可屏蔽中断请求):输入,高电平有效。当 INTR=1,表示外设提出了中断请求。CPU 在执行每条指

5、令的最后一个时钟周期采用此信号,若 INTR=1 且 IF=1(中断允许) ,则响应中断。(2) (中断响应):输出,低电平有效。有效表示对 INTR 的外部中断请求响应,进入中断响应周期。 (3) AD AD (地址/数据):在总线周的 T1 状态输出要访问的存储器或 I/O 端150口的地址,T2,T3 状态,对于写操作,是传输数据,对于读操作,则处于浮空状态,等待数据传入。(4)A /S -A /S (引脚 35-38):地址/状态复用引脚,输出。19613在总线周期 T1 状态输出要访问的存储器的地址。 T2-T4 状态,用来输出 CPU 的状态信息。2.1.2 可编程中断控制器 82

6、59A课程设计说明书 NO.4沈 阳 大 学(8259A 是专门为了对 8086/8088 进行中断控制而设计的芯片,它是可以用程序控制的中断控制器。它具有如下功能:(1)它可以接收多个外部中断源的中断请求,并进行优先级别判断,选中当前优先级别最高的中断请求,再将此请求送到微处理器的中断输入端。(2)具有提供中断向量、屏蔽中断输入等功能。(3)可用于管理 8 级优先权中断,也可以将多片 8259A 通过级联方式构成最多可达 512 级优先权的中断管理系统。2.1.2 .1 8259A 芯片内部结构8259A 可编程中断控制器有 8 个功能模块,如图 3 所示。图 3 8259A 内部结构(1)

7、中断请求寄存器(IRR)中断请求寄存器(IRR)为 8 位,接受来自 IR0IR7 的中断请求信号,当IR0IR7 上出现某一中断请求信号时,IRR 对应位被置 1。(2)中断屏蔽寄存器 IMR中断屏蔽寄存器 IMR 为 8 位(8 个中断输入) ,用来存放对各中断请求的屏蔽信息。课程设计说明书 NO.5沈 阳 大 学当该寄存器中某一位置“1” ,表示禁止这一级中断请求进入系统,通过 IMR 寄存器可实现对各级中断的有选择的屏蔽。(3)中断服务寄存器 ISR中断服务寄存器 ISR 是 8 位寄存器,用来记录正在处理中的中断请求,当任何一级中断响应,CPU 正在执行它的中断服务程序时,ISR 寄

8、存器中相应位置“1” ,一直保持到该级中断处理过程中止。(4)优先权判别器 PR若某中断请求正在被处理,8259A 外部又有新的中断请求,则由优先权判别器将新进入的中断请求和当前正在处理的中断进行比较,以决定哪一个优先级更高。(5)读/写控制器用来接收来自 CPU 读/写控制命令和片选控制信息。2.1.2 .2 8259A 芯片引脚功能8259A 芯片有 28 条引脚,双列直插式封装。8259A 芯片引脚图如图 4 所示。图 4 8259A 芯片引脚课程设计说明书 NO.6沈 阳 大 学(1)INT:8259A 向 CPU 发出的中断请求信号,高电平有效,该引脚接 CPU 的INTR 引脚。(

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

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

11、3)D0(IC4)用来指出初始化过程中是否设置 ICW4。若 D0 为 0,表示不用ICW4; 若 D0 为 1,表示用 ICW4。课程设计说明书 NO.7沈 阳 大 学表 2 ICW4 命令字A0D7D6D5D4D3D2D1D01 M M M SFNM BUF M/S AEOI PM 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”时,采

12、用缓冲方式从片;当 BUF、M/S 为“ 01”和“00”时,采用非缓冲方式。 SFNM:“1”代表特殊完全嵌套方式, “0”代表一般完全嵌套方式。在 8086/8088 系统中,ICW4 是必须使用的,此时 D0 必定为 1。 8259A 操作命令字有 3 个,OCW1OCW3,可独立使用。(1) OCW1(屏蔽控制字)M7M0 代表 8 个屏蔽位,用来控制 IR0-IR7 输入的中断请求信号。若 Mn=0,则中断被开放。主程序将 OCW1 设置为 11111011B,即允许中断从 IR2 端进入。表 3 OCW1 控制字A0D7D6D5D4D3D2D1D01 M M M M M M M M

13、(2)OCW2(控制中断结束和优先权循环的操作命令字)R,SL,EOI 三位编码可定义多种不同的中断结束方式或发出置位优先权命令。L0L2 指定的 R 编码级别上执行;SL=0 时,L0L2 无效。本次课设采用 R=0 固定优先权和非自动 EOI(不指定)结束方式。端口地址为偶地址(A0=0),D3D4=00 是 OCW2 的标志位。课程设计说明书 NO.8沈 阳 大 学表 4 OCW2 控制字A0D7D6D5D D3D2D1D00 R SL EOI 0 0 L L L2.1.2.4 8259A 初始化流程图。开始ICW1(A0=0,D4=1)ICW2(A0=0)SNGL=0?ICW3(A0=

14、1)IC4=1?ICW4(A0=1)准备接受中断NYYN图 5 8259A 初始化流程图2.2 锁存器 CS_273 课程设计说明书 NO.9沈 阳 大 学锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。利用此锁存器与单次脉冲信号实现八个单色 LED 灯交替亮。 2.3 总体设计2.3.1 8259A 中断控制显示的主要功能本课程设计用 8086、8259A、单次脉冲模块、扩展输出模块及八位逻辑电平显示模块实现每按一次单次脉冲键,就产生一次中断,中断服务程序使输出状态反转一次。相对应八位逻辑电平的 LED 灯交替亮。2.3.2 程序编写流程图课

15、程设计说明书 NO.10沈 阳 大 学开始初始化 8259CS_273 输出灯初始状态按单次脉冲键?LED 灯状态反转NY初始化中断向量表开中断延时结束关中断、中断结束命令OCW2图 6 8259A 中断控制程序流程2.3.3 8259A 电路原路图课程设计说明书 NO.11沈 阳 大 学图 7 8259A 电路原理图实际 8259A 模块与 8086 模块、单次脉冲模块的电路连接只用到端口INT、INTA、CS_8259、INT2。 (分别为 17、26、1、20 引脚)各模块之间的电路连接:用导线连接单次脉冲低信号到8259模块的INT_2; 用导线连接8259模块的CS_8259到CPU

16、模块的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 实验结果课程设计说明书 NO.12沈 阳 大 学程序执行成功之后,手动按单次脉冲一次

17、的结果图:图 8 按一次单次脉冲结果图程序执行成功之后,手动按单次脉冲一次之后,再按一次的结果图:图 9 按两次单次脉冲结果图3.3 实验结果分析本次实验主要采用 8259A 中断控制器和 8086 微处理器硬件,用 8086 的中断控制引课程设计说明书 NO.13沈 阳 大 学脚 INTR、INTA 和中断控制标志字 IF 与可编程中断控制器 8259A 边沿触发方式中断请求相结合,实现八位逻辑电平的反转。我用到扩展输出模块的 CS_273,利用锁存器,在时钟上升沿或者下降沿来的时候锁存输入,然后产生输出,使八个单色二极管实现灯亮的反转。4.心得体会回顾起此次的课程设计,我感慨颇多,的确,从

18、理论到实践,在整整一星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说命令符使用、编译过程。使用 8259A 中断控制器实

19、现了单色 LED 灯状态反转也不够透彻,通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的辛勤指导下,终于游逆而解。同时,在老师的身上我学得到很多实用的知识,在此表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。因此在大学开设课程设计是十分必要的5.参考文献课程设计说明书 NO.14沈 阳 大 学1 高立丽, 侯伟. 微机原理与接口技术M. 清华大学出版社, 2016.2

20、顾洁, 刘芯言, 朱东敏. “微机原理与接口技术“开放性实验建设8259A 硬件中断实验J. 科技促进发展, 2011(S1):326-326.3 罗兵, 邹逢兴. 80X86 系列微机中断机制的计算思维教学J. 计算机教育, 2014(5).4 司海峰, 刘翠焕, 杨志云. 中断控制器 8259A 操作命令字 OCW2 高三位组合细探J.科技创新导报, 2008(2):17-18.5 刘正红. 可编程中断控制器 8259A 的开放式实验构建J. 电子世界, 2012(18):90-90.6 徐洁. Intel 8259A 扩展 8051 单片机中断接口技术J. 科技信息, 2009(10):

21、185-185.7 徐洁. Intel 8259A 扩展 8051 单片机中断接口技术J. 科技信息, 2009(10):185-185.8 李相俭, 李聪, 崔晟圆,等. 浅谈可编程中断控制器J. 科技信息, 2010(10):218-218.6.附录;功能: 8259 中断控制实验课程设计说明书 NO.15沈 阳 大 学;接线: 用导线连接单脉冲低信号到 8259 模块的 INT_2;; 用导线连接 8259 模块的 CS_8259 到 CPU 模块的 200H;; 对应连接 8259 模块的 INT、INTA 到 CPU 模块的 88INTR、88/INTA;; 扩展输出模块的 JD1C

22、 接 8 位 LED 显示的 JD4B;; 用导线连接扩展输出模块的 CS_273 到 CPU 模块的 208H。CS8259 EQU 200HCS273 EQU 208HCODE SEGMENTASSUME CS:CODE,DS:CODESTART: XOR AX,AXMOV DS,AXLEA AX,IRQ2MOV DS:28H,AXMOV AX,CSMOV DS:2AH,AXMOV DX,CS8259MOV AL,00010011B ; ICW1OUT DX,ALINC DXMOV AL,00001000B ; ICW2:中断号从 8 开始OUT DX,ALMOV AL,00001111B

23、 ; ICW4:全嵌套方式,86/88 系统,自动结束中断OUT DX,ALMOV AL,11111011B ; OCW1:开放 Int-2OUT DX,ALMOV DX,CS8259 MOV AL,20H ; OCW2:非特殊 EOI 结束中断OUT DX,ALSTI ; 开中断MOV BL,055H HERE:MOV DX,CS273MOV AL,BLOUT DX,AL CALL DELAY 课程设计说明书 NO.16沈 阳 大 学JMP HEREIRQ2: CLIMOV AL,BLNOT ALMOV BL,ALSTIIRETDelay proc nearpush cxmov cx,01FFFhloop $pop cxretDelay endpCODE ENDSEND START

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报