模拟电子技术(高频)第九章 8255_第1页
模拟电子技术(高频)第九章 8255_第2页
模拟电子技术(高频)第九章 8255_第3页
模拟电子技术(高频)第九章 8255_第4页
模拟电子技术(高频)第九章 8255_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

第九章并行接口与串行接口

7-197-27-39.3基本功能可提供两个8位(A口、B口)和两个4位(C口上半部、C口下半部)共24位的并行I/O数据端口线。8255可支持三种并行工作方式:基本输入输出(方式0);

应答式输入输出(方式1);

应答式双向数据传送(方式2)。可以通过编程设定:A口工作于方式0、方式1和方式2;B口工作于方式0和方式1。无论8255工作在哪种方式,,A口、B口都是作为8位数据I/O端口用。C口各位的功能因工作方式的不同而有很大差别。7-49.3.1内部结构与引脚功能与外设接口部分与MPU接口部分内部控制部分由三大部分组成D0-D7

双向数据总线读写控制逻辑RDWRA1A0RESETCSC口(高4位)C口(低4位)I/OPA7-PA0I/OPC7-PC4I/OPC3-PC0I/OPB7-PB08255内部结构A口(8位)B口(8位)A组控制部件B组控制部件数据总线缓冲器8位内总线7-57-6A口寄存器(PA7~PA0)C口寄存器(PC7~PC0)B口寄存器(PB7~PB0)高4位(PC7~PC4)低4位(PC3~PC0)与外设相连说明:

8255有三种基本的工作方式,可通过编程来选择。分为A、B、C三个8位端口寄存器:

A口、B口只能用作数据I/O口,C口各位的功能却因工作方式的不同有很大差别,有时是I/O数据端口线,有时又是A口、B口数据传送的应答控制线。

C口作为数据端口用时,各位可以按位操作。1.与外设接口部分7-7这是所有可编程接口芯片都具有的,主要用于保证微处理器对芯片的编程、监视和提供数据通道。这部分包括如下外部引脚:

RESET(复位)

A0、A1(端口选择)

CS(片选)

RD、WR(读/写控制)D7~D0CPU数据线CPU复位线直连/经反向器相连直连CPU低位地址线(A0、A1)高位地址线(A2以上)CPU控制线产生的读写信号直连译码相连直连2.与微处理器接口部分7-8

A组控制端口A和C口上半部

B组控制端口B和C口下半部实际上它们是同一个8位控制寄存器:

A组为高5位

B组为低3位

——A组和B组控制部件,它们根据CPU送来的控制字控制8255的工作方式和输入/输出状态,也可以根据CPU写入的控制字对C口的每一位实现按位置“1”或置“0”控制。其中:3.内部控制部分7-99.3.2端口寻址与读/写控制

00100

数据总线

A口

01100

数据总线

B口

10100

数据总线

C口

11100

数据总线

控制寄存器

00010

A口

数据总线

01010

B口

数据总线

10010

C口

数据总线

××××1端口输出为”高阻”

11010非法

××110端口输出为”高阻”

A1A0RD

WR

CS

操作输入输出禁止

8255内部共有A口、B口、C口和控制口4个端口寄存器,对他们的寻址和读/写操作是由CS、A1、A0和RD、WR几个信号来控制的。

7-109.3.4控制字格式与编程

8255的初始化编程,是指向控制寄存器写入相应的控制字以确定8255的工作方式和接口功能,简称初始化。它的基础是根据应用需要正确确定控制字,包括:

工作方式控制字:

C口按位置位/复位控制字:决定各端口工作方式和I/O状态。将C口的任一位置1或置0。两种控制字的区别是D7位:

1-》工作方式;0-》置位。送同样地址,控制寄存器。7-11D7D6D5D4D3D2D1D01.工作方式控制字A,B为一个整体;C高低两口为整体。1C口低4位C口高4位7-12D7D6D5D4D3D2D1D00C口的位选择位D3D2D1置位复位置位复位10说明:

(1)C口的按位置位/复位操作一次只能使C口的1位置“1”或置“0”。

(2)如果要在某位上输出一个开关量信号,对该位的置“1”置“0”操作必须成对使用。

(3)C口按位置位/复位控制字不是送到C口地址,而是送到控制寄存器地址。2.C口按位置位/复位控制字7-139.3.3三种工作方式地址总线数据总线控制总线方式0RDWRD7~D0CSA0A1B口C口A口I/OI/OI/OI/OPB7~PB0PC3~PC0PC7~PC4PA7~PA0基本I/O方式B组A组方式1B口C口C口A口I/OPB7~PB0PA7~PA0控制应答式I/O方式控制方式2B口C口C口A口I/OPB7~PB0PA7~PA0A口控制应答式双向I/O方式I/O双向7-141.方式0:基本I/O方式

方式0的无条件传送

方式0的C口位操作

方式0的应答式工作

A、B、C三个端口均为数据I/O口,其中A口、B口、C口高4位、C口低4位可通过编程选择分别工作于输入或输出状态。没有固定的应答线,不使用中断。

7-15例7.5

用8255实现的开关输入和显示输出接口。

1.方式0

无条件传送

C口位操作

应答式工作

只要RD或WR信号一变低,就进行数据传送,不管此时数据是否稳定。

方式0的无条件传送7-16

1.方式0

无条件传送

C口位操作

应答式工作(a)硬件连接A口B口C口8255LED显示逻辑开关逻辑开关WRLED显示D7D6D0RDA0A1PA7PA4PA3PA0PC7PC0PB7PB3PB0D7D6D0A0A1译码A2~Ai-1CSPB4

IORIOW结果输出到A口

(b)软件启动8255初始化数据处理从B口输入数据7-17

可用C口的按位置位/复位功能来产生脉冲,用作门控、选通、复位等。

例7.6

以微处理器和8255为核心组成的数字频率计

1.方式0

无条件传送

C口位操作

应答式工作

方式0的C口位操作7-188255组成的脉冲频率计数器将8255设置为方式0:A口输出,B口输入,C口输出从PC0输出一复位脉冲(),使计数器清0从PC7输出一宽度为1s的正脉冲(),控制采样

从A口输出显示结果

从B口输入计数值

启动显示显示HGFEDCBADCBADCBABINBINAINAIN

Ai-1

A2~A1A0A1A0IORIOWRDWRRESETD7~D0CSPA7PA4PA3PA0PB7PB4PB3PB0PC7PC0~~~~时钟&R01R02R01R0274937493&译码器D7D0~8255方式017-19

这时一般以A口、B口作为I/O数据通道,而用C口作为应答的控制和状态信息通道。

应答线依靠程序设定,如PC4~PC7之一作为外设选通线(STB),PC0~PC3之一作为外设准备就绪线(RDY)。注:方式1,2需要对C口规定关联引脚位。

1.方式0

无条件传送

C口位操作

应答式工作

方式0的应答式工作7-202.方式1:应答式I/O方式

A、B口为数据I/O口,C口的高5位和低3位分别作为A、B口的控制/状态口。可用中断式应答,也可用查询式应答。方式1是一种带选通信号的单方向输入/输出工作方式,其特点是:与外设传送数据时,需要联络信号进行协调,允许用查询或中断方式传送数据。

7-21

方式1的输入2.方式1

输入

输出

状态字

接口方法D7D6D5D4D3D2D1D01PC6,71=输入0=输出令PC4=1,使INTEA=1A口控制字1/0011RD&PC3A口PA7~PA0INTEAPC4PC5STBAIBFAINTRAI/OPC6、7RD&PC0B口PB7~PB0INTEBPC2PC1STBBIBFBINTRB111令PC2=1,使INTEB=1B口控制字D7D6D5D4D3D2D1D0外设外设7-222.方式1

输入

输出

状态字

接口方法外设引发输入开始表示有数据可以读入MPU,外设可以准备下次输入数据。提供查询信号外设数据已经准备就绪4,可引发中断数据读入MPU外设可以重新发数据。锁存数据到A或B口7-23D7D6D5D4D3D2D1D01PC4,51=输入0=输出令PC6=1,使INTEA=1A口控制字1/0001101令PC2=1,使INTEB=1B口控制字D7D6D5D4D3D2D1D02.方式1

输入

输出

状态字

接口方法WR&PC3A口PA7~PA0INTEAPC7PC6OBFAACKAINTRAI/OPC4、5WR&PC0B口PB7~PB0INTEBPC1PC2OBFBACKBINTRB

方式1的输出外设外设7-242.方式1

输入

输出

状态字

接口方法中断引发进入中断程序执行输出指令数据锁存8255端口数据已经锁存到接口,主机不能再送数据,外设可以取数据外设已经收到数据引发新的中断输出缓冲位空,查询方式可以写7-25

方式1的状态字

通过读C口,可获得状态字,从中查询I/O设备状态(是否IBF=1或OBF=0)。2.方式1

输入

输出

状态字

接口方法D7D6D5D4D3D2D1D0A组状态B组状态输入口输入口I/OI/OIBFAINTEAINTRAINTEBIBFBINTRB输出口输出口OBFAINTEAI/OINTRAINTEBINTRBOBFBD7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0C口I/O7-26

方式1的接口方法

中断驱动式接口方式1接口时,首先要根据应用的具体要求确定A口和B口是输入还是输出,然后把C口的应答线与外设的控制、状态线相连。具体又可采用:

程序查询式接口2.方式1

输入

输出

状态字

接口方法7-272.方式1

输入

输出

状态字

接口方法此例,INTRA、INTRB分别接至微机中不同级别中断请求线上(采用向量式中断识别与判优)WRPC1PA7~PA0PC4PC5OBFBACKBINTRAI/OPC6、7PC3PC2PC0A1A0RESETRESETA1A0IRQiIRQjINTRBPB7~PB0RDD7~D0D7~D0IOWIORA2~Ai-1译码8255CSSTBIBFI/O方式1中断驱动式接口举例7-28

INTRA、INTRB也可通过一或门接至同一中断请求线上,这时就要采用查询式中断识别与判优方法。处理流程如下:IRQi中断处理程序从C口读方式1状态字INTRB=1INTRA=1非法中断,进行出错处理返回通道B服务程序返回通道A服务程序返回YYNN2.方式1

输入

输出

状态字

接口方法7-29将8255设置为方式1,且A口输出,B口输入IBFB=1?OBFA=0?从B口输入输出新数至A口YYNN存入给定地址从PC4形成SCXT脉冲()2.方式1

输入

输出

状态字

接口方法

8255与控制台打字机接口PC1PA7~0PC7PC6OBFAACKAINTRASTBBPC4PC3PC0INTRBSCXTPC2IBFB打字机输出打字机输入8255方式1PB7~0方式1程序查询式接口举例7-30要求:K3K2K1=000时,LED1亮,K3K2K1=001时,LED2亮

K3K2K1=010时,LED3亮,K3K2K1=011时,LED4亮

K3K2K1=100时,LED5亮,K3K2K1=101时,LED6亮

K3K2K1=110时,LED7亮,K3K2K1=111时,LED8亮例

如图所示为一开关检测和指示电路。现要求利用自复按钮K产生选通脉冲,来启动开关状态检测。再用发光二极管LEDi亮,来显示K3~K1的状态。+5V

A1

A0

与口地址译码218H

PC5

单脉冲发生器

IBFAINTRAA1A0LED1K1K3LED8自复按钮K8255INTEK2LED7PC3PB7PB6PB0PA2PA1PA0PC4CSSTBA7-31;A口218H;B:219;C:21AH;控制:21BH.DATAMESGDB‘8255READY……’DB0DH,0AH,‘$’

TABDB11111110B,11111101BDB11111011B,11110111BDB11101111B,11011111BDB10111111B,01111111B.CODESTART:MOVAX,DATAMOVDS,AX MOVDX,21BH MOVAL,10110000H;A口方式1输入、B口方式1输出

OUTDX,AL MOVAL,08H;使PC4=0

;地址不变,

OUTDX,AL;INTE关

MOVAH,9 MOVDX,OFFSETMESGINT21H SCAN:MOVAH,1;有键按? INT16H JNZBACK;有,结束

MOVDX,21AH;输入A口方

INAL,DX ;式1状态字

TESTAL,20H;有数据输入?

;即IBFA=1?JZSCANMOVDX,218HINAL,DXMOVBX,OFFSETTABANDAL,07HXLATINCDX;219H

OUTDX,AL;B口显示

JMPSCANBACK:MOVAH,4CH INT21HENDSTART7-323.方式2—应答式双向数据传送方式

在这种方式下,A口为双向数据传送端口,C口的高5位(PC7~PC3)作为相应的应答控制线;B口和C口余下的低3位(PC2~PC0)可工作于方式0或方式1。

方式2的接口功能

方式2的状态字

方式2的接口方法

应用举例7-33

3.方式2

接口功能

状态字

接口方法

应用举例WRRDPA7~PA0≥&&INTE2INTE1PC5PC4PC6PC7PC3PC2~PC0INTRAACKAOBFASTBAIBFAI/OI/O31=方式1D7控制字D6D2D1D0111/01/01/0PC2~01=输入0=输出通道B1=输入0=输出B组方式0=方式0D5D4D37-34

3.方式2

接口功能

状态字

接口方法

应用举例B组状态A组状态(方式2)D7D6D5D4D3D2D1D0D7D6D5D4D3I/OI/OI/OD2

温馨提示

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

评论

0/150

提交评论