《微机原理及接口技术》实验3 IO口和中断
微机原理与接口技术第5章 输入输出接口与中断技术

I/O端口的寻址方式有两种:
I/O端口和存储器统一寻址 I/O端口独立寻址
1.独立的I/O寻址方式
也称为标准的I/O寻址方式或称为端口 寻址方式。 所谓独立寻址,说穿了就是将I/O端口与 存储器彼此独立,各寻各的地址。
有3个特点:
(1)I/O设备的地址空间和存储器地址空间 是独立的、分开的。即I/O接口地址不占用 存储器的地址空间。
主 程 序
中断响应 中 断 服 务 程 序 中断返回
断点 继 续 主 程 序
图6.8 中断过程示意图 图6.8 中断过程示意图
在程序中断传送方式中,外设处于主动地位, CPU处于被动地位。当CPU与外设之间无数据交 换时,CPU与外设彼此无关,并行工作,即CPU 运行主程序,外设处理其内部事务。
CPU与外设交换的信息类型
1、数据信息 数字量 模拟量 开关量 2、控制信息 3、状态信息
数据信息
CPU
控制信息 状态信息
I/O装置
接口电路的一般结构
总线 驱动 地址 译码 控制 逻辑 数据 寄存器 状态 寄存器 控制 寄存器
DB AB CPU CB
数据信息 外 控制信息 部 状态信息 设 备
接口电路
(6) 中断管理。
在I/O接口中设置中断管理逻辑,能对外
设进行中断管理,如建立中断请求,进行中 断排队,提供中断识别码等。
(7) 提供时序及其他控制功能。 在接口电路中一般还应具有时钟发生电
路,以满足微型计算机和各种外设对时序方
面的要求。由于设备种类较多,因此某些外
部设备还需要增加部分特殊的控制电路。
(2) 提供联络信号。 为了协调CPU与I/O设备之间的数据传送, 需要设置一些表示I/O设备状态的信息(如设 备“准备就绪”、“忙”等)及表示微机输出 的数据是否准备好的信息(如“启动”,“停
北京邮电大学微机原理与接口技术第七章 IO接口与中断技术

无条件传送的输入方式如图所示。输入时认为来自 外设的数据已出现在三态缓冲器的输入端。 CPU执行输入指令,指定的端口地址经系统地址总 线(对PC机为A9~A0)送至地址译码器,译码后产生Y 信号。Y为低电平说明地址线上出现的地址正是本端口 的地址;AEN为低电平说明CPU控制总线;端口读控制 信号IOR有效(低电乎)时,说明CPU正处在端口读周 期。三者均为低电平时,经或门(负与门)后产生低电 平,开启三态缓冲器使来自外设的数据进入系统数据总 线而到达累加器。
2、I/O单独编址方式 (I/O映射方式)
I/O单独编址方式的前提是CPU需设置专门的输入/ 输出指令、提供I/O读写信号。否则就不能实现I/O独立 编址方式。Z80、X86等系列微机都设有单独的I/O指令 好I/O读写信号,都采用这种方式。
这种方式的主要优点是:不占用存储器地址,单独 构成一个I/O空间;端口所需地址线少,地址译码器简 单;端口操作指令(I/O指令)长度短,执行时间少; 由于I/O指令与存储器操作指令形式上有明显区别,使 程序编制和阅读较清晰。
7.1.2 I/O接口的主要功能 1、数据的寄存和缓冲功能 外部设备如打印机等的工作速度与主机相比相差 甚远。为了充分发挥CPU的工作效率,接口内设置有数 据寄存器或者用RAM芯片组成数据缓冲区,使之成为 数据交换的中转站。接口的数据保持能力在一定程度上 缓解了主机与外设速度差异所造成的冲突,并为主机与 外设的批量数据传输创造了条件。
1、与存储器统一编址方式 这种方式下的端口和存储单元统一编址,即存储空 间中划出一部分给I/O端口。CPU访问端口和访问存储 器的指令形式上完全一样,只能从地址范围来区分两种 操作。PDP-11和MC6800、68000系列微机采用这种 方式。 这种方式的主要优点是:对端口操作的指令类型多、 功能齐全,不仅对端口进行数据传送,还可以对端口内 容进行算术逻辑运算和移位等等;其次是端口有较大的 编址空间。 这种方式的缺点是:端口占用存储器的地址空间使 存储器的可用地址空间变小;端口指令的长度增加、执 行时间变长;由于访问I/O与访问内存的指令一样,在 程序中不易分清是访问I/O还是访问内存,使程序阅读 困难;端口地址译码器较复杂。
I O扩展实验和外部中断实验

实验三:I/O扩展实验一、实验目的1.学习并掌握用74系列器件扩展8031系统I/O口的技术。
2.学习逻辑移位指令的使用。
二、实验设备及器件1.IBM PC机一台2.DVCC单片机实验箱一台三、实验原理1、本实验使用74LS244八位三态门作输入扩展口,用74LS273八位D型触发器作输出扩展口。
2、74LS244是一个八位三态门。
当使能端E为低电平时,输出端Q的状态即为输入端D的状态。
当E为高电平时,输出端Q为高阻态。
所以74LS244可接在单片机数据总线上。
3、74LS273是一个八位D型触发器。
当74LS273的/CLR端为高电平时,在CLK端上加一上升沿脉冲,输入端D的电平被锁存到输出端Q,然后Q端电平保持不变。
图3-1 I/O扩展原理图4、电路原理图如图3-1所示。
5、实验箱各接口器件模块其地址由74LS138译码产生。
接口器件地址译码电路原理图见图3-2。
图3-2 地址译码电路原理图6、同样8031的RD与Y2经74LS32相或后连74LS244的使能端。
故Y2选中时,RD脉冲将数据从74LS244读入。
所以74LS244的地址为0A000H。
7、在图3-6中,74LS244的输入端接八个开关。
开关接右边时74LS244的输入端为高电平,开关接左边时74LS244的输入端为低电平。
74LS273的输出端经74LS240驱动后接发光二极管,74LS273输出为高时发光二极管点亮。
四、实验内容编写一个程序,通过74LS244读入开关(K1-K8)的状态,通过74LS273输出到发光二极管(L1-L8)上显示。
当开关状态全为“1”(拨动开关朝上为1)时发光二极管循环点亮,否则,开关状态为“1”对应的发光二极管闪烁显示,开关状态为“0”对应的发光二极管熄灭。
(K1对应L1,其余类推)五、程序框图六、汇编语言程序ORG 0000H BEGIN: LJMP STARTORG 0030H START: MOV B,#01 LOOP: MOV DPTR,#0A000HMOVX A,@DPTRCJNE A,#0FFH,OUT1MOV A,BRL AMOV B,AMOV R6,#0FFHDE: MOV R7,#0FFHDJNZ R7,$DJNZ R6,DEOUT: MOV DPTR,#0B000HMOVX @DPTR,ASJMP LOOPOUT1: MOV DPTR,#0B000HMOVX @DPTR,ACLR AMOVX @DPTR,ASJMP LOOPEND七、PROTUES仿真电路图(总线型)实验四、外部中断程序一、实验目的学习8031外部中断的基本使用方法。
《微机原理与接口技术》实验指导书

《微机原理与接口技术》课程实验指导书实验内容EL-8086-III微机原理与接口技术教学实验系统简介使用说明及要求✧实验一实验系统及仪器仪表使用与汇编环境✧实验二简单程序设计实验✧实验三存储器读/写实验✧实验四简单I/0口扩展实验✧实验五8259A中断控制器实验✧实验六8253定时器/计数器实验✧实验七8255并行口实验✧实验八DMA实验✧实验九8250串口实验✧实验十A/D实验✧实验十一D/A实验✧实验十二8279显示器接口实验EL-8086-III微机原理与接口技术教学实验系统简介使用说明及要求EL-8086-III微机原理与接口技术教学实验系统是为微机原理与接口技术课程的教学实验而研制的,涵盖了目前流行教材的主要内容,该系统采用开放接口,并配有丰富的软硬件资源,可以形象生动地向学生展示8086及其相关接口的工作原理,其应用领域重点面向教学培训,同时也可作为8086的开发系统使用。
可供大学本科学习《微机原理与接口技术(8086)》,《单片机应用技术》等课程提供基本的实验条件,同时也可供计算机其它课程的教学和培训使用。
为配合使用EL型微机教学实验系统而开发的8086调试软件,可以在WINDOWS 2000/XP等多种操作系统下运行。
在使用本软件系统调试程序时,可以同时打开寄存器窗口、内存窗口、反汇编窗口、波形显示窗口等等,极大地方便了用户的程序调试。
该软件集源程序编辑、编译、链接、调试与一体,每项功能均为汉字下拉菜单,简明易学。
经常使用的功能均备有热键,这样可以提高程序的调试效率。
一、基本特点EL型微机教学实验系统是北京精仪达盛科技有限公司根据广大学者和许多高等院校实验需求,结合电子发展情况而研制的具有开发、应用、实验相结合的高科技实验设备。
旨在尽快提高我国电子科技发展水平,提高实验者的动手能力、分析解决问题能力。
系统具有以下特点:1、系统采用了模块化设计,实验系统功能齐全,涵盖了微机教学实验课程的大部分内容。
io口中断原理

io口中断原理一、io口中断的定义和作用IO口中断,指的是在计算机系统中,外部设备通过输入输出接口(IO接口)向处理器发出中断请求,处理器在接收到请求后,立即暂停当前任务,转而处理外部设备的中断请求。
这种方式使得外部设备能够及时得到处理,提高了系统的响应速度和效率。
二、io口中断的工作原理io口中断的工作原理可以简单概括为以下几个步骤:1.外部设备通过IO接口向处理器发送中断请求信号。
2.处理器接收到中断请求信号后,进行中断响应,保存当前任务的状态,转入中断处理程序。
3.处理器执行中断处理程序,对中断请求进行处理。
4.处理完中断请求后,处理器恢复之前保存的任务状态,继续执行原任务。
三、io口中断的应用场景io口中断广泛应用于各类实时操作系统和嵌入式系统中,如:1.硬盘读写:当硬盘读写完毕或发生错误时,通过io口中断通知处理器进行相应处理。
2.网络数据接收与发送:在网络通信过程中,当数据到达或发送完毕时,通过io口中断通知处理器进行处理。
3.串口通信:在串口通信过程中,当数据接收或发送完毕时,通过io口中断通知处理器进行处理。
四、如何使用io口中断提高系统性能1.合理配置中断优先级:根据外部设备的重要性和实时性要求,合理设置中断优先级,确保关键设备得到优先处理。
2.优化中断处理程序:编写高效、简洁的中断处理程序,减少中断处理时间。
3.避免中断嵌套:在中断处理过程中,尽量避免产生新的中断请求,以减少中断处理的时间复杂度。
五、总结与展望io口中断作为计算机系统中的一种重要机制,对于提高系统性能和响应速度具有重要意义。
通过合理配置和优化io口中断,可以有效提升系统的实时性和稳定性。
《微机原理及接口技术》实验3 IO口和中断

二、实习内容与步骤
(一)内容
1、将P1口与8个LED灯连接,正常情况下使8个灯
循环点亮,形成跑马灯。 2、用1PIN线将单片机的P3.2(INT0端)与某个输入 键连接。要求按键按下后,实现外部中断,在中断 服务程序中使LED灯变为全部闪烁5次,然后返回主
程序使8个灯继续循环亮。
(二)实验步骤
1、仿真仪与CPU的连接和设置
;延时200ms
三、思考题 1、改用INT1进行中断,程序如何修改? 2、改用跳沿触发进行中断,程序如何修改? 四、实验要求: 1、实习前必须编写好程序 2、程序必须编译通过并运行正确 3、提交试验报告:报告内容 (1)实验目的 (2)实验内容 (3)实验原理图与线路连接 (4)实验步骤 (5)实验结果 (6)实验体会
(1)使用USB线和串口线,将XL1000综合仿真仪与 微型计算机连接起来; (2)在XL1000综合仿真仪上,将JP13和JP14两个 232/USB通信选择方式端口的跳线帽跳至232的方式;
(3)将JP17的开关压下,选择仿真模式。
2、硬件连接 连接到八路指示灯部份的JP32。
(1)用一条8PIN的数据排线把CPU部份的P1口(JP44) (2)用1PIN线将单片机的P3.2(INT0端)与某个输入
微机原理与接口技术(单片机)实验
实验三 I/O口和中断
一、实验目的:
1、通过实验学会I/O口和中断的应用。
2、熟悉XLISP系列 单片机综合仿真试验仪的组成和 使用方法。
3、学会应用XLISP仿真试验和keil-uvision2集成调试 软件进行仿真实验。掌握仿真实验的步骤并能得到正确 的实验结果。
键连接。 3、软件设计 用汇编语言编写相关程序,在Keil软件中输入程序, 编辑,编译链接,并运行程序。
单片机IO口和中断

选择”输出”菜单中的”生成HEX HEX文 7、选择”输出”菜单中的”生成HEX文 ”,以便汇编后产生HEX代码 供编程器使用; 以便汇编后产生HEX代码, 件”,以便汇编后产生HEX代码,供编程器使用;
第三部分 程序写入单片机观察运行结果 1、双击桌面XLISP启动程序,选择打开框,找到 需要执行的程序(HEX文件),点击;在XLISP的 文件 程序区可见到要执行的程序; 2、点击写入框,在程序写入结束后即可观察运行 的结果
题1参考程序 参考程序 #include "reg51.h" #define unit unsigned int #define unchar unsigned char const tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; void delay (void) { unsigned int i; for(i=0;i<35530;i++); } void main (void) { unsigned char x; while(1) { for (x=0;x<8;x++) { P0=tab[x]; delay();} } }
微机原理与接口技术(单片机) 微机原理与接口技术(单片机)实验 实验四 I/O口和中断 口和中断
一、实验目的: 实验目的: 1、通过实验学会I/O口和中断的应用。 、通过实验学会 口和中断的应用 口和中断的应用。 2、熟悉 、熟悉XL400+ 单片机综合仿真试验仪的组成和使 用方法。 用方法。 3、学会应用XLISP和keil-uvision2集成调试软件进行 、学会应用XLISP XLISP和 集成调试软件进行 实验。掌握实验的步骤并能得到正确的实验结果。 实验。掌握实验的步骤并能得到正确的实验结果。
微机原理_中断实验报告(3篇)

第1篇一、实验目的1. 理解中断系统的基本概念和工作原理。
2. 掌握中断源、中断向量、中断服务程序等基本概念。
3. 学习使用Keil软件进行中断程序的编写和调试。
4. 熟悉中断在微机系统中的应用。
二、实验原理中断系统是微机系统中重要的组成部分,它允许CPU在执行程序的过程中,响应外部事件或内部事件,从而实现多任务处理。
中断系统主要包括以下几个部分:1. 中断源:产生中断请求的设备或事件,如外部设备、定时器、软件中断等。
2. 中断向量:中断服务程序的入口地址,用于CPU在响应中断时找到相应的服务程序。
3. 中断服务程序:处理中断请求的程序,完成中断处理任务。
4. 中断优先级:不同中断源的优先级不同,用于确定中断响应的顺序。
三、实验设备与软件1. 实验设备:单片机实验板、计算机、Keil软件、Proteus仿真软件。
2. 实验软件:Keil uVision4、Proteus 8.0。
四、实验内容1. 外部中断实验(1)使用外部中断0(INT0)实现按键控制LED灯的亮灭。
(2)使用外部中断1(INT1)实现按键控制LED灯的闪烁。
2. 定时器中断实验(1)使用定时器0产生1秒的定时中断,实现LED灯的闪烁。
(2)使用定时器1产生1秒的定时中断,实现按键输入的计数。
3. 软件中断实验(1)使用软件中断实现按键输入的字符显示。
(2)使用软件中断实现按键输入的字符加密显示。
五、实验步骤1. 在Keil软件中创建一个新项目,选择合适的单片机型号。
2. 根据实验要求,编写中断服务程序,设置中断向量。
3. 在Proteus软件中搭建实验电路,包括单片机、按键、LED灯等。
4. 将Keil软件编译后的程序下载到单片机中。
5. 在Proteus软件中运行仿真,观察实验结果。
六、实验结果与分析1. 外部中断实验(1)按键按下时,LED灯亮;按键松开时,LED灯灭。
(2)按键按下时,LED灯闪烁;按键松开时,LED灯停止闪烁。
计算机硬件技术基础 微型计算机原理与接口技术 IO接口中的中断技术

回顾
➢ I/O接口的作用是什么? ➢ 接口的基本功能是什么?典型接口电路由哪些部分组成? ➢ I/O端口指的是什么?其编址方式有几类,请指出每一
类的特点? ➢ 为什么微处理机进行I/O操作时一定要对I/O设备进行同
步控制?有哪几种同步控制方式,各有哪些特点?
6.4 I/O 接口中的中断技术
②中断源的识别
几个概念: (1)中断向量号:中断类型码(8位),系统为每个中断/异常都分配
一个确定的类型码,作为指向其处理程序入口 地址的索引。 (2)中断向量表:0000:0000H-0000:03FFH, 存放256个中断类型的中断向量。 (3)中断向量:中断服务程序的入口地址,CS:IP。 (4)中断服务程序:中断处理程序,地址从中断向量表读出。
4)中断处理
•中断服务子程序特点: •为“远”过程(类型为FAR) •要用IRET指令返回
•中断服务子程序要做的工作:
5)中断返回
•执行中断返回指令IRET •IRET指令将使CPU把堆栈内保存的断点信息弹出到IP、CS和 FLAG中,保证被中断的程序从断点处能够继续往下执行。
SP
进入中断服 务程序时
➢ 中断处理过程 中断申请、中断判优、中断响应、中断处理、中断返回
主 程 序 中断请求
中 断 服 务 子
CPU 再 返 回 到 暂 停 处 继 续 执 行 原
程
序
来的程序。
(2)中断源
中断源:发出中断请求的来源(引起中断的原因)。
中断源分为:
(1)I/O设备:如键盘、显示器、打印机。
外部(硬)中断源:(2)数据通道:如软盘、硬盘等。
(3)故障源:如电源掉电、内存及外部设备出错等。 (4)其它外部设备。
实验三-IO和中断实验

三、实验内容
3、P3口查询方式输入的交通灯时序: 、 口查询方式输入的交通灯时序 口查询方式输入的交通灯时序:
P3口作为输入口,查询P3.2的电平。 口作为输入口,查询 的电平。 口作为输入口 的电平 P3.2=0,P2.0输出 , 输出1Hz方波,正常交通; 方波, 输出 方波 正常交通; P3.2=1,P2.0输出占空比为 输出占空比为75%、2Hz矩形波, 矩形波, , 输出占空比为 、 矩形波 紧急情况。 紧急情况。 程序来实现上述交通灯时序的功能, 用C程序来实现上述交通灯时序的功能,延时 程序来实现上述交通灯时序的功能 时间可通过示波器大致地校准。 时间灯时序: 、中断方式输入的交通灯时序:
作为单片机的中断信号INT0; 将P3.2作为单片机的中断信号 作为单片机的中断信号 ; 利用中断方式,读取P3.2的电平; 的电平; 利用中断方式,读取 的电平 实现上述交通灯时序; 实现上述交通灯时序; 程序编写中断程序函数, 用C程序编写中断程序函数,以及初始化和主 程序编写中断程序函数 程序。 程序。
一个灯右移; 参考程序 参考程序) 一个灯右移;(参考程序) 两两右循环; 两两右循环; 一个灯右循环间隔时间0.1秒 一个灯右循环间隔时间 秒。
三、实验内容
2、P1口直接输入,读取 、 口直接输入 读取DIP开关值,P2直接 口直接输入, 开关值, 直接 开关值 输出, 指示结果。 汇编程序改C程序 输出,用LED指示结果。(汇编程序改 程序 指示结果 汇编程序改 程序)
1、P1口直接输出,驱动 、 口直接输出 驱动LED指示灯,演示跑 口直接输出, 指示灯, 指示灯 马灯效果: 马灯效果:
0
三、实验内容
1、P1口直接输出,驱动 、 口直接输出 驱动LED指示灯,演示跑 口直接输出, 指示灯, 指示灯 马灯效果: 马灯效果:
微机原理中断实验报告(3篇)

第1篇一、实验目的1. 理解中断的概念和作用;2. 掌握中断系统的组成和基本工作原理;3. 熟悉中断向量表、中断服务程序和中断处理过程;4. 通过实验验证中断系统的正确性和可靠性。
二、实验原理1. 中断的概念:中断是CPU在执行程序过程中,由于某些事件的发生,暂时停止当前程序的执行,转而执行相应的事件处理程序的过程。
2. 中断系统的组成:中断系统主要由中断控制器、中断源、中断向量表、中断服务程序和CPU等组成。
3. 中断向量表:中断向量表是存储中断服务程序入口地址的表格,其中每个中断向量对应一个中断服务程序。
4. 中断服务程序:中断服务程序是处理中断事件的核心程序,用于完成中断事件的处理任务。
5. 中断处理过程:当中断事件发生时,CPU会根据中断向量表找到对应的中断服务程序入口地址,并跳转到该地址执行中断服务程序。
三、实验仪器与设备1. 实验台:微机原理实验台2. 电脑:一台3. 软件环境:Keil uVision、emu8086等四、实验步骤1. 启动实验台,打开微机原理实验台软件。
2. 在软件中设置实验参数,如中断源、中断向量等。
3. 编写中断服务程序,实现中断事件的处理任务。
4. 编写主程序,调用中断服务程序。
5. 运行实验程序,观察中断系统的运行情况。
五、实验内容1. 实验一:单级中断系统(1)设置一个外部中断源,如按键中断。
(2)编写中断服务程序,实现按键按下时的处理任务。
(3)在主程序中调用中断服务程序。
2. 实验二:多级中断系统(1)设置两个外部中断源,如按键中断和定时器中断。
(2)编写中断服务程序,实现按键中断和定时器中断的处理任务。
(3)设置中断优先级,实现多级中断。
(4)在主程序中调用中断服务程序。
3. 实验三:中断嵌套(1)设置两个外部中断源,如按键中断和定时器中断。
(2)编写中断服务程序,实现按键中断和定时器中断的处理任务。
(3)实现中断嵌套,即在定时器中断服务程序中再次触发按键中断。
实验三单片机IO及外部中断实验

实验三单片机I/O及外部中断实验一、实验目的1。
学习P1、P3口作为基本I/O口的使用方法,掌握对发光二极管和继电器的程序控制方法;2。
学习在单片机系统中扩展简单I/O接口的方法,学习模拟交通灯控制的方法;3。
掌握外部中断技术的基本使用方法和中断处理程序的编程方法。
二.实验仪器:1.仿真教学实验机(5196ET) 一台2。
直流稳压电源(DF1731SB3A)一台3.PC机一台三、实验内容1、P1口做输出口实验(1)实验要求:P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
(2)电路及连线如下:(3)实验说明1.延时子程序的延时计算问题对于程序DELAY:MOVR0,#00HDELAY1:MOV R1,#0B3HDJNZR1,$DJNZ R0,DELAY1查指令表可知MOV,DJNZ 指令均需用两个机器周期,而一个机器周期时间长度为12/11。
0592MHz,所以该段程序执行时间为:((0B3+1)×256+1)×2×12÷=100。
002mS(4)实验框图(见TP1A。
ASM主程序框图):(5)P1.0~P1.7接DL1.~DL8,运行程序TP1A,观察现象.TP1A程序:ORG0000HLJMPSTARTORG0040HSTART:MOV SP,#60HMOV A,#01HROTATE:MOV P1,A;点亮一个LEDRL A ;循环右移LCALL DELAY ;延时NOPSJMP ROTATEDELAY:;延时子程序(1秒)MOV R0,#0AHDELAY1:MOV R1,#00HDELAY2:MOVR2,#0B2HDJNZR2,$DJNZ R1,DELAY2DJNZ R0,DELAY1RETEND(6)修改程序TP1A,使指示灯左循环。
*(7)修改程序TP1A,使指示灯两两右循环.*(8)修改程序TP1A,使指示灯从两边向中间循环.*(9)修改程序TP1A,使指示灯右循环间隔时间为0.1秒。
微机原理与接口技术中断控制接口.

菊花链 逻辑电路
串行排队连法
中断请求没有得到响应
设备1 接口
中断回答 中断请求
设备2 接口
设备3 接口
CPU以及 总线 控制逻辑 INTA INTR
菊花链 逻辑电路
越靠近CPU的接口,优先级越高 串行排队连法
中断处理过程
能向CPU发出中断请求的中断源很多,而且中断请求又是随机的,但 CPU对中断的响应和处理必须经过以下几个过程: 1)中断请求:当外设准备就绪时,外设给出中断请求信号。 2)中断判优:对于一个复杂的系统同一时刻会出现多个中断请求。对每一个 中断请求设置一个中断优先权。当多个中断请求同时出现时,中断管理部件 按中断优先级的高低,将优先级最高的中断请求送到CPU的INTR引脚。 3)中断响应:CPU在每一条指令执行结束之后,检查中断请求信号INTR,若 中断请求信号为1,同时中断允许触发器IF为1,则CPU通过INTA引腿给出中 断响应输出信号,转入中断周期。 4)保存断点:为了在中断服务结束之后,能返回中断的主程序继续执行原 来的程序,中断之前CPU要将执行的下一条指令的地址,即指令指针IP的值 和标志寄存器推入堆栈。 5)关闭中断:为了在中断服务过程中,CPU不再被新的中断源的中断请求所 打扰,将中断允许触发器IF置0。
2. 程序查询 保护现场,读取中断位状态
是
是否 A 请求? 否
转 A 的服务程序
入口地址
是否 B 请求?
否
是
转 B 的服务程序 入口地址
是否 C 请求?
否 …
是
转 C 的服务程序 入口地址
硬件查询方式
中断请求得到响应
设备1 接口
中断回答 中断请求
设备2 接口
设备3 接口
微机原理实验-GPIO 接口及其外部中断的应用(MSP430软件循环查询方法编程实现控制灯亮灭)

实验 GPIO 接口及其外部中断的应用一、实验目的1. 掌握MSP430 系列 CPU 芯片特点和超低功耗特性、模式及硬件编程实现方法;2. 掌握 MSP430 系列 GPIO 接口具备的功能、控制寄存器及软件配置方法和基本操作;3. 熟练掌握 GPIO 接口的查询操作方式和应用方法;4. 熟练掌握 GPIO 接口按键消抖的方法;5. 了解 MSP430 系列中断系统,熟练掌握 GPIO 接口外部中断的应用方法;6. 熟练掌握CCS 环境中开发应用程序的流程,以及软硬件联合调试的过程和方法。
二、实验内容1. ※●利用软件循环查询方法编程实现:扩展板上的按键S1 控制L1 亮灭,按键S2 控制L2 亮灭,要求按下并抬起后L1 或L2 改变亮灭状态。
(1) 源代码(2)实验现象当按下并抬起P2.1口的按键时,P1.0口的LED亮,再次按下并抬起P2.1的按键时,P1.0口LED灭。
当按下并抬起P1.1口的按键时,P4.7口的LED亮,再次按下并抬起P1.1的按键时,P4.7口LED灭。
2. ※●利用GPIO 接口外部中断方式,设置下降沿触发外部中断,使用变量NUM 记录中断次数,编程实现上题功能。
要求:利用外部中断方式检测按键是否按下;(1)源程序(2)实验现象当按下并抬起P2.1口的按键时,P1.0口的LED亮,再次按下并抬起P2.1的按键时,P1.0口LED灭。
当按下并抬起P1.1口的按键时,P4.7口的LED亮,再次按下并抬起P1.1的按键时,P4.7口LED灭。
3. 在实验中可能会出现按一次按键却会出现LED 指示灯闪一次或者是多次的情况,这是为什么?写出如何处理按键产生的毛刺、抖动现象?按键会出现高低电平的抖动,也称作毛刺,可以通过硬件消抖或者软件延时消抖。
4. 写出主程序中没有调用中断子程序,中断子程序却可以被执行的原因;中断程序不同于子程序,不需要主函数main调用就能执行。
中断服务程序只需要满足一定条件即可执行,比如定时器/计数器(在写入定时器中断服务程序的前提下)只需要计数“计满”即可触发中断服务程序;外部中断(在写入外部中断的服务程序的前提下)只需要触发外部中断引脚即可自动执行,不需要主函数调用。
微机原理与接口技术 实验报告

微机原理与接口技术实验报告学院:计算机与通信工程学院专业:计算机科学与技术班级:学号:姓名:实验一 8259中断控制器应用实验一、实验目的1.掌握PC机中断处理系统的基本原理。
2. 掌握可编程中断控制器8259的应用编程方法。
二、实验内容1.PC机内中断实验。
使用单次脉冲模拟中断产生。
验证中断处理程序,在显示器屏幕上显示一行预设定的字符串。
2.PC机内中断嵌套实验。
使用单次脉冲模拟两个中断源的中断产生,填写中断处理程序,体会中断嵌套的过程。
3.扩展多中断源查询方式应用实验。
利用实验平台上8259控制器作为中断扩展源,编写程序对8259控制器的中断请求进行处理。
三、实验步骤1.实验1-1:PC机内中断应用实验(1)按接线图连好接线,调用程序源代码8259-1.asm,观察实验现象,屏幕显示结果截图如下:(2)自设计实验。
改变接线方式,将单次脉冲连到USB核心板上的IRQ10插孔上,参考本实验代码,编程实现IRQ10中断。
(注意:考虑PC机内中断级联的方式,参看前面的原理说明),代码如下:DATA SEGMENTMESS DB 'IRQ10 ',0DH,0AH, '$'DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX, CSMOV DS, AXMOV DX,OFFSET INT10MOV AX,2572H ;设置IRQ10对应的中断向量INT 21HIN AL,21H ;读取中断屏蔽寄存器AND AL,0F3H ;开放IRQ3中断和从片OUT 21H,ALIN AL,0A1H ;从片的中断屏蔽寄存器AND AL,0FBH ;开放IRQ10中断OUT 0A1H,ALMOV CX,10STIWAIT: JMP WAITINT10: MOV AX, DATA ;中断服务程序MOV DS, AXMOV DX, OFFSET MESSMOV AH, 09 ;在屏幕上显示每次中断的提示信息INT 21HMOV AL, 20H ; 发出EOI结束中断到PC内主片的地址20H OUT 20H, ALLOOP NEXTIN AL, 21H ;读中断屏蔽寄存器,获取中断屏蔽字OR AL, 08H ;关闭IRQ3中断OUT 21H, AL ;将中断屏蔽字送到中断屏蔽寄存器STI ;置中断标志位MOV AH, 4CH ;返回DOSINT 21HNEXT: IRET ;中断返回CODE ENDSEND START调用程序代码,观察实验现象,屏幕显示截图如下:2.实验1-2:PC机内中断嵌套实验实验要求:(1)按接线图连好接线,调用程序源代码8259-2.asm,做如下操作,观察屏幕显示结果并分析产生该现象的原因:A.按下连接IRQ的单次脉冲按键,屏幕上会显示10个3,在屏幕上10次显示未结束之前,按下连接IRQ10的单次脉冲按键,观察现象;按下IRQ时屏幕上会显示10个3,此时按下IRQ10,会直接在屏幕上显示10个10,然后结束后再显示剩余的3B.按下连接IRQ10的单次脉冲按键,屏幕上会显示10个10,在屏幕上10次显示未结束之前,按下连接IRQ3的单次脉冲按键,观察现象。
微机原理与接口技术实验

Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验
试验程序框图
Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验
试验六: A/D转换试验
Flying College of BinZhou University
用8255PA口控制PB口。
试验接线
PA0~PA7→K1~K7;(开关量输入模块) PB0~PB7→L1~L8;(发光管输出模块) 8255数据、控制线内部已线连好。
Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验
编程指南
⒈ 8255A芯片简介:8255A可编程外围接口芯片是INTEL企业 生产旳通用并行接口芯片,它具有A、B、C三个并行接口,用 +5V单电源供电,能在下列三种方式下工作: 方式0:基本输入/ 输出方式 方式l:选通输入/ 输出方式 方式2:双向选通工作方式 ⒉ 使8255A端口A工作在方式0并作为输入口,读取Kl-K8个开 关量,PB口工作在方式0作为输出口。
© 2009 Yuanwei
微机原理与接口技术实验
试验目旳
1、学习微机系统中扩展简朴I/O口旳措施。 2、学习数据输入输出程序旳编制措施。
试验内容
利用74LS244作为输入口,读取开关状态,并将此状态经过 74LS273再驱动发光二极管显示出来。
Flying College of BinZhou University
© 2009 Yuanwei
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
补充:做指导书P22页的实验六:跑马灯参考程序
org 0000h ajmp loop org 0030h loop: mov p1,#0ffh clr p1.0 lcall delay clr p1.1 lcall delay clr p1.2 lcall delay clr p1.3 lcall delay clr p1.4 lcall delay
;点亮灯p1.5
;点亮灯p1.6 ;点亮灯p1.7 ;到最开ห้องสมุดไป่ตู้loop处重新运行 ;延时子程序
三、思考题 1、修改延时子程序,改变延时时间为1秒和3秒, 观察结果 2、修改程序, 改变跑马灯的跑马顺序 A:由灯1至灯8,再由灯8回到灯1 B:由两头到中间,再由中间到两头 C:隔灯亮并跑马 四、实验要求: 跑马灯实验可不用写实验报告
键连接。 3、软件设计 用汇编语言编写相关程序,在Keil软件中输入程序, 编辑,编译链接,并运行程序。
参考程序 loop1:rlc a org 0000h mov p1,a ljmp start call delay org 0003h djnz r2,loop1 jmp ext0 mov r2,#07 start: mov ie,#10000001b mov ip,#00000001b loop2:rrc a mov p1,a mov tcon,#0000000b call delay mov sp,#70h djnz r2,loop2 loop: mov a,#0ffh jmp loop clr c mov r2,#08
delay: mov r5,#20 ext0: push acc push psw d1: mov r6,#20 setb rs0 d2: mov r7,#250 clr rs1 djnz r7,$ mov a,#00 djnz r6,d2 mov r2,#10 djnz r5,d1 loop3:mov p1,a ret call delay end cpl a djnz r2,loop3 pop psw pop acc reti
(1)使用USB线和串口线,将XL1000综合仿真仪与 微型计算机连接起来; (2)在XL1000综合仿真仪上,将JP13和JP14两个 232/USB通信选择方式端口的跳线帽跳至232的方式;
(3)将JP17的开关压下,选择仿真模式。
2、硬件连接 连接到八路指示灯部份的JP32。
(1)用一条8PIN的数据排线把CPU部份的P1口(JP44) (2)用1PIN线将单片机的P3.2(INT0端)与某个输入
;延时200ms
三、思考题 1、改用INT1进行中断,程序如何修改? 2、改用跳沿触发进行中断,程序如何修改? 四、实验要求: 1、实习前必须编写好程序 2、程序必须编译通过并运行正确 3、提交试验报告:报告内容 (1)实验目的 (2)实验内容 (3)实验原理图与线路连接 (4)实验步骤 (5)实验结果 (6)实验体会
附录:1、程序调试步骤: (1) 程序编写完成,并将*.asm添加到工程 中后,进行仿真前,对目标1的属性进行修改; (2)如右图, 点击工程下拉菜 单中的”目标’ 目标1’属性”;
(3)单击”目标”,输入仿真器的频率12(MHz);
(4)选择”输出”菜单中的”生成HEX文 件”,以便汇编后产生HEX代码,供编程器使用;
二、实习内容与步骤
(一)内容
1、将P1口与8个LED灯连接,正常情况下使8个灯
循环点亮,形成跑马灯。 2、用1PIN线将单片机的P3.2(INT0端)与某个输入 键连接。要求按键按下后,实现外部中断,在中断 服务程序中使LED灯变为全部闪烁5次,然后返回主
程序使8个灯继续循环亮。
(二)实验步骤
1、仿真仪与CPU的连接和设置
微机原理与接口技术(单片机)实验
实验三 I/O口和中断
一、实验目的:
1、通过实验学会I/O口和中断的应用。
2、熟悉XLISP系列 单片机综合仿真试验仪的组成和 使用方法。
3、学会应用XLISP仿真试验和keil-uvision2集成调试 软件进行仿真实验。掌握仿真实验的步骤并能得到正确 的实验结果。
(5)在”调试”菜单中,选择如下功能,
并点击”设置”,进行 右图设置,注意你使用 的是哪个串口(Com1还 是其它的,可以看设备 管理器);
(6)全部确定后,对程序进行编译,并生成相 应的HEX文件后,进行调试(红色的D), ;如出现错误报告,要求连上仿真 仪时,请检查有无连接USB线和串 口线,并按下仿真仪上的复位键; (7)进入调试窗口,连接上相关的连接线,点击” 全速运行”, 即可观查仿真结果; (8)退出仿真时,按下仿真仪上的复位键就会自 动退到编辑模式下,修改完毕程序并编译后,再按 下”调试”即可进入仿真模式;
;从0030h开始,避开00-30h的敏感地址 ;关闭所有灯 ;点亮灯p1.0 ;调延时子程序 ;点亮灯p1.1 ;点亮灯p1.2
;点亮灯p1.3 ;点亮灯p1.4
clr p1.5 lcall delay clr p1.6 lcall delay clr p1.7 lcall delay AJMP LOOP delay: mov r5,#20 d1: mov r6,#40 d2: mov r7,#248 djnz r7,$ djnz r6,d2 djnz r5,d1 ret end