第7章 并行接口8255A 36_第1页
第7章 并行接口8255A 36_第2页
第7章 并行接口8255A 36_第3页
第7章 并行接口8255A 36_第4页
第7章 并行接口8255A 36_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

河南科技大学电子信息工程学院计算机接口技术第7章

可编程接口芯片

学习内容可编程接口芯片概述可编程并行输入/输出接口芯片8255A可编程计数器/定时器接口芯片82531河南科技大学电子信息工程学院计算机接口技术可编程接口芯片概述

所谓可编程接口芯片是指用户不改变接口芯片的硬件电路,通过编写相应的程序段,使一块通用的I/O接口芯片能按不同的工作方式完成不同功能的接口任务。2河南科技大学电子信息工程学院计算机接口技术命令字或方式控制字命令寄存器FF为0,I/O接锁存器,输出端口;FF为1,I/O接三态缓冲器,输入端口。对可编程芯片初始化过程,即对芯片的控制端口写入各种命令字的操作过程。控制信息8位三态缓冲器8位锁存器数据端口命令端口或控制端口具有输入功能和输出功能的可编程接口芯片3河南科技大学电子信息工程学院计算机接口技术目前常用的可编程接口芯片有以下几种:

8255A 并行I/O接口

8253 计数器/定时器

8251 串行I/O接口

8259A 中断控制器

ADC0809A/D转换接口4河南科技大学电子信息工程学院计算机接口技术数据的各位同时由计算机到达外设→

快多根数据线

远距离费用高并行通信

将一组数据的各位同时在多根并行数据线上传输。01010110

D0D1D2D3D4D5D6D7外设D0D1D2D3D4D5D6D7计算机并行通信适合于外设与微机之间进行近距离、大量和快速的信息交换。例如:微机与并行接口打印机、磁盘驱动器。7.1可编程并行接口芯片8255A

一、数据通信方式5河南科技大学电子信息工程学院计算机接口技术数据的各位依次由计算机到达外设→

慢数据线少→

远距离费用低

串行通信将一组数据的各位按顺序依次在一根数据线上传输。

01101010

计算机串行通信适合于外设与微机之间进行长距离、中低速信息交换。外设6河南科技大学电子信息工程学院计算机接口技术二、8255A功能和特点

8255A是一种通用的可编程并行I/O接口芯片,广泛用于如8086、MCS-51、Z80CPU等系统中。具有3个带锁存或缓冲的数据端口,可与外设并行交换数据。

特点:8255A有3个8位的并行输入/输出端口:A口、B口、C口;可利用编程的方法设置3个端口是输入端口还是输出端口;有三种工作方式:方式0、方式1和方式2;有三种数据传送方式:无条件传送、查询传送和中断传送。可以对端口C的任一位进行单独的位操作。总之,8255A是一个操作灵活、控制方便、应用广泛的并行接口电路。7河南科技大学电子信息工程学院计算机接口技术三、8255A内部结构和管脚8河南科技大学电子信息工程学院计算机接口技术1.数据端口A、B、C

8255A有3个8位的数据端口A、B、C(简称A口、B口、C口),可通过程序设定,使它们分别作为输入端口或输出端口与CPU或外设进行数据、控制命令和状态信息的交换。A口有一个8位的输入锁存器和一个8位的输出锁存器/缓冲器,因此A口作输入或输出时,数据均被锁存。B口有一个8位的输入缓冲器和一个8位的输出锁存器/缓冲器,因此B口输入时数据不锁存,输出时数据锁存。A口、B口经常作为独立的端口工作或与C口配合一起工作。C口有一个8位的输入缓冲器和一个8位的输出锁存器/缓冲器,因此C口输入时数据不锁存,输出时数据锁存。C口经常被分成高4位PC7~PC4和低4位PC3~PC0两个端口,可分别作为A口和B口的“联络”线、“状态”线、“中断”线,也可分别作为输入端口或输出端口。9河南科技大学电子信息工程学院计算机接口技术2.A组和B组控制部件A口和C口的高4位(PC7~PC4)组成A组,由A组控制部件控制,B口和C口的低4位(PC3~PC0)组成B组,由B组控制部件控制。这两组控制部件一方面接收芯片内部数据总线上的控制字,一方面接收来自读/写控制逻辑电路的读/写命令,然后向各端口发出相应的控制命令,控制各端口的工作方式和读/写操作。还可以根据CPU的命令字对C口的任一位按位进行置位或复位。10河南科技大学电子信息工程学院计算机接口技术3.数据总线缓冲器双向三态的8位数据缓冲器,与系统数据总线相连,是传送数据、控制字、状态信息的通道。当片选信号CS=0时,通过缓冲器和与之相连的8位数据总线D7~D0,可以接收CPU传送的数据或控制字,送入8255A的数据端口或控制端口;也可向CPU传送外设的数据或状态信息。当片选信号CS=1时,数据总线缓冲器与外部总线D7~D0之间为高阻状态,即电气隔离状态。11河南科技大学电子信息工程学院计算机接口技术读/写控制电路接收CPU的控制命令,如片选信号CS、地址总线的端口选择信号A2、A1,读、写信号RD和WR和复位信号RESET,将这些信号组合后,向A、B两组控制部件发送命令,完成数据、控制字和状态信息的传送。4.读/写控制电路12河南科技大学电子信息工程学院计算机接口技术

8255A管脚功能

1)8255A与外设相连的管脚:

PA7~PA0:A口数据线,接外设;

PB7~PB0:B口数据线,接外设;

PC7~PC0:C口数据线或作为A口、

B口的联络线,接外设。40个管脚包括三部分:

1.24个与外设相连的管脚;

2.14个与CPU相连的管脚;

3.电源线和地线。13河南科技大学电子信息工程学院计算机接口技术2)8255A与CPU相连的管脚:D7~D0:8位数据线,与系统数据总线相连。RESET:复位信号,高电平有效。复位时所有内部寄存器清除,同时3个端口被自动置成输入端口。CS:片选信号,低电平有效。有效时,8255A被选中。RD:读信号,低电平有效。有效时,CPU可从8255A读取数据或状态信息。WR:写信号,低电平有效。有效时,CPU可向8255A写入控制字或输出数据。14河南科技大学电子信息工程学院计算机接口技术A1A0:端口选择线8255A有3个数据端口和1个控制端口,可用A1A0的组合来选择不同端口。A1A0选择端口00A口01B口10C口11控制口A1A0的组合与端口关系15河南科技大学电子信息工程学院计算机接口技术8255A端口选择操作

168255A与8088系统的连接示意图D0~D7WRRDA1A0CSDBIOWIORA1A0译码器8255AA口B口C口D0~D7外设A15~A2系统总线8位系统,8255A的A1、A0可直接与地址总线的A1、A0相连,4个端口地址是连续的,如:08H,09H,0AH,0BH。178255A与8086系统的连接示意图D0~D7WRRDA1A0CSDBIOWIORA2A1译码器8255AA口B口C口D0~D7外设A15~A3,A0系统总线16位系统,8255A的数据线与系统的低8位相连;而低8位总是与偶地址对应,因此系统的A2应与8255的A1相连,系统的A1应与8255的A0相连。4个端口的地址为偶数,如端口地址为328H、32AH、32CH、32EH。18河南科技大学电子信息工程学院计算机接口技术四、8255A的工作方式及控制字1、8255A的工作方式

8255A有3种工作方式:

1)方式0——基本输入/输出方式(A、B、C口);

2)方式1——选通输入/输出方式(A、B口);

3)方式2——双向传输方式(仅A口)。A口和B口的工作方式是由写入控制端口的方式控制字决定的;A口和B口工作方式的是独立设置的,可用方式控制字中的D6~D5位、D2位来分别设置A口和B口的工作方式。19河南科技大学电子信息工程学院计算机接口技术1)方式0—基本输入/输出方式特点:

方式0适合于无条件传送方式,A口、B口、C口在无条件方式下,作为数据输入或输出端口时,不需要应答联络信号。方式0也适合于查询传送方式,A口、B口可作为数据输入或输出端口,C口的某些位作为联络线,为A口、

B口提供应答联络信号,具体是哪些位没有统一规定。20河南科技大学电子信息工程学院计算机接口技术2)方式1—选通输入/输出方式特点:

方式1也称为应答方式,适合于查询传送方式或中断传送方式,A口、B口作为数据输入或输出端口时,需要应答联络信号。

C口的某些位固定的作为联络线,为A口、B口提供联络信号,具体是哪些位有统一规定。21河南科技大学电子信息工程学院计算机接口技术3)方式2—双向传输方式特点:只适用于A口,C口固定的5位作为联络线,为A口提供联络信号;当A口工作在方式2时,B口可工作在方式0或1,C口没有被指定为联络信号的其他位可以工作在方式0,可输入/输出端口。22河南科技大学电子信息工程学院计算机接口技术2、8255A的控制字8255A有两个控制字:1)方式选择控制字(8位)

作用:设定工作方式、选择输入/输出;

C口的输入/输出可分为两个4位端口分别设置;写入控制端口(A1=1、A0=1),特征位D7=1。23河南科技大学电子信息工程学院计算机接口技术2)C口置位/复位控制字(8位)作用:控制C口的相应位置位(置“1”)或复位(置“0”);

注意:C口置位/复位控制字虽然是对C口操作,但应将控制字写入控制端口(A1=1、A0=1),而不是写入C端口;特征位D7=0。24河南科技大学电子信息工程学院计算机接口技术方式控制字格式:8位,其中最高位是标志位,一定要写1。D7D6D5D4D3D2D1D0D7=1方式控制字标志

D7=0C口置位/复位控制字标志

在使用8255A时,首先要由CPU对8255A写入控制字,有两种控制字,8255A的三种工作方式都要由控制字来设定——设置过程称为“初始化”。25河南科技大学电子信息工程学院计算机接口技术D7D6D5D4D3D2D1D0D7=1A口工作方式选择:00=方式0,01=方式1,1X=方式2

基本输入/输出选通输入/输出双向传输方式

A口输入输出选择:0=输出1=输入C口高4位输入输出选择:0=输出1=输入B口工作方式选择:0=方式0基本输入/输出

1=方式1选通输入/输出

B口输入输出选择:0=输出

1=输入C口低4位输入输出选择:

0=输出1=输入26河南科技大学电子信息工程学院计算机接口技术3种工作方式说明

D7D6D5D4D3D2D1D0D7=1A口工作方式选择:00=方式0,01=方式1,1X=方式2A口工作状态为:基本输入输出选通输入输出双向选通输入输出

8255A的24条I/O线全部用作传送数据,不设专用联络线,常用于无条件传送。A、B口传送数据,C口部分位指定为固定的专用联络线,用于查询(条件)传送或中断传送。A为双向输入输出口,C口的5位为专用联络线。27河南科技大学电子信息工程学院计算机接口技术例1:要把A口指定为方式1,输入,C口高4位为输出;B口指定为方式0,输出,C口低4位为输入,则方式控制字是:10110001B(0B1H)初始化的程序段为:

MOVDX,303H;假设8255A控制口地址303HMOVAL,0B1H;方式控制字

OUTDX,AL;送到控制口28河南科技大学电子信息工程学院计算机接口技术

C口置位/复位控制字

作用:指定C口的某一位(某一个管脚)输出高平或低电平。格式:8位,其中最高位是标志位,一定要写0。D7=0置位/复位控制字标志不用(写0)D3D2D1位选择000PC0001PC1010PC2011PC3100PC4101PC5110PC6111PC7D7D6D5D4D3D2D1D0置位/复位选择:

1=置位0=复位29河南科技大学电子信息工程学院计算机接口技术例2:若把C口的PC2管脚置成高电平输出,则控制字为:

00000101B(05H)程序段为:

MOVDX,303H;假设8255A控制口地址303HMOVAL,05H;使PC2=1的控制字

OUTDX,AL;送到控制口如果要使管脚PC3输出低电位,则控制字为:

00000110B(06H)程序段为:

MOVDX,303H;假设8255A控制口地址303H

MOVAL,06H;使PC3=0的控制字

OUTDX,AL;送到控制口30河南科技大学电子信息工程学院计算机接口技术例3:在某个外设接口电路中,8255A的C口为输出,控制8个继电器,设C口的I/O线为1时,表示继电器闭合,为0时,表示继电器断开。现要求某个继电器闭合,如PC2对应的继电器闭合,其他继电器状态不变,如何实现?

方案1:程序段为:

INAL,42H;假设8255A的C口地址42H,读取C口的信息

ORAL,00000100H;设置PC2=1,其他位不变

OUT42H,AL;送到C口方案2:直接对PC2进行置位,则控制字为:

00000101B(05H)程序段为:

MOVAL,05H;使PC2=1的控制字

OUT43H,AL;假设8255A的控制口地址43H31河南科技大学电子信息工程学院计算机接口技术3.读入状态字

当8255A由程序设定在方式1或方式2工作时,C口就根据不同的情况,产生或接收“联络”信号。如果这时我们对C口进行读操作,则读出的内容就包含两部分内容,一部分是那些作为I/O线上的内容,另一部分是与“联络”状态有关的内容。方式1的输入状态字:

32河南科技大学电子信息工程学院计算机接口技术方式1的输出状态字:

方式2的状态字:

33河南科技大学电子信息工程学院计算机接口技术五、8255A工作方式的功能及其应用举例1)方式0—基本输入/输出方式方式0主要适合于无条件传送方式,A口、B口、C口在无条件方式下,作为数据输入或输出端口时,不需要应答联络信号。

C口可作为两个4位的输入/输出端口,也可作为8位的输入/输出端口;各个端口的输入、输出,有16种组合。34河南科技大学电子信息工程学院计算机接口技术

例:8255A的A口和B口工作在方式0下,A口为输入口,接有4个开关,B口为输出口,接有一个七段发光二极管,连接电路如下图所示。编写一个程序,要求发光二极管显示开关所拨通的数字。1001X00XB10010000B(90H)A口地址:8020HB口地址:8022HC口地址:8024H控制口地址:8026H35河南科技大学电子信息工程学院计算机接口技术abdcefgdpabdcefgdpD7D6D5D4D3D2D1D0

dpgfedcba0(3FH)00111111abdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdp9(6FH)011011111(06H)000001102(5BH)010110113(4FH)010011114(66H)011001105(6DH)011011016(7DH)011111017(07H)000001118(7FH)0111111136河南科技大学电子信息工程学院计算机接口技术由图可知,七段发光二极管为共阳极LED。要让a段点亮,要求从PB0输出高电平“1”;要使b段熄灭,要求从PB1输出高电平“0”,其余各段依此类推。

A口接开关,4位开关的组合可为0000~1111(0H~FH)。可在LED上显示0H~FH各字符的段码列表,如下图所示:37河南科技大学电子信息工程学院计算机接口技术A_PORTEQU8020H;定义端口的符号地址B_PORTEQU8022HC_PORTEQU8024HCTRL_PORTEQU8026HDATASEGMENT;定义数据段TAB1DB3FH,06H,5BH,4FH,…,71H;定义段码表DATAENDS

源程序如下:

38河南科技大学电子信息工程学院计算机接口技术CODESEGMENT;定义代码段

ASSUMEDS:DATA,CS:CODESTART:MOVAX,DATAMOVDS,AXMOVAL,90H

;设置8255A方式字

MOVDX,CTRL_PORTOUTDX,AL

39河南科技大学电子信息工程学院计算机接口技术ADD1:MOVDX,A_PORTINAL,DX;读A口开关状态

ANDAL,0FH;屏蔽高4位

MOVBX,OFFSETTAB1;段码表起始地址送BXXLAT;查表得段码

MOVDX,B_PORT;输出显示

OUTDX,ALMOVCX,0600HADD2:LOOPADD2;循环延时

JMPADD1CODEENDSENDSTART40河南科技大学电子信息工程学院计算机接口技术2)方式1—选通输入/输出方式

利用一组选通信号来控制A口和B口的数据输入输出。特点:

A、B口均可工作在方式1下,可分别作为输入或输出口,C口分为两部分,其部分位(6位)固定用作A口、B口的选通信号。

C口的剩余位仍可作数据线使用。

A口、B口在作为输入和输出口时的选通信号不同。方式1的应用:主要用于中断传送方式下数据的输入输出,也可用于条件传送方式下数据的输入输出。说明:C口除部分位用作选通信号外,其余位(2位)可工作在方式0下,作为输入或输出线,用程序指定其数据传送方向。41计算机接口技术PC4PC5PC3PA7~PA0INTEAIBFAINTRASTBAPC6PC7RD(1)选通输入方式

(A口)PC4置1,INTEA

=1,A口处于中断允许状态,当STBA=1,IBFA=1时,INTRA有效,向CPU申请中断。PC4复位,INTEA

=0,A口处于中断屏蔽状态,INTRA无效。A口的选通信号,外设发出,有效时,表示外设把数据送入A口的输入缓冲器。A口的输入缓冲器“满”信号,8255A发出,有效时,表示A口的输入缓冲器已暂存一个有效数据。A口的中断请求信号,8255A发出,有效时,表示A口向CPU发出中断请求信号,请求CPU从A口取数据。中断允许信号I/O10111/0D7D6D5D4D3D2D1D0方式1PC7、PC61=输入0=输出端口A输入42计算机接口技术PC2PC1PC0PB7~PB0INTEBIBFBINTRBSTBBRD(1)选通输入方式

(B口)PC2置1,INTEB

=1,B口处于中断允许状态,当STBB=1,IBFB=1时,INTRB有效,向CPU申请中断。PC2复位,INTEB

=0,B口处于中断屏蔽状态,INTRB无效。B口的选通信号,外设发出,有效时,表示外设把数据送入B口的输入缓冲器。B口的输入缓冲器“满”信号,8255A发出,有效时,表示B口的输入缓冲器已暂存一个有效数据。B口的中断请求信号,8255A发出,有效时,表示B口向CPU发出中断请求信号,请求CPU从B口取数据。中断允许信号端口B输入111

D7D6D5D4D3D2D1D0方式143河南科技大学电子信息工程学院计算机接口技术选通输入方式有关信号规定:STB(Strobe):选通信号,低电平有效。外设

8255A有效时,表示外设把一个新的数据送到输入缓冲器。IBF(InputBufferFull):输入缓冲器“满”信号,高电平有效。

8255A

外设有效时,表示输入缓冲器已暂存一个有效数据。

STB使IBF有效,RD的后沿即上升沿使其变为低电平,无效。44河南科技大学电子信息工程学院计算机接口技术INTE(InterruptEnable):中断允许信号,高电平有效。控制中断的允许和屏蔽。可通过对C口的PC4、PC2置位/复位来实现对INTE的设置。INTR(InterruptRequest):中断请求信号,高电平有效。

8255ACPU用于向CPU提出中断请求,请求CPU读取外设输入的数据。STB、IBF均为高电平时,使INTR有效,RD的下降沿使INTR变为低电平,无效。45河南科技大学电子信息工程学院计算机接口技术

PC4位用来设置A口中断允许和屏蔽,与PC4引脚的输入信号STBA无关,由内部电路决定,对PC4的置位、复位不影响STBA信号。

即对PC4置位,使得INTEA=1不等于把STBA置为高电平;

外设使STBA=0也不等于使INTEA=0。PC2用来设置B口中断允许和屏蔽,与外设来的STBB信号无关。注意啦!!!46计算机接口技术方式1的输入时序:(PB7~PB0)外设送来数据PA7~PA0STBIBFINTRRD②③当INTE=1时

①①当外设准备好数据,将数据送到A口(B口)的数据线PA7~PA0(PB7~PB0)上②

外设发出选通信号STB

表示数据已进入输入缓冲器;使IBF变高,表示输入缓冲器满,可阻止外设输入新数据,CPU可查询

IBF信号,用于条件查询传送方式;

如果INTE=1,STB的上升沿使INTR变高,发出中断请求。③CPU执行IN指令,发出RD信号,读取数据

RD的下降沿使INTR无效,降为低电平;

RD的上升沿使IBF无效,降为低电平;端口内的数据进入CPU47河南科技大学电子信息工程学院计算机接口技术例1:8255A端口A工作在方式1,A口为输入,允许A口中断,试编写初始化程序。方式控制字:1011××××BC口置位/复位控制字:00001001B初始化程序段如下:

MOVDX,308H;控制口地址308H送入DXMOVAL,10110000B;A口方式1、输入

OUTDX,ALMOVAL,00001001B;置PC4=1,允许中断

OUTDX,AL48河南科技大学电子信息工程学院计算机接口技术例2:8255A的A口和B口分别工作在方式1和方式0,A口为输入口,接有8个开关。B口为输出口,接8个发光二极管,连接电路如图所示。现要求用方式1把改变后的开关信息输入到CPU并通过B口显示。工作过程如下:

1、用户改变K0~K7,产生新的开关信息;

2、闭合开关K,产生选通信号STBA,数据进入A口的输入缓冲器,告诉CPU,8255的A口来了一个新数据;3、IBFA有效,使LED点亮。包含两个信息,一个是8255A通知CPU其A口来了一个新数据,另一个是告诉用户CPU尚未取走这个这个数据,用户不得再送其他数据;4、CPU取走这个数据,LED熄灭;

5、转步骤1。49河南科技大学电子信息工程学院计算机接口技术设8255A的I/O地址为88H~8EH。程序段如下:

MOVAL,10111001B;设置A口为方式1、输入

OUT8EH,AL LOOP1:INAL,8CH;读取C口的状态线

TESTAL,00100000B;测试IBFA信息

JZLOOP1;等待用户设定新的开关值

MOVCX,0FFFFH ;延时,LED灯亮 LOOP2:LOOPLOOP2 INAL,88H;取数,LED灯灭

OUT8AH,AL;更新B口的显示

JMPLOOP1;重复50计算机接口技术PC6PC7PC3PA7~PA0INTEAOBFAINTRAACKAWR(2)选通输出方式

(A口)外设响应信号,外设发出,有效时,表示外设已经接收数据。A口的输出缓冲器“满”信号,8255A发出,有效时,表示A口的输出缓冲器已暂存一个有效数据。A口的中断请求信号,8255A发出,有效时,表示A口向CPU发出中断请求,请求CPU输出数据到A口。中断允许信号PC6置1,INTEA=1(不等于ACKA=1),A口处于中断允许状态;PC6复位,INTEA

=0(不等于ACKA=0),A口处于中断屏蔽状态,INTRA无效。51计算机接口技术PC2PC1PC0PB7~PB0INTEBOBFBINTRBACKBWR(2)选通输出方式

(B口)中断允许信号PC2置1,INTEB=1(不等于ACKB=1),B口处于中断允许状态;PC2复位,INTEB

=0(不等于ACKB=0),B口处于中断屏蔽状态,INTRB无效。外设响应信号,外设发出,有效时,表示外设已经接收数据。B口的输出缓冲器“满”信号,8255A发出,有效时,表示B口的输出缓冲器已暂存一个有效数据。B口的中断请求信号,8255A发出,有效时,表示B口向CPU发出中断请求,请求CPU输出数据到B口。52河南科技大学电子信息工程学院计算机接口技术选通输出方式有关信号规定:OBF(OutputBufferFull):输出缓冲器“满”信号,低电平有效。8255A

外设有效时,表示CPU已向端口输出了数据,即输出缓冲器已暂存一个有效数据,OBF是8255A用来通知外设取走数据的信号。OBF由写信号WR的上升沿置成有效电平即低电平,而由ACK

的下降沿使其变为高电平。

ACK(Acknowledge):外设响应信号,低电平有效。

外设

8255A有效时,表示CPU通过8255A输出的数据已送到外设,即外设已接收到了数据。53河南科技大学电子信息工程学院计算机接口技术INTE(InterruptEnable):中断允许信号,高电平有效。控制端口中断的允许和屏蔽。可通过对C口的PC6、PC2置位/复位来实现对INTE的设置。

PC6=1(PC2=1),A口(B口)处于中断允许状态;

PC6=0(PC2=0),A口(B口)处于中断屏蔽状态。INTR(InterruptRequest):中断请求信号,高电平有效。

8255ACPU当外设从8255A端口取走数据,从而发出ACK信号后,8255A便向CPU发出中断请求信号,要求CPU再次输出数据。ACK、OBF均为高电平时,使INTR有效,WR的下降沿使INTR

变为低电平。54河南科技大学电子信息工程学院计算机接口技术方式1的输出时序:①CPU执行OUT指令,输出数据②CPU发出写信号WR(1)数据写到8255A的端口;(2)使OBF有效,表示输出端口满,通知外设取数据;(3)

清除中断请求信号INTR。③

外设接收到数据后,发出ACK信号

(1)ACK的下降沿使OBF变高;

(2)当INTE=1,ACK的上降沿使INTR变高,发出中断请求,请求CPU输出新的数据。55河南科技大学电子信息工程学院计算机接口技术例3:如果8255A的A口、B口工作于方式1,A口为输出,B口为输入,A口、B口都允许中断,A口、B口、C口和控制端口的端口地址分别为:288H、289H、28AH和28BH,编写初始化程序。解:方式控制字为:10100110B(0A6H)

D7=1方式控制字标志位

D6D5=01A口工作于方式1D4=0A口为输出

D3=0可为0或1,取0D2=1B口工作于方式1D1=1B口为输入

D0=0可为0或1,取056河南科技大学电子信息工程学院计算机接口技术A口允许中断,要求INTEA=1,即要对PC6置1。C口置位/复位控制字为:00001101B(0DH)B口允许中断,要求INTEB=1,即要对PC2置1。C口置位/复位控制字为:00000101B(05H)57河南科技大学电子信息工程学院计算机接口技术初始化程序:MOVDX,28BHMOVAL,0A6HOUTDX,AL;方式控制字写入控制端口MOVAL,0DHOUTDX,AL;C口置位/复位控制字写入控制端口使PC6置1MOVAL,05HOUTDX,AL;C口置位/复位控制字写入控制端口使PC6置158河南科技大学电子信息工程学院计算机接口技术例4:8255A的A口工作在方式1,输出,接有8个发光二极管,现要求把内存中的10个数通过A口发送给发光二极管(以二进制的形式供用户抄录),设8255A的I/O地址为88H~8EH。工作过程如下:CPU把内存中的一个数据写入A口;OBF有效,LED灯亮,告诉用户LED0—LED7显示的是新数据;用户抄录数据;用户按下开关K,发ACK信号,告诉8255A数据已取走;转第一步。59河南科技大学电子信息工程学院计算机接口技术程序段如下:DATASEGMENT;定义数据段XXDBX0,X1,…,X9;定义数组,10个元素DATAENDSCODE

SEGMENT;定义代码段

ASSUMEDS:DATA,CS:CODESTART:MOVAX,DATAMOVDS,AXMOVCX,10;送10个数

MOVBX,OFFSETXX;数组起始地址送BXMOVAL,10101001B

;设置A口为方式1、输出

OUT8EH,AL60河南科技大学电子信息工程学院计算机接口技术LOOP1:MOVAX,[BX];取数据

OUT88H,AL;送数据到A口LOOP2:INAL,8CH;读取C口状态线

ANDAL,80H;测试OBFA是否有效JNZLOOP2;用户尚未抄录数据等待,此时LED灯亮

CALLDELAY;用户已抄录数据,LED灯灭

INCBX;准备送下一个数

LOOPLOOP1;循环10次

MOVAX,4C00HINT21H;返回系统CODEENDSENDSTART61河南科技大学电子信息工程学院计算机接口技术3)方式2—双向传输方式特点:双向传输—既是输入口,又是输出口,但输入输出不能同时进行。只有A口可工作在方式2下,类似于A口方式1下输入和输出的组合,工作时输入、输出都能锁存。

A口工作在方式2时,C口的5位提供联络信号。

A口工作在方式2时,B口可工作在方式0或方式1。应用:可用于中断控制输入输出方式,也可用于查询方式。当A口工作于方式2时,B口可工作于

温馨提示

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

评论

0/150

提交评论