微机接口实验-北京科技大学.doc

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机接口实验-北京科技大学

微机原理与接口技术 实验报告 学 院 计算机与通信工程学院 班 级 通信1002 姓 名 马勇 学 号 2012年5月 实验十一 8259中断控制器应用8259的工作原理; 2. 掌握可编程控制器8259的应用编程方法。 二、实验所用设备 1. PC微机一台; 2. TD-PIT+ 实验系统一套。 三、实验内容 1. 利用PC机给实验系统分配的中断线,设计一个单中断应用。使用单次脉冲模拟中断产生。编写中断处理程序,在显示器屏幕上显示一个字符。 2. 利用实验平台上8259控制器对扩展系统总线上的中断线INTR进行扩展。编写程序对8259控制器的IR0和IR1中断请求进行处理。 四、实验原理 1.8259控制器的介绍 中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中,因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。同时,在不需增加其他电路的情况下,通过多片8259A的级连,能构成多达64级的矢量中断系统。它的管理功能包括:1)记录各级中断源请求,2)判别优先级,确定是否响应和响应哪一级中断,3)响应中断时,向CPU传送中断类型号。8259A的内部结构和引脚如图11-1所示。 8259A的命令共有7个,一类是初始化命令字,另一类是操作命令。8259A的编程就是根据应用需要将初始化命令字ICW1-ICW4和操作命令字OCW1- OCW3分别写入初始化命令寄存器组和操作命令寄存器组。ICW1-ICW4各命令字格式如图11-2所示,OCW1-OCW3各命令字格式如图11-3所示,其中OCW1用于设置中断屏蔽操作字,OCW2用于设置优先级循环方式和中断结束方式的操作命令字,OCW3用于设置和撤销特殊屏蔽方式、设置中断查询方式以及设置对8259内部寄存器的读出命令。 图11-1 8259内部结构和引脚图 图11-2(a) ICW1格式 图11-2(b) ICW2格式 图11-2(c) ICW3格式 图11-2 (d)ICW4格式 3.PC微机系统中的8259 在80x86系列PC微机系统中,系统中包含了两片8259A中断控制器,经级连可以管理15级硬件中断,但其中部分中断号已经被系统硬件占用,具体使用情况如表11-2示。两片8259A的端口地址为:主片8259使用020H和021H两个端口;从片使用0A0H和0A1H两个端口。系统初始化两片8259的中断请求信号均采用上升沿触发,采用全嵌套方式,优先级的排列次序为0级最高,依次为1级、8级~15级,然后是3级~7级。 在扩展系统总线上的INTR对应的中断线就是PC机保留中断其中的一个。对INTR中断的初始化PC机已经完成,在使用时主要是将其中断屏蔽打开,修改中断向量。 表11-1 8259寄存器及命令的访问控制 表11-2 PC微机系统中的硬件中断 五、实验说明及步骤 1.单中断应用实验 本实验要求使用总线上INTR中断请求线完成一次单中断应用实验。中断处理程序完成在屏幕上的显示字符“9”。实验前先运行CHECK程序,得到INTR所对应的中断号、相应的初始化命令字寄存器ICW及操作命令字寄存器OCW的地址、开屏蔽的命令字、中断矢量地址和PCI卡中断控制寄存器INTCSR的地址。得到这些信息后就可以开始设计实验了。参考程序流程如图11-4所示。 实验步骤如下: 确认从PC机引出的两根扁平电缆已经连接在实验平台上; 首先运行CHECK程序,查看INTR中断号及相关信息; 参考实验流程图编写程序,然后编译链接; 将单次脉冲单元的KK1+连接到系统总线上的INTR; 运行程序,按动KK1+按键,观察中断是否产生。 (a)主程序 (b)中断处理程序 图-4 8259中断应用实验(1)参考程序流程图 2 利用实验平台上的8259控制器,可以对总线上的INTR进行扩展。将8259的INT连接到INTR,8259的8路中断请求线IR0~IR7就成了单一INTR中断请求线的扩充。这8路中断源共用INTR的中断矢量,共用INTR的中断服务线程。在INTR的中断服务线程中通过对8259 OCW3的查询,以确定是IR0~IR7中哪个产生中断,然后转到相应的服务线程进行处理。将8259的OCW3中P位置1即可执行查询,查询字格式如图11-5所示。

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档