微机中断实验

合集下载

微机原理8259A实验报告

微机原理8259A实验报告

实验二8259A中断控制器应用实验分析报告一、填写补充实验1-2中以下两段代码,并简述其意义:第1段:IN AL,21H_ AND AL, 0F7H _____________OUT 21H,ALIN AL,0A1H__AND AL, 0FBH______________OUT 0A1H,AL第2段:MOV AL,20HOUT 0A0H,ALOUT 20H,AL二、简述实验1-2的实验现象,分析解释其原因;结合本实验,简述中断嵌套和中断优先级的意义以及正确形成中断嵌套的基本要求。

答:实验1现象:按下一次单脉冲,显示一次字符,十次中断后停机,不再显示字符串实验2现象:分别按下两个单脉冲显示一串3和一串10,在3未显示完全时按下显示10的脉冲键,可发生中断,相反则不能发生中断,需等待一串10显示完后再显示一行3。

原因:IRQ10的中断级别高于IRQ3,所以可以在3还没有执行完时中断IRQ3,中断原程序执行IRQ10 。

中断嵌套的意义:为了让CPU及时响应更高级别的中断请求。

中断优先级的意义: CPU只能响应一个中断请求,在中断源较多的情况下,当有多个中断源同时发起中断请求时,CPU需要对多个中断源的优先级进行判断,判断出优先级最高的中断请求进行响应。

中断嵌套要求是:被中断程序的优先级低于请求程序中断的优先级。

三、抄写实验1-2中要求填写的“显示‘10’和‘空格’”的代码段NEXT10_1:MOV AX,SEG MESS10MOV DS,AXMOV DX,OFFSET MESS10MOV AH,09INT 21H ;使用INT21 – 09H实现字符串的输出‘10’CALL DELAY1 ;调用延时子程序LOOP NEXT10_1MOV DX,0DH ;调用DOS的中断功能,回车MOV AH,02HINT 21HMOV DX,0AH ;调用DOS的中断功能,换行MOV AH,02HINT 21H四、用文字简述或流程图方式,说明实验1-3中“以查询方式检测处理多中断请求”的过程。

微型计算机接口技术试验报告8255方式1(中断)

微型计算机接口技术试验报告8255方式1(中断)

广东外语外贸大学信息科学技术学院《微型计算机接口技术》试验报告试验名称可编程并行接口8255方式1(中断)应用姓名:杜圆王垒学号:20081000182 20081000049班级:08计算机4班日期:2010.11.2一、实验目的1、掌握8255工作方式1时的使用及编程。

2、进一步掌握中断处理程序的编写。

二、实验内容1、按图10-1,8255方式1的输出电路连好线路。

2、编程:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:依次输出01H、02H,04H,08H,10H,20H,40H,80H使L0~L7依次发光,中断8次结束。

三、实验原理及硬件说明1.8255方式1输出原理PA0到PA7口接发光二极管,PC6口接外部脉冲,PC3口接IR3,(即实验箱的IRQ),当PC6口接到外部脉冲时则进入中断程序。

2.8259中断控制器功能说明进入8259中断处理器后,进行初始化,然后IRR接收中断请求,IMR不屏蔽,8259将请求送往CPU,CPU收到后往8259送一个应答信号,同时清除IRR并将ISR相应位置置1,并请求8259送中断类型号。

3.实验硬件连接及说明(完整图)四、程序设计思想、流程图、源程序及注释8255方式一输出code segmentassume cs:codestart: mov ax,csmov ds,ax 取段地址送到DSmov dx,offset int_proc 取偏移地址送到DXmov ax,250bh ;设外部中断int_proc类型号为0BHint 21hmov dx,21hin al,dxand al,0f7h ;开放IRQ3中断out dx,almov dx,28bh ;置8255为A口方式1输出mov al,0a0hout dx,almov al,0dh ;将PC6置位out dx,almov bl,1ll:jmp ll ;循环等待int_proc:mov al,blmov dx,288h ;将AL从8255的A口输出out dx,almov al,20hout 20h,alshl bl,1jnc next ;中断次数小于8,返回主程序in al,21hor al,08h ;关闭IRQ7中断out 21h,alsti ;开中断mov ah,4ch ;返回DOSint 21hnext: iretcode endsend start五、结果分析及实验体会进入中断前,将中断程序的段地址给DS,然后将其偏移地址给DX,从2C开始的内容变为20 00 E6 0F初始化设置完毕后,等待脉冲,进入中断程序脉冲来了后,进入中断程序第一个脉冲来了,由于bl是1,所以一个最右边的灯亮之后没得到一个脉冲,灯就往左移一位。

键盘中断微机实验报告

键盘中断微机实验报告

键盘中断微机实验报告1. 引言键盘中断是计算机硬件系统中常见的一种输入设备中断方式,其功能是在用户通过键盘输入时,中断处理器正常运行的流程,将键盘输入的数据传递给操作系统供其处理。

本次实验旨在通过搭建一个简单的键盘中断实验系统,加深对键盘中断原理及操作的理解。

2. 实验原理2.1 键盘中断键盘中断是一种异步的硬件中断方式,即键盘通过给中断控制设备发送中断请求信号,从而将中断信息传递给CPU。

一旦发生键盘中断,CPU将停止当前执行的任务,跳转到事先设置好的中断处理程序,处理键盘中断事件。

2.2 实验系统本次实验使用Intel 8086微处理器、键盘控制器8042和键盘作为实验系统的主要硬件设备。

系统的基本结构如下图所示:![实验系统结构图](- 键盘:作为输入设备,接收用户的键盘输入。

- 键盘控制器8042:负责控制键盘与计算机之间的数据传输。

- CPU:处理器负责执行键盘中断的相关指令。

3. 实验步骤3.1 搭建实验系统首先,需要将键盘控制器8042插入到计算机的适当位置,并将键盘连接到控制器上。

确保硬件的连接正确无误。

3.2 编写中断处理程序在编程方面,我们使用汇编语言编写键盘中断的处理程序。

具体而言,我们需要完成以下任务:- 将中断向量表中对应键盘中断的入口地址设置为我们编写的处理程序的入口地址。

- 编写处理键盘中断的程序代码,实现对键盘输入数据的接收和处理。

3.3 设置中断控制器在实验中,要进行正确的中断处理,还需要设置中断控制器8042。

具体而言,我们需要完成以下任务:- 将中断请求线IRQ1(对应键盘中断)与中断控制器连接。

- 打开中断屏蔽位,以允许中断请求通过。

3.4 运行实验程序完成前述步骤后,我们可以运行实验程序,测试键盘中断的正常工作。

当用户按下键盘时,键盘中断会触发,并将键盘输入的数据传递给中断处理程序进行处理。

4. 实验结果与分析经过测试,我们发现实验系统能够正确地接收和处理键盘输入的数据。

微机实验三8259中断控制实验

微机实验三8259中断控制实验

姓名:学号:2.3 8259中断控制实验2.3.1 实验目的1. 掌握8259中断控制器的工作原理;2. 学习8259的应用编程方法;3. 掌握8259级联方式的使用方法。

2.3.2 实验设备PC机一台,TD-PITE实验装置一套。

2.3.3 实验内容及步骤1、8259单中断实验8259的IR7相连,每按动一次单次脉冲,产生一次外部中断,在显示屏上输出一个字符“7”。

图2-3-11 8259单中断实验接线图实验步骤(1)按图2-3-11连接实验线路;(2)编写实验程序,经编译、链接无误后装入系统;(3)运行程序,重复按单次脉冲开关KK1+,显示屏会显示字符“7”以说明响应了中断。

实验结果分析主程序运行过程中遇到中断请求,进而响应中断请求,即在屏幕上输出字符“7”。

实验流程图2、主8259 多中断实验实验步骤:(1)按上图所示完成实验电路连线。

KK1+连接到主片8259的IR7上,KK2+连接到从片8259的IR6上。

(2)打开PC机,运行Wmd86软件,进入Wmd86集成开发环境。

(3)对程序进行编译、连接、加载和运行,并验证实验程序的正确性。

(4)分别按动单次脉冲开关KK1+或KK2+时,显示屏上会显示什么信息,将屏幕截图填在实验报告数据处理分析部分的表2中。

(5)如果同时按KK1+和KK2+时,显示屏上会显示什么信息,并在实验结论对实验结果进行解释。

流程图中断请求分析与实验一相比,中断向量表多存储了M6。

主程序在运行过程中接到中断请求,于是响应中断,在处理中断程序的过程中再次接到中断请求,于是再次响应中断,处理中断程序。

处理完后逐层返回。

3. 8259级联实验实验接线图如图2-3-12所示,KK1+连接到主片8259的IR7上,KK2+连接到从片8259的IR1上,当按一次KK1+时,显示屏上显示字符“M7”,按一次KK2+时,显示字符“S1”。

编写程序。

实验步骤(1)按图2-3-12连接实验线路;(2)输入程序,编译、链接无误后装入系统;(3)运行程序,按动KK1+或KK2+,观察实验结果,验证实验程序的正确性; (4)若同时按下KK1+和KK2+,观察实验结果,解释实验现象。

外部中断的实验报告

外部中断的实验报告

一、实验目的1. 理解外部中断的概念和作用。

2. 掌握外部中断的编程方法。

3. 熟悉中断处理程序的设计和调试。

二、实验原理外部中断是指由外部设备或信号产生的中断,用于处理与CPU无关的事件。

在微机系统中,外部中断通常用于处理输入/输出设备的中断请求。

外部中断分为可屏蔽中断和不可屏蔽中断两种类型。

三、实验环境1. 开发平台:Keil uVision 52. 微控制器:STM32F103C8T63. 外部设备:按钮、LED灯4. 连接方式:通过GPIO引脚连接四、实验步骤1. 设计外部中断电路(1)将按钮连接到STM32F103C8T6的GPIO引脚,例如PA0引脚。

(2)将LED灯连接到STM32F103C8T6的另一个GPIO引脚,例如PB0引脚。

2. 编写外部中断初始化程序(1)在Keil uVision 5中创建一个新项目,并添加STM32F103C8T6的起始代码。

(2)在主函数中编写初始化程序,包括以下步骤:a. 配置PA0引脚为输入模式,设置为浮空输入。

b. 配置PB0引脚为输出模式,用于控制LED灯。

c. 使能中断,设置中断优先级。

d. 配置NVIC(嵌套向量中断控制器)以允许外部中断。

3. 编写外部中断处理程序(1)在项目中添加一个新的C文件,用于编写外部中断处理程序。

(2)编写外部中断处理函数,当按钮按下时,触发中断,控制LED灯闪烁。

a. 初始化外部中断处理函数,设置中断优先级和中断触发方式。

b. 在外部中断处理函数中,编写LED灯控制代码,实现LED灯闪烁。

4. 编译并下载程序(1)编译项目,生成.hex文件。

(2)将.hex文件下载到STM32F103C8T6开发板上。

5. 测试实验结果(1)将按钮按下,观察LED灯是否闪烁。

(2)松开按钮,LED灯停止闪烁。

五、实验结果与分析1. 实验结果实验过程中,当按钮按下时,LED灯闪烁;松开按钮后,LED灯停止闪烁。

实验结果表明,外部中断能够正确地处理外部设备的中断请求,并控制LED灯的亮灭。

微机原理上机实验(八+十二)实验报告 8086中断实验 步进电机实验

微机原理上机实验(八+十二)实验报告 8086中断实验 步进电机实验

微机原理上机实验报告实验八:8086中断实验实验十二:步进电机实验微机原理上机实验(八)实验报告实验八:8086中断实验一、实验目的1、了解8086内部响应中断的机制;掌握中断向量的作用。

2、利用实验仪上单脉冲、74HC244电路,不使用8259,实现一个中断实例。

3、复习本节实验内容,可尝试自行编写程序,做好实验准备工作,填写实验报告。

二、实验内容1、编制程序:拨动单脉冲开关,“”送给8086的INTR,触发中断;8086通过INTA信号,读取中断向量;8086计数中断次数,显示于F5区的数码管上注意:给INTR高电平信号,8086就会相应中断,所以实验开始前,保证单脉冲开关给8086低电平;中断程序中,加一个较长的延时程序,在中断结束前,有时间拨动单脉冲开关,恢复给8086低电平。

三、实验原理图本实验,通过F4区的8个拨动开关,给74HC244设定中断向量;本实验的中断向量是08H,即IN7-IN0位数据是00001000。

同学可以自定义中断向量,实验程序中处理中断向量部分程序作相应调整四、实验步骤1、连线说明:B4区:CS244、BLE ——C1区:GNDB4区:RD(IO区)——A3区:INTAA3区:INTR ——B2区:单脉冲B4区:JP57(D0..D7) ——A3区:JP41B4区:JP52(IN0..7) ——F4区:JP27(1..8)D3区:CS、A0、A1 ——A3区:CS1、A0、A1D3区:PC0、PC1 ——F5区:KL1、KL2D3区:JP20、B、C ——F5区:A、B、C2、运行程序3、实验开始前,保证单脉冲开关给8086低电平;运行程序;向下拨动开关(触发中断),立即向上拨动开关,产生一个“”,观察结果,数码管上显示的次数与拨动开关次数是否对应。

五、实验代码EXTRN InitKeyDisplay:NEAR, Display8:NEAR_STACK SEGMENT STACKDW 100 DUP(?)_STACK ENDS_DATA SEGMENT WORD PUBLIC 'DATA'BUFFER DB 8 DUP(?)Counter DB ?ReDisplayFlag DB 0_DATA ENDSCODE SEGMENTSTART PROC NEARASSUME CS:CODE, DS:_DATA, SS:_STACKMOV AX,_DATAMOV DS,AXMOV ES,AXNOPCALL InitKeyDisplay ;对键盘、数码管控制器8255初始化CALL WriIntverMOV Counter,0 ;中断次数MOV ReDisplayFlag,1 ;需要显示STI ;开中断START1: LEA SI,BufferCALL Display8CMP ReDisplayFlag,0JZ START1CALL LedDisplayMOV ReDisplayFlag,0JMP START1WriIntver PROC NEARPUSH ESMOV AX,0MOV ES,AXMOV DI,20HLEA AX,INT_0STOSWMOV AX,CSSTOSWPOP ESRETWriIntver ENDPLedDisplay PROC NEARMOV AL,CounterMOV AH,ALAND AL,0FHMOV Buffer,ALAND AH,0F0HROR AH,4MOV Buffer + 1,AHMOV Buffer + 2,10H ;高六位不需要显示MOV Buffer + 3,10HMOV Buffer + 4,10HMOV Buffer + 5,10HMOV Buffer + 6,10HMOV Buffer + 7,10HRETLedDisplay ENDPINT_0: PUSH DXPUSH AXMOV AL,CounterADD AL,1DAAMOV Counter,ALMOV ReDisplayFlag,1CALL LedDisplayDELAY: PUSH BXPUSH CXPUSH DIPUSH SIMOV CX,20DELAY1: LEA SI,BufferCALL Display8loop DELAY1POP SIPOP DIPOP CXPOP BXPOP AX六、实验思考题1.绘制本实验的详细实验电路图?微机原理上机实验(十二)实验报告实验十二:步进电机实验一、实验目的1、了解步进电机的基本原理,掌握步进电机的转动编程方法2、了解影响电机转速的因素有那些二、实验内容编写程序:使用F5区的键盘控制步进电机的正反转、调节转速,连续转动或转动指定步数;将相应的数据显示在F5区的数码管上。

微机原理实验-外部中断实验

下面是赠送的几篇网络励志文章需要的便宜可以好好阅读下,不需要的朋友可以下载后编辑删除!!谢谢!!出路出路,走出去才有路“出路出路,走出去才有路。

”这是我妈常说的一句话,每当我面临困难及有畏难情绪的时候,我妈就用这句话来鼓励我。

一定有很多人想说:“这还在北京混个什么劲儿啊!”但他每天都乐呵呵的,就算把快递送错了也乐呵呵的。

某天,他突然递给我一堆其他公司的快递单跟我说:“我开了家快递公司,你看得上我就用我家的吧。

”我有点惊愕,有一种“哎呦喂,张老板好,今天还能三蹦子顺我吗”的感慨。

之后我却很少见他来,我以为是他孩子出生了休假去了。

再然后,我就只能见到单子见不到他了。

某天,我问起他们公司的快递员,小伙子说老板去上海了,在上海开了家新公司。

我很杞人忧天地问他:“那上海的市场不激烈吗?新快递怎么驻足啊!”小伙子嘿嘿一笑说:“我们老板肯定有办法呗!他都过去好几个月了,据说干得很不错呢!”“那老婆孩子呢?孩子不是刚生还很小吗?”“过去了,一起去上海了!”那个瞬间,我回头看了一眼办公室里坐着的各种愁眉苦脸的同事,并且举起手机黑屏幕照了一下我自己的脸,一股“人生已经如此的艰难,有些事情就不要拆穿”的气息冉冉升起。

并不是说都跳槽出去开公司才厉害,在公司瞪着眼睛看屏幕就是没发展,我是想说,只有勇气才能让自己作出改变。

《拒绝平庸》里有一句话:很多时候我们为什么嫉妒别人的成功?正是因为知道做成一件事不容易又不愿意去做,然后又对自己的懒惰和无能产生愤怒,只能靠嫉妒和诋毁来平衡。

其实走出去不一定非要走到什么地方去,而是更强调改变自己不满意的现状。

有人问我那你常说要坚持,天天跑出去怎么坚持?其实要坚持的是一种信仰,而不是一个地方,如果你觉得一个地方让你活得特别难受,工作得特别憋屈,除了吐槽和压抑没别的想法,那就要考虑走出去。

就像歌词里说的:“梦想失败了,那就换一个梦想。

”不能说外面都是大好前程,但肯定你会认识新的人,有新的机会,甚至改头换面重新做人。

微机中断程序实验报告

一、实验目的1. 理解微机中断的概念和作用。

2. 掌握中断程序的编写和调试方法。

3. 学会使用中断服务程序实现特定功能。

二、实验环境1. 电脑一台2. Keil for 8051编译器3. Proteus仿真软件三、实验内容本次实验主要围绕中断程序的设计和调试展开,具体包括以下步骤:1. 创建项目2. 编写中断服务程序3. 调试程序4. 分析实验结果四、实验步骤1. 创建项目打开Keil for 8051编译器,创建一个新的项目,命名为“中断程序实验”。

2. 编写中断服务程序在中断程序实验项目中,我们需要编写两个中断服务程序,分别对应外部中断0和外部中断1。

(1)外部中断0服务程序```cvoid External0_ISR(void) interrupt 0 {// 外部中断0服务程序代码// 在此处编写外部中断0的处理代码}```(2)外部中断1服务程序```cvoid External1_ISR(void) interrupt 2 {// 外部中断1服务程序代码// 在此处编写外部中断1的处理代码}```3. 调试程序在Proteus仿真软件中,搭建实验电路,并连接好8051单片机。

将编写好的中断服务程序烧录到单片机中,然后进行仿真调试。

(1)调试外部中断0在Proteus中,连接一个按钮作为外部中断0的触发信号。

按下按钮时,程序应该能够进入外部中断0服务程序。

(2)调试外部中断1在Proteus中,连接另一个按钮作为外部中断1的触发信号。

按下按钮时,程序应该能够进入外部中断1服务程序。

4. 分析实验结果经过调试,我们发现外部中断0和外部中断1服务程序均能正确执行。

这表明我们已经成功实现了中断程序的设计。

五、实验心得通过本次实验,我对微机中断程序有了更深入的了解,以下是我在实验过程中的心得体会:1. 中断程序在微机系统中具有重要作用,它可以提高系统的实时性和效率。

2. 编写中断服务程序时,需要注意中断优先级和中断嵌套问题。

微机接口虚拟中断实验的研究和实现

陈燕俐 李爱群 周宁宁
( 京 邮 电大 学 计 算 机 学 院 南 江 苏 南 京 20 0 ) 10 3
摘 要
虚拟实验是随着现代计算机技术 的进步 而产 生和发展 的 一种 实验模 式。分析 目前微机 接 口实验模 式存在 的问题和不
足, 并根据该课程 的具体特 点, 对微机接 口虚拟 实验 的设计 思想和实现原理进行 了深入研 究, 以截获 用户实验 程序 IO指令 的 V D Z D 虚拟设备驱 动技术为基础来设计和实现虚拟 实验。 中断系统 是微 机系统 的重要组成部分 , 点阐述 了虚 拟 中断实验 的具 体实现方 重
法 。 实 验 结 果表 明 , 机 接 口虚 拟 中 断 实 验 能 较 好 地 满 足 教 学 的要 求 , 占用 系 统 硬 件 资 源 , 有 实验 容 易 、 活 等 特 点。 微 不 具 灵 关键 词 微机接 口 虚拟实验 虚 拟 设 备 驱 动程 序 中断
RESEARCH AND M PLEM ENTATI I oN oF RTUAL NTERRUPT VI I EXPERI ENT M FoR I M CRo CoM PUTER NTERFACE I
第2 7卷 பைடு நூலகம் 1 期
21 0 0年 1月
计算机 应 用 与软件
Co u e p ia in n ot r mp t rAp lc to s a d S fwa e
Vo _ 7 No 1 l2 .
Jn 2 1 a .0 0
微 机 接 口虚 拟 中断 实验 的研 究 和 实现
Ch n Ya l LiAi un Zh u Ni n n e ni q o ng i g
( ol eo o p t , a n nvrt ota d C lg C m ue N g U i syo s n e f r e i fP s N n 103,in s ,hn ) a g2 0 0 J gu C ia a

微机原理-实验四-中断实验

微机原理实验报告班级:XXXXX姓名:XXXX学号:20XXXXXXXXX大学信息科学与技术学院信息工程系实验四8259A中断控制器实验一、实验目的:1、利用试验箱掌握8259A中断控制器的使用方法。

2、掌握中断的相关知识。

二、实验内容:1、实验连线(微机原理试验箱)⑴连接138译码输入端A.B.C,其中A连A2,B连A3,C连A4,138使能控制输入端G 与总线单元上方的GS相连。

⑵将8259CS插孔与译码单元的Y0相连,中断源IR7与单脉冲单元的SP插孔相连。

⑶用8芯扁平电缆将8259中断控制单元的数据总线插座与数据总线单元任一插座相连。

2、 PC机连接好串口线电源线,打开电源,在电脑中打开intel8088微机实验系统选择串口一和 57600 波特率若出现仿真器没有连接的画面则串口线没有连接好如下图:3、LED环境⑴在“P.”状态下按“0→EV/UN”,装载实验所需的代码程序。

Ph88/he08.asm代码在软件中自带的,打开软件中的he08.asm 点编译(c)点击编译、连接、装载⑵在“P.”状态下在小键盘键入3400,然后按“EXEC”进入实验项目的运行。

这是输入起始地址,对应代码中的 ORG 3400H4、观察运行结果在连续运行方式下,按动 AN 按钮,LED 数码管从最高位开始依次显示“7”显示满后,最高位显示“P.”继续等待中断。

5、终止运行按“暂停图标”或实验箱上的“暂停按钮”,使系统无条件退出该程序的运行返回监控状态。

三、程序流程图和程序代码1、流程图2、代码与注释;-------------------硬件实验八 8259单级中断控制器实验------------------- CODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODEORG 3400HH8: JMP P8259ZXK EQU 0FFDCHZWK EQU 0FFDDHLED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3HBUF DB ?,?,?,?,?,?Port0 EQU 0FFE0HPort1 EQU 0FFE1HP8259: CLICALL WP ;初始化显示“P.”MOV AX,OFFSET INT8259MOV BX,003CHMOV [BX],AXMOV BX,003EHMOV AX,0000HMOV [BX],AXCALL FOR8259mov si,0000hSTICON8: CALL DISJMP CON8;------------------------------------ INT8259:cliMOV BX,OFFSET BUFMOV BYTE PTR [BX+SI],07HINC SICMP SI,0007HJZ X59XX59: MOV AL,20HMOV DX,Port0OUT DX,ALmov cx,0050hxxx59: push cxcall dispop cxloop xxx59pop cxmov cx,3438hpush cxSTIIRETX59: MOV SI,0000HCALL WPJMP XX59;==============================FOR8259:MOV AL,13HMOV DX,Port0OUT DX,ALMOV AL,08HMOV DX,Port1OUT DX,ALMOV AL,09HOUT DX,ALMOV AL,7FH ;IRQ7OUT DX,ALRET;---------------------------WP: MOV BUF,11H ;初始化显示“P.”MOV BUF+1,10HMOV BUF+2,10HMOV BUF+3,10HMOV BUF+4,10HMOV BUF+5,10HRET;--------------------------------DIS: MOV CL,20HMOV BX,OFFSET BUFDIS1: MOV AL,[BX]PUSH BXMOV BX,OFFSET LEDXLATPOP BXMOV DX,ZXKOUT DX,ALMOV AL,CLMOV DX,ZWKOUT DX,ALPUSH CXMOV CX,0100HDELAY: LOOP $POP CXCMP CL,01HJZ EXITINC BXSHR CL,1JMP DIS1EXIT: MOV AL,00HMOV DX,ZWKOUT DX,ALRET;--------------------------CODE ENDSEND H8四、调试过程及遇到的问题在“P.”状态下键入 3400,然后按“EXEC”进入实验项目的运行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

深圳大学实验报告课程名称:微机原理与接口技术
实验项目名称: 8259中断实验
学院:信息工程学院
专业:通信工程
指导教师:
报告人:学号:班级:
实验时间:
实验报告提交时间:
教务处制
图(5)
初始化命令字4 寄存器(ICW4)说明见图(6)
图(6)
操作命令字1 寄存器(OCW1)说明见图(7)
图(7)
操作命令字2 寄存器(OCW2)说明如图(8)所示。

图(8)
操作命令字3 寄存器(OCW3)说明如图(9)所示。

图(9)
查询状态字(POLL)说明如图(10)所示。

图(10)
在对8259 进行编程时,首先必须进行初始化。

一般先使用CLI 指令将所有的可屏蔽中断禁止,然后写入初始化命令字。

8259 有一个状态机控制对寄存器的访问,不正确的初始化顺序会造成异常初始化。

在初始化主片8259 时,写入初始化命令字的顺序是:ICW1、ICW2、ICW3、然后是ICW4,初始化从片8259 的顺序与初始化主片8259 的顺序是相同的。

系统启动时,主片8259 已被初始化,且4 号中断源(IR4)提供给与PC 联机的串口通信使用,其它中断源被屏蔽。

中断矢量地址与中断号之间的关系如下表所示:
四、实验内容与步骤
1. 8259 单中断实验
实验接线图如图(11)所示,单次脉冲输出与主片8259 的IR7 相连,每按动一次单次脉冲,产生一次外部中断,在显示屏上输出一个字符“7”。

图(11)
实验步骤
(1)按图(11)连接实验线路。

(2)编写实验程序,经编译、链接无误后装入系统。

(3)运行程序,重复按单次脉冲开关KK1+,显示屏会显示字符“7”,说明响应了中断实验程序清单如下:
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
运行结果如下:
2. 8259 级联实验
实验接线图如图(12)所示,KK1+连接到主片8259 的IR7 上,KK2+连接到从片8259 的IR1 上,当按一次KK1+时,显示屏上显示字符“M7”,按一次KK2+时,显示字符“S1”。

编写程序。

图(12)。

相关文档
最新文档