目录

  • 一、实验目的
  • 二、实验内容
  • 三、实验要求
  • 四、编程提示
  • 五、实验报告

一、实验目的

      练习8259中断控制器的使用
      掌握PC机中断处理系统的基本原理
      学会编写中断服务程序
      继续练习DOS系统功能调用

二、实验内容

PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。中断控制器用于接收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源,下表中IRQ0-IRQ7。8个中断源的中断请求信号线IRQ0-IRQ7在主机的62线ISA总线插座中可以引出,系统已设定中断请求信号为“边沿触发”,普通结束方式。初始化程序已经固化。
对于PC/AT及286以上微机内又扩展了一片8259中断控制,IRQ2用于两片8259之间级连对外可以提供16个中断源,如下表所示:


本系统中的设置方法同PC机。
386EX核心板提供了两个硬件中断请求信号供用户使用,分别为试验台上的IRQ(核心板上8259的IRQ0)和386EX核心板INT1(核心板上8259的IRQ5)。中断初始化、中断向量、中断服务程序都可以写入。

本实验中,主从中断控制器的中断类型号初始值分别设置为10H、30H,因此得到用户可用的中断类型号是15H、30H.。如下表所示。


关于DOS和BIOS软中断调用:

实验仪固定了PC机常用的BIOS和DOS软中断功能调用;主要包括PC键盘输入LCD显示功能。

INT 16H的00H功能:从PC键盘输入一个字符,返回字符在AL中。

INT 16H的01H功能:检查键盘缓冲区,Z=1为空,否则不空

INT 21H的01H功能:从键盘输入一个字符并回显,返回值在AL。

INT 21H的02H功能:显示一个字符

INT 21H的07H功能:从PC键盘输入一个字符,但不回显。

INT 21H的09H功能:在LCD显示一个以$结尾的字符串,字符串在数据段定义

INT 1CH功能:外扩定时中断程序,定时周期55ms

INT 21H的4CH功能:结束用户程序,复位硬件系统

如需使用键盘输入功能:请将PC键盘和实验仪的PS2接口连接。

使用LCD显示功能:需要如下连接:
                                 LCD的D0-D7和核心板的LCD的D0-D7
                                 LCD的DI、RW、E和核心板的DI、RW、E相连


三、实验要求

单脉冲作为中断源,连接到IRQ引脚(从8259的IRQ0),每中断一次,产生中断,LCD显示“interrupt S0

单脉冲作为中断源,连接到INT1引脚(主8259的IRQ5),每中断一次,产生中断,LCD显示“interrupt M5


四、编程提示

需要完成三部分程序:
1、8259的初始化程序:包括主片和从片的ICW1、ICW2、ICW3、ICW4的设置。
    注意设置为①需要写ICW3。

        ①主片的ICW2=10H,从片的ICW2=30H

        ②那么主片的IRQ5引脚的中断类型号为15H,从片的IRQ0引脚的类型号为30H。

        ③因为主从之间通过IRQ2相连,所以主片的ICW3=04H,从片的ICW3=02H。

        ④ICW4设置正常EOI。

2、中断向量表初始化:设中断服务程序名分别为MIR5SIR0

3、中断服务程序:
                 MIR5:使用9号功能调用,显示字符串interrupt M5
                 SIR0:使用9号功能调用,显示字符串interrupt S0

五、实验报告

1、请写出程序代码,并适当添加注释。

DATA SEGMENT
INT1 DB 'INTERRUPT M5',0DH,0AH,'$'
IRQ DB 'INTERRUPT S0',0DH,0AH,'$'
DATA ENDSSSTACK SEGMENT STACKDW 32 DUP(?)
SSTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA
START:PUSH DSCLI        ;将处理器标志寄存器的中断标志位清0,不允许中断MOV AX,0000H    ;设置中断向量表开始的地方MOV DS,AXMOV AX,OFFSET MIR5;取中断入口地址,INT1接主片8259的IR5MOV SI,(10H+5)*4    ;中断矢量地址MOV [SI],AX  ;填主8259的IR5的偏移矢量MOV AX,CS;段地址,因为MIR5还在代码段所以段基地址还是在CS中,把段寄存器的内容放入ax里面MOV SI,(10H+5)*4+2MOV [SI],AX;填主8259的IR5的段地址MOV AX,OFFSET SIR0  ;取中断入口地址(总线区的IRQ接从8259的IR0)MOV    SI,(30H+0)*4;  中断适量地址MOV [SI],AX   ;填从片8259的IR0的偏移地址MOV AX,CS;段地址MOV SI,(30H+0)*4+2MOV [SI],AX;填从片片8259的IR0的段地址矢量POP DS
;初始化主片8259MOV AL,11HOUT 20H,AL  ;ICW1写进偶地址端口MOV AL,10HOUT 21H,AL    ;ICW2写入奇地址MOV AL,04H    ;ICW3写入奇地址OUT 21H,AL    MOV AL,01H  ;ICW4写入奇地址OUT 21H,AL;8259的中断还要给它使能,使能哪个引脚的中断。;OCW1的IRQ2和IRQ5它所对应的标志位应该是0,其他的标志位应该是1;所以OCW2的值:1101 1011;OCW2写入奇地址端口;OCW1 1101 1011MOV AL,0DBHOUT 21H,AL
;初始化从片8259MOV AL,11H        ;ICW1OUT 0A0H,ALMOV AL,30H      ;ICW2OUT 0A1H,ALMOV AL,02H      ;ICW3OUT 0A1H,ALMOV AL,01H      ;ICW4OUT 0A1H,AL;OCW1 1111 1110MOV AL,0FEHOUT 0A1H,ALSTI    ;开中断状态。执行指令"STI",使得IF=1ZMJ:NOP ;NOP是空指令,计算机不做任何操作,只是做短暂的延时调整JMP ZMJ
MIR5:STIPUSH AX ;保护现场PUSH DXMOV AX,DATAMOV DS,AXMOV DX,OFFSET INT1MOV AH,9INT 21HMOV AL,20HOUT 20H,ALPOP DX ;先押进去的是后出来的POP AXIRET   ;中断服务程序的返回
SIR0:PUSH AXPUSH DXMOV AX,DATAMOV DS,AXMOV DX,OFFSET IRQMOV AH,9INT 21HMOV AL,20HOUT 0A0H,ALPOP DXPOP AXIRET
CODE ENDS
END START

2、写出8259初始化命令字和操作命令字中每一位的含义。

实验八 :8259中断控制器实验(综合)相关推荐

  1. 8259 中断控制实验

    一.实验目的: 1.掌握8259中断控制器的工作原理. 2.学习8259的应用编程方法. 3.掌握8259级联方式的使用方法. 二.实验内容与要求: 1.利用系统总线上中断请求信号MIR7,设计一个单 ...

  2. 微型计算机原理实验报告系统认识,微机原理 实验报告——显示程序实验与8259应用编程实验...

    微机原理 实验报告--显示程序实验与8259应用编程实验 (9页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 11.9 积分 北京信息科技大学自动化学院实 ...

  3. 计算机控制实验总结电机调速,实验八-电机调速实验.docx

    实验八-电机调速实验.docx (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 实验八 电机调速实验一.实验目的1. 了解直流电机 ...

  4. 单片机实验八 RS232串口通信实验(接收与发送)

    实验八 RS232串口通信实验(接收与发送) 一.实验目的 1.熟悉实验软件和硬件,进行正确的接线: 2.通过实验了解串口的基本原理及使用,理解并掌握对串口进行初始化: 3.使用串口调试助手做为上位机 ...

  5. 简易模型计算机性能分析报告,计算机组成原理 实验八 简单模型计算机实验解析.doc...

    实验八 简单模型计算机实验 实验目的 通过实验分析简单模型机结构,了解计算机的工作原理. 掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程 实验原理 基本整机模型数据框图如图所示,计算机数据通 ...

  6. 计算机组成实验八,计算机组成原理 实验八 简单模型计算机实验.doc

    文档介绍: 实验八简单模型计算机实验实验目的通过实验分析简单模型机结构,了解计算机的工作原理.掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程实验原理基本整机模型数据框图如图所示,计算机数据通 ...

  7. 计算机组成实验微程序控制器实验,计算机组成原理实验报告3++微程序控制器实验.doc...

    文档介绍: 计算机组成原理实验报告3微程序控制器实验计算机组成原理实验报告实验三微程序控制器实验一.实验目的与要求:实验目的:1.理解时序产生器的原理,了解时钟和时序信号的波形;2.掌握微程序控制器的 ...

  8. <微机原理>[汇编语言]-[实验八]矩阵键盘应用实验

    实验八 矩阵键盘应用实验 实验八 矩阵键盘应用实验.doc 一.实验目的 掌握矩阵式键盘识别技术 进一步掌握数码管显示原理 二.实验主要仪器和环境 Keil5 普中A2开发板 stc-isp 三.实验 ...

  9. 实验计算机控制器的实验结论,计算机毕业论文控制器实验报告.doc

    计算机学科实验基地 实验报告 实验类型:必修 √ 选修 实验日期:06 年 06 月 28日 实验名称:组合逻辑控制器逻辑设计 实验地点:实验基地 学生姓名: 指导教师: 班 级: 评阅教师: 同组学 ...

最新文章

  1. CSS完美兼容IE6/IE7/IE8/IE9/IE10的通用方法
  2. 关于delphi 窑洞的关闭
  3. 如果说一个地图是1000*1000那么需要多少内存呢?
  4. 广告小程序后端开发(4.导入地区数据,修改adminx,修改models,手动添加模拟数据)...
  5. 我们的2009 梦想照进了现实
  6. Boost库实现线程池学习及线程实现的异步调用
  7. 接口自动化-发送get请求-1
  8. 海外弱网下的在线视频平台优化实践​
  9. 使用Java迭代器修改数据时要小心
  10. 6.824 MapReduce lab1 2020(一)
  11. python---str和repr
  12. ISA 2006利用Bandwidth Splitter定制带宽和限制流量
  13. Wireshark文档阅读笔记-TCP 3 way handshaking解析与实例
  14. ApplicationId 与 PackageName
  15. mysql视图可以完成的操作_MySQL视图操作
  16. OpenCV阈值分割
  17. 硬盘保修期网上轻松查询
  18. 废旧光盘手工小制作_废旧物手工制作:光盘小制作
  19. 在网上买衣服如何测量自己衣服尺码?
  20. c#录音和放音,超简单!不用DirectX

热门文章

  1. Java程序员如何撰写简历?
  2. 自适应滤波器做啸叫检测
  3. div+CSS浏览器兼容问题整理(IE6.0、IE7.0 ,ie8 , FireFox)
  4. 深度学习系列之Gaussian_YOLOv3 个人总结
  5. Earlystopping(早停法)
  6. 小学计算机绘图课教案,小学生电脑绘画教案.doc
  7. P5.js:改进创意动态绘板
  8. 辽宁最新八大员安全员考试题库及答案
  9. 劲舞团房间名字超长打法..!
  10. 短视频有哪些推广引流方法 ?如何快速布局短视频推广?