LYF6-通电11(输入输出接口)_第1页
LYF6-通电11(输入输出接口)_第2页
LYF6-通电11(输入输出接口)_第3页
LYF6-通电11(输入输出接口)_第4页
LYF6-通电11(输入输出接口)_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第七章输入输出接口一、概述•速度不匹配;

计算机通过外围设备与外界通信或交换数据称为“输入/输出”。在计算机系统中,常用的外围设备有:

键盘、显示器、磁盘机、打印机、模数转换器、数模转换器、调制解调器等。把外围设备同微型计算机连接起来的电路称为“外设接口电路”,简称“外设接口”。

由于外设种类繁多,所处理的信息不同、速度不同等,因此,主机与外设之间存在下列一些问题:

•信号电平不匹配;

•信号格式不匹配;

•时序不匹配。对于典型系统,其连接示意图为:因此,主机与外设之间是通过接口进行连接的,如:

接口有简单的,如:三态缓冲器、锁存器…

也有复杂的,如:可编程的8259、8255、8253、8251、8237

二、接口的基本结构接口的一般形式为:

接口电路是专门为解决CPU与外设之间的不匹配、不协调工作而设置的,处于总线与外设之间,一般具有下列基本功能:

•设置数据缓冲器--解决速度不匹配

•设置电平转换电路--解决信号电平不一致问题

•设置信息转换逻辑-满足各自格式要求(如A/D、D/A等)

•设置时序控制电路--实现CPU与外设同步工作三、I/O端口的编址CPU寻址I/O端口,有两种方式统一编址单独编址--用统一的传送(MOV)指令--用IN、OUT指令四、CPU与外设之间的数据交换微机中常用的输入/输出控制方式一般有三种:即程序控制方式、中断方式和DMA方式1、程序控制方式(1)无条件传送无条件传送用于能够确信外设已经准备就绪的场合,如读取开关的状态,LED的显示等。无条件传送的接口电路示意如下:教材P266图7.5举例:设Y=20H,要求扫描开关的状态,当开关闭合时,对应的指示灯亮,编程实现上述功能。查询输入流程如下:

输入状态READY输入数据N(2)条件传送(查询方式)INAL,22HTESTAL,80HJZWAIT1WAIT1:INAL,20H程序段为:;查询状态;输入数据Y查询输出流程如下:

输入状态BUSY输出数据YINAL,22HTESTAL,02HJNZWAIT2WAIT2:MOVAL,[SI]程序段为:;查询状态;输出数据OUT21H,ALN某微机系统的输入设备的数据口地址为21H,输出设备的数据口地址为22H,状态寄存器的端口地址为20H。当状态寄存器的D0位为1,表示数据已准备好,可以输入数据;D1位为0,表示输出寄存器空,可以输出数据。现要求从输入设备输入数据,经某种处理后,将其从输出设备输出,共50次。举例:2、中断方式在第八章中介绍3、直接存储器存取(DMA)第八章

中断本章首先介绍一般中断的基本概念,第二节介绍8086中断系统,然后再介绍可编程中断管理器8259A等内容。利用中断方式,使CPU与外设交换数据时,可大大提高CPU效率,使计算机可进行分时操作、实时操作和故障处理等;利用8086的软中断,还可调用大量为外设服务的子程序。8.1中断概述一、二、中断系统功能

1、能实现中断响应、中断服务及中断返回;

2、能实现中断优先级排队;

3、能实现中断嵌套。三、中断基本概念

•中断源-引起中断的原因或发出中断请求信号的来源

•中断屏蔽--用软件的方法使请求中断的设备不能产生中断

•中断嵌套--CPU在执行中断服务程序的过程中,又有新的更高级别的中断源请求中断,CPU中止现行的服务程序,转去执行更高级别的中断服务程序,这种过程称为中断嵌套。中断

•中断矢量表--每个中断服务程序有一个4字节的入口地址

CS:IP,中断矢量表用来存放中断服务程序的入口地址。

•中断优先级--多个中断源同时请求中断时,按轻重缓急排队,CPU先响应级别高的中断,后响应级别低的中断CPU对可屏蔽中断的优先级设定的方法有两种:软件处理--硬件处理--优先链--菊花链(硬件查询)矢量中断优先级--比较器查询方式(移位法、屏蔽法)8.28086/8088中断系统

8086CPU有一个强有力的中断处理系统,能处理256种不同的中断类型,方法简便灵活。8086中断结构如下所示:一、中断分类1、外部中断

•非屏蔽中断----外部通过NMI引起---自动产生2#中断

•可屏蔽中断----外部通过INTR引起---由8259管理,CPU

是否响应取决于中断标志IF。

IF=0

禁止中断

(CLI)

IF=1允许中断

(STI)CPU响应INTR中断,执行两个INTA响应周期二、中断优先级次序内部中断除法错INTOTNTnNMIINTR单步中断2、内部中断

•专用中断:0#--除法出错

1#--单步中断

3#--断点中断

4#--溢出中断

软中断:由INTn

指令引起的中断三、中断矢量表即中断服务程序入口地址表。中断矢量表格式为:设:某中断源类型为0AH,入口为INTR1。

试为该中断源装填中断向量。四、中断响应过程CPU响应可屏蔽中断有三个条件:

•外设有中断请求;

•本中断位未被屏蔽;

CPU允许中断。

当三个条件满足,又无更高级的中断处理,CPU在当前指令执行结束响应中断。

CPU响应中断后,对外设接口发出两个中断响应信号INTA,外设收到第二个INTA以后,向CPU数据总线提供中断矢量。CPU根据中断矢量,在中断矢量表中,取得对应的中断服务程序入口,并转入相应的中断服务程序。8086的中断响应过程如下所示。8.3可编程中断控制器8259A

8259A的主要性能有:

8级中断管理,通过级连可扩至至64级;每级中断均可使之允许或屏蔽;芯片内设有优先级判别电路,与控制电路等共同作用下,选择优先级高的中断类型号传送给CPU。

本节主要介绍8259A的内部结构、引脚功能、控制字格式及8259A初始化编程。一、8259A的内部结构及引脚功能1、内部结构(1)与CPU总线接口包括:数据总线缓冲器读写控制逻辑(2)中断管理器包括:中断请求寄存器IRR、中断服务寄存器ISR、中断屏蔽寄存器IMR、优先级管理器PR及控制电路。(3)级联缓冲器/比较器--扩至64级硬件中断2、引脚功能介绍8259A引脚功能图如下:与系统数据总线相连,实现8259A与CPU间的数据交换接收CPU中断响应向CPU发中断请求口地址选择A0=0偶地址A0=1奇地址CAS0~CAS2主片:输出从片:输入同名端相连:从片/缓冲I/O设备中断请求输入端即:8级硬件中断中断请求可以是电平或上升沿触发,由软件设定二、8259A编程

8259A编程分为两种,即:初始化编程-在8259A开始正常工作之前,由CPU送入2~4个ICW操作(工作方式)编程-在初始化之后的任何时间写入,动态改变8259A工作方式1、8259A初始化编程--介绍初始化命令字ICW1~ICW4初始化命令字完成的功能为:

•设定中断请求信号的触发方式;

•设定8259A的工作方式;

•设定8259A中断类型号基值;

•设定优先级方式;

•设定中断处理结束操作方式。(1)ICW1-芯片控制初始化命令字格式:A0

D7D6D5D4D3D2D1D0

X

X

X

1LTIM

XSNGLIC4(2)ICW2-设置中断类型基值格式:A0D7D6D5D4D3D2D1D0T7T6T5T4T3000(2)ICW3-主片/从片初始化命令字格式:A0D7D6D5D4D3D2D1D0S7S6S5S4S3S2S1S0S=0没挂从片S=1下挂从片主片XXXXXID2ID1ID0从片0111(4)ICW4-方式控制初始化命令字格式:A0

D7D6D5D4D3D2D1D0

X

XXSFNMBUFM/SAEOIUPM18259A初始化编程流程为:例:某8259A初始化编程如下:(设8259A端口为20H、21)MOV AL,11H OUT 20H,AL MOV AL,18H OUT 21H,AL MOV AL,04H OUT 21H,AL MOV AL,1DH OUT 21H,AL∶

2、8259A操作编程--介绍操作命令字OCW1~OCW3操作命令字决定中断屏蔽、中断优先级次序及中断结束方式。(1)OCW1-中断屏蔽字格式:A0

D7D6D5D4D3D2D1D0M7M6M5M4M3M2M1M01M=0开放M=1屏蔽(2)OCW2-控制中断结束及修改优先权命令字格式:A0

D7D6D5D4D3D2D1D0RSL

EOI00L2L1L00(3)OCW3-管理特殊屏蔽和查询方式格式:A0

D7D6D5D4D3D2D1D0XESMMSMM01PRRRS0OCW2命令字功能组合如下:3、8259A应用编程举例举例:(实验七)单个中断源中断编程:CPU执行程序时,显示‘MAIN’,响应外部IRQ7

中断请求时,显示‘7’,延时3秒后返回。三、8259A的级联作业:P3088.2、8.3题8.2

已知中断向量表中地址0020H~0023H的单元中依次是40H,100H,00H,01H,并知INT08H指令本身所在的地址为:9000H:00A0H。若SP=0100H,SS=0300H,标志寄存器内容为0240H,试指出在执行INT08H指令,刚进入它的中断服务程序时,SP,SS,IP,CS和和栈顶上三个字的内容(用图表示)。补充:系统中有三个中断源,从8259A的IR0、IR2、IR4端引入中断,以脉冲触发。中断类型号分别为50H、52H、54H,中断入口地址分别为5020H、6100H、3250H,段地址为1000H。使用正常全嵌套工作方式,普通EOI结束,试编写初始化程序,使CPU响应任何一级中断时能正确工作。并编写

一段IR2中断服务子程序,显示‘8259IR2INT’

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论