【微机原理】第8章输入输出接口II-8255
输入输出接口8255
表示A口已经接收数据
PC2
中断允许触发器
中断请求信号 请求CPU接收数据
方式1输入联络信号
STB*——选通信号,低电平有效 由外设提供的输入信号,当其有效时,将输 入设备送来的数据锁存至8255A的输入锁存器 IBF——输入缓冲器满信号,高电平有效 8255A输出的联络信号。当其有效时,表示数 据已锁存在输入锁存器 INTR——中断请求信号,高电平有效 8255A输出的信号,可用于向CPU提出中断请 求,要求CPU读取外设数据
号的接口电路。 在此例中将8255A设置为:A口输出,B口输入,C口高4 位输入(现仅用PC7、PC6两位输入外设的状态),C口低 4位输出(现仅用PC1、PC0两位输出选通及清除信号)。
此时8255A的工作方式控制字为10001010B(8AH)。
A口 PC 1 PC 7 8255A PC 6 PC 0 B口 选通 准备好
第七章 可编程接口芯片
可编程接口概术 可编程并行输入/输出接口芯片8255A
可编程接口概术 一个简单的具有输入功能和输出功能的 可编程接口电路如下图,它包括一个输入接口, 其组成主要是八位的三态门;一个输出接口, 其组成主要是八位的锁存器;另外还有八位的 多路转换~ A1地址线 WR*写信号 RESET复位信号
写操作 WR* 写端口A 写端口B 写端口C 写控制字
读端口A 读端口B 读端口C 非法
8255A端口选择及操作功能表
D0…D7
A0 A1 /CS /WR /RD RESET
三、8255A的控制字 8255A可以通过指令在控制端口中设置控制
7.1 可编程并行输入/输出接口芯片 8255A
微机原理8255的应用
微机原理8255的应用1. 简介本文档将介绍微机原理中的8255芯片的应用及其相关知识。
8255是一款常用的并行输入输出(PIO)芯片,广泛应用于微机原理的实验和应用中。
本文将从以下几个方面进行介绍:1.8255芯片的功能及特点2.8255芯片的引脚功能3.8255芯片的工作原理4.8255芯片的应用案例2. 8255芯片的功能及特点8255芯片是一种通用的并行输入输出接口芯片,可以提供多种不同的I/O操作模式。
其主要功能如下:•提供三个8位的I/O端口A、B和C,可以通过编程定义其为输入或输出端口。
•支持模式0、模式1和模式2三种工作模式,可以通过编程控制选择不同的模式。
•可以通过编程设置端口的工作模式和数据传输方式。
•可以通过编程控制和操作I/O端口的数据。
8255芯片的主要特点如下:•低功耗设计,适合在嵌入式系统中使用。
•高可靠性和稳定性,能够在不同环境下正常工作。
•兼容性强,可以与多种微处理器和控制器连接使用。
3. 8255芯片的引脚功能8255芯片共有40个引脚,每个引脚的功能如下:•一号引脚(VCC):芯片的供电电源。
•二号引脚(GND):芯片的接地引脚。
•三号引脚(A0)至四号引脚(A1):用于编程选择工作模式。
•五号引脚(CS):芯片的片选引脚,通过将其接地来选择芯片。
•六号引脚(RD):读取端口数据的引脚。
•七号引脚(WR):写入端口数据的引脚。
•八号引脚(RESET):芯片的复位引脚。
•九号引脚至十六号引脚(PA0至PA7):端口A的数据线。
•十七号引脚至二十四引脚(PB0至PB7):端口B的数据线。
•二十五号引脚至三十二号引脚(PC0至PC7):端口C的数据线。
4. 8255芯片的工作原理8255芯片是通过控制寄存器对其进行编程来实现不同功能的。
通过编程控制控制寄存器的值,可以选择端口的工作模式、数据传输方式等。
8255芯片的工作原理如下:1.初始化8255芯片,设置控制寄存器的值。
微机实验 可编程并行接口8255
微机原理实验报告实验题目:可编程并行接口8255一、实验目的1、掌握8255的基本输入输出和PC端口位控的工作方式及应用编程。
2、掌握8255的典型应用电路接法。
二、实验知识回顾8255控制字1、控制方式2、C端口置位复位控制字三、实验内容1、 8255流水灯显示,首先用逻辑电平开关预置一个数字,从A口读入,写入01H到C端口上,左移一次在进行输出,A口读入数据作为左移次数,这样循环下去,从而实现流水灯的显示。
2、用PC端口位控制法控制LED灯,依次点亮LED灯。
四、实验器材微机原理实验箱1个电脑(带TPC-USB软件)1台插线若干五、实现过程1、8255流水灯显示(1)流程图(2)程序源代码io8255a equ 2a0h ;8255A口地址io8255b equ 2a1h ;8255B口地址io8255c equ 2a2h ;8255C口地址io8255mode equ 2a3h ;控制寄存器地址stack1 segment stackdw 256 dup(?)stack1 endsdata segmentla db ? ;定义数据变量lb db ?data endscode segmentassume cs:code,ds:datastart:mov ax,data ;程序由start处开始mov ds,axmov dx,io8255mode ;定义8255的工作方式mov al,90h ;方式0A口输入C口输出out dx,al ;mov dx,io8255a ;A口的地址存入dxin al,dx ;从dx也就是A口读入数据mov la,al ;读入的数据暂存在la变量mov dx,io8255c ;C口的地址存入dxmov al,01h ;将寄存器最低位置零out dx,al ;置位后的值输入给dx,也就是C口mov lb,al ;置位后的值暂存于变量lbloop1:call delaymov al,la ;将A口数据写入CX用以计数mov ch,00hmov cl,laloop2:call delaymov al,lbrol al,1 ;在寄存器内进行位移操作mov lb,al ;将操作后的结果重新写入变量al,为后面调用做准备mov dx,io8255c ;dx代表C口的地址out dx,al ;将al中存储的值写入dx,即C口mov ah,1 ;选择dos的模式为从键盘读取数据int 16h ;进入中断jnz quit ;ZF为0则跳到quitdec cx ;计数器减一jnz loop2 ;若cx!=0,跳到loop2quit:mov ax,4c00h ;结束程序并退出int 21hdelay proc near ;延时子程序push cxpush axmov cx,01fhd1: mov ax,0ffffhd2: dec axjnz d2loop d1pop axpop cxretdelay endpcode endsend start2、位控设置C口输出点亮LED(1)流程图(2)程序源代码io8255a equ 2a0h ;8255A口地址io8255b equ 2a1h ;8255B口地址io8255c equ 2a2h ;8255C口地址io8255mode equ 2a3h ;控制寄存器地址stack1 segment stackdw 256 dup(?)stack1 endsdata segmentla db ? ;定义数据变量lb db ?data endscode segmentassume cs:code,ds:datastart:mov ax,data ;程序由start处开始mov ds,axmov dx,io8255mode ;定义8255的工作方式mov al,00001111b ;位控设置C口最高位为1out dx,almov cx,7 ;剩余未点亮灯数为7 loop1:call delaydec aldec alout dx,aldec cxjnz loop1delay proc near ;延时子程序push cxpush axmov cx,01fhd1: mov ax,0ffffhd2: dec axjnz d2loop d1pop axpop cxretdelay endpcode endsend start(3)实验结果图六、小结通过本次试验,我进一步了解了8255的可编程性,以及如何正确的通过程序控制8255,也更加熟悉了8255 C 端口的位控输出。
微机原理与接口技术82558253初始化编程原
微机原理与接口技术8255 8253初始化编程原微机原理与接口技术--8255|8253初始化编程原理解析000微机原理与接口技术研究方向:指令数据在计算机中是如何传输的;(1)控制总线(2)地址总线(3)数据总线在计算机中要研究数据是如何传输的,就是知道计算机是如何寻址的(地址译码)、CPU与外设是如何进行数据交互的、CPU中的控制器是如何控制外设进行数据传输的;一、8253芯片74LS138芯片的工作原理:当一个选通端(G1)为高电平,另外选通端G2A、G2B为低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端一低电平译出;(1)8253与8086CPU的连接方式注意:z如果8253与8位数据总线的微机相连,只要将A1A0分别与地址总线的最低两位A1A0相连即可。
z如果系统采用的是8086CPU,则数据总线为16位。
CPU在传送数据时,总是将低8位数据送往偶地址端口,将高8位数据送到奇地址端口。
偶地址端口的数据总是通过低8位数据总线送到CPU,奇地址端口的数据总是通过高8位数据总线送到CPU。
当仅具有8位数据总线的存储器或I/O接口芯片与8086的16位数据总线相连时,既可以连到高8位数据总线,也可以接在低8位数据总线上。
在实际设计系统时,常将这些芯片的数据线D7~D0接到系统数据总线的低8位,这样,CPU就要求芯片内部的各个端口为偶地址(地址总线的A0=0)。
应改用地址总线中的A2A1实现端口选择,即将A2连到8253的A1引脚,而将A1与8253的A0引脚相连。
(如上如所示)例题解析:5.若8253的地址为:04H-07H,要使计数器2工作于方式2,按二进制计数,计数值为02F0H,写出初始化程序。
若要读取通道1的16位计数值,写出其程序。
(1)初始化程序的步骤二、初始化编程步骤和门控信号的功能1.8253的初始化编程步骤接通电源时,8253处于未定义状态,在使用之前,必须用程序把它们初始化为所需的特定模式,这个过程称为初始化编程。
微机原理8255
D3 0
D2 D1 D0 0 0 1
WR RD
关于端口地址: A7 A6 A5 A口: 1 1 0 B口: 1 1 0 C口: 1 1 0 控制口:1 1 0
A4 1 1 1 1
A3 0 0 0 0
A2 0 0 1 1
A1 0 1 0 1
A0 0 0 0 0
PP:
LPST:
MOV AL,81H ; 控制字,送8255A的控制口 OUT 0D6H,AL MOV AL,0DH ;用置1/置0方式使PC6为1。00001101 OUT 0D6H,AL IN AL,0D4H ;读端口C的值 AND AL,04H JNZ LPST ;PC2(打印机BUSY)是否为零,不为0,等待 MOV AL,CL OUT 0D0H,AL ;若不忙,将CL中的字符送端口A。 MOV AL,0CH ;用置1/置0方式使PC6为0: 00001100 OUT 0D6H,AL NOP NOP INC AL OUT 0D6H,AL ;用置1/置0方式使PC6为01:00001101
8.2.4 8255A的控制字 8255A 可以通过指令往控制端口中设置控制字来决定它的 工作方式 控制字分为两类:方式选择控制字和C端口按位置1/置0控 制字 1.方式选择控制字
写入方式控制字:示例
要求:
A端口:方式1输入 C端口上半部:输出,C口下半部:输入 B端口:方式0输出
方式控制字:10110001B或B1H 初始化的程序段: mov dx,0fffeh ;假设控制端口为FFFEH mov al,0b1h ;方式控制字 out dx,al ;送到控制端口
第8章:可编程通用接口芯片
教学重点
8255A的基本性能 8255A的内部机构和外部引脚 8255A的控制字 8255A的工作方式 8255A的应用
微机原理与接口技术-8255
CS A1 A0
000 001 010 011
I/O地址
60H 61H 62H 63H
读操作RD
读端口A 读端口B 读端口C
非法
接口芯片
写操作WR 写端口A 写端口B 写端口C 写控制字
四川微机大原学理与接卿口粼技波术 6
8255A的工作方式
接口芯片
• 方式0:基本输入输出方式
– 适用于无条件传送和查询方式的接口电路
PC1
接口芯片
数据选通信号 表示外设已经准备好数据
STBB 输入缓冲器满信号 IBFB 表示B口已经接收数据
PC0
中断允许触发器
INTRB
中断请求信号
请求CPU接收数据
四川微机大原学理与接卿口粼技波术 13
方式1输入联络信号
接口芯片
• STB——选通信号,低电平有效
– 由外设提供的输入信号;
– 当其有效时,将输入设备送来的数据保存 至8255A的输入缓冲器。
方式2 双向选通输入输出 查询、中断 输入、输出锁存
微机原理 8255输入
微机原理 8255输入、输出实验一、实验目的1、了解8255芯片结构及接口方式2、掌握8255输入、输出的编程方法二、实验说明了解用到的芯片引脚及功能:8255是可编程的并行输入/输出接口芯片,通用性强且使用灵活。
8255按功能可分为三个部分,即:总线接口电路,口电路和控制逻辑电路。
1、口电路:8255共有三个八位口,其中A 口和B 口是单纯的数据口,供数据I/O 口使用。
2、总线接口电路:它用于实现8255和单片机芯片的信号连接。
(1)CS ——片选信号。
(2)RD (3)WR(4)A0、A1——端口选择信号。
8255共有四个可寻址的端口,用二位编码可以实现。
3、控制逻辑电路:它是控制寄存器,用于存放各口的工作方式控制字。
本实验是利用8255可编程并行口芯片,实现数据的输入、输出。
可编程通用接口芯片8255A 有三个八位的并行的I/O 口,它有三种工作方式。
本实验采用的方式为0:PA 口输出,PB 口输入。
工作方式0是一种基本的输入输出方式。
在这种方式下,三个端口都可以由程序设置为输入或输出,其基本功能可概括如下:1、可具有两个八位端口(A 、B )和两个4位端口(C 口的上半部分和下半部)。
2、数据输出时可锁存,输入时没有锁存功能。
本实验中,8255的端口地址由单片机的P2.0、P2.1和P2.7控制。
控制口的地址为7FFFH ;A 口的地址为7CFFH ;B 口的地址为7DFFH ;C 口的地址为7EFFH 。
三、实验步骤实验 (一): PA 口作为输出口。
1、用8P 数据线连接单片机最小应用系统1模块的 P0口到8255I/O 扩展模块的D0~8255的引脚图74LS373的引脚图D7口,连接8255I/O扩展模块的PA0~PA7到八位逻辑电平显示模块的D0-D7口,用二号导线分别连接单片机最小应用系统1模块的P2.0、P2.1、P2.7、RD、WR到8255I/O扩展模块的A0、A1、CS、RD、WR,连接8255I/O扩展模块的RESET口到复位模块的复位口。
汇编输入输出与接口技术 8255
26
例1. 简单输入接口设计
2.检测一个开关的状态。若开关为闭合(0)状态,TEMP 单元为1;若开关为断开(1)状态,TEMP单元为0。(设端 口地址仅为380H)
硬件电路: 控制程序: TEMP DB 0
MOV DX,380H IN AL,DX AND AL,80H JZ ON MOV TEMP,0 JMP BAK MOV TEMP,1 ret
完成全部接口 控制操作
协调CPU与外设动作
匹配速度
3
一. 接口的基本概念
3.接口控制方式
①查询方式
中央处理器在数据传送之前通过接口的状态设置存 储电路询问外设,待外设允许传送数据后才传送数据。 CPU需要完成以下操作: CPU向接口发出传送命令,输入数据或输出数据; 中央处理器查询外设是否允许传送。 在查询方式下,中央处理器需要花费较多的时间去不 断地“询问” 外设,外设的接口电路处于被动状态。
端口地址译码部分
PC机的I/O端口地址译码仅使用了地址总线的低 10位,即只有地址线A9~A0用于I/O地址译码。
14
二. I/O指令和I/OAEN(地 址允许)参与译码。AEN=1, DMA控制三总线,进行DMA传 送; AEN=0开启译码器
A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 0 X
10
二. I/O指令和I/O地址译码
1.输入输出指令 (1)输入指令IN
IN ACC,PORT ;直接端口寻址。端口地址由指令
中的8位立即数指定,所以直接寻址地址为00H~ 0FFH,256个端口
IN ACC,DX;间接端口寻址。端口地址由DX内容
确定,即端口地址>0FFH时,应使用DX间址
第8章 8255
;使为 使为0 使为
NOP NOP LOOP AB HLT CODE ENDS ENDS START ; 使负脉冲有一定宽度
4 . 8255的寻址及连接使用 的寻址及连接使用 8255占外设编址的 个地址 即 A口 、 占外设编址的4个地址 占外设编址的 个地址,即 口 B口、C口和控制寄存器各占一个外设接 口 口和控制寄存器各占一个外设接 口地址。 口地址 。 对同一个地址分别可以进行读 写操作。 写操作。 根 据 这种 寻 址结 构 , 可以 方 便地 将 8255连接到系统总线上。 连接到系统总线上。 连接到系统总线上
图8.17 8255A与打印机连接电路图
要求:端口 作为传送字符的通道 作为传送字符的通道, 要求:端口A作为传送字符的通道,工作于 方式0输出;端口 也工作于方式 也工作于方式0。 方式 输出;端口C也工作于方式 。PC1作 输出 作 信号输入端, 为BUSY信号输入端,所以 信号输入端 所以PC3~PC0为输入 为输入 方式;PC6作为 作为STB信号输出端,所以 信号输出端, 方式; 作为 信号输出端 PC7~PC4为输出方式。 为输出方式。 为输出方式 的端口地址为: 设8255A的端口地址为: B4H~B7H 。 的端口地址为
图6.31 8255与打印机的另一种连接
下面就是对8255进行初始化的程序 进行初始化的程序: 下面就是对 进行初始化的程序 MOV DX,0383H MOV AL,10100000B OUT DX,AL
MOV AL,00001101B OUT DX,AL
小结 1扩展一片 扩展一片8255可增加 个口 口、B口、C 可增加4个口 扩展一片 可增加 个口,A口 口 口、控制口 2使用 使用8255必须将控制字送到控制口上,这 必须将控制字送到控制口上, 使用 必须将控制字送到控制口上 个过程叫做初始化。 个过程叫做初始化。 3掌握 掌握8255控制字的格式。 控制字的格式。 掌握 控制字的格式
第八章 输入输出接口8255A(8.1-8.3)
3、 数据总线缓冲器 8位的双向的三态缓冲器。作为8255A与系统总线连 接的界面,输入/输出的数据,CPU的编程命令以及外设 通过8255A传送的工作状态等信息,都是通过它来传输的。 4、 读/写控制部件
读 / 写控制逻辑电路负责管理 8255A 的数据传输过程。
RS-232C标准(协定)的全称是EIA-RS-232C标 准,其中EIA(Electronic Industry Association)代表美 寻址外设: 国电子工业协会,它规定连接电缆和机械、电气特性 、信号功能及传送过程。RS-232C接口最大传输速率 不同的外设需要不同的接口电路 为20Kbps,线缆最长为15米。RS-232C接口通常被用 同一外设中存在不同的端口 于将电脑信号输入控制,当通信距离较近时,可不需 信息变换: 要Modem,通信双方可以直接连接,这种情况下,只 CPU与外设的信息编码方式不同,如七段数码管 需使用少数几根信号线。
一个控制寄存器 ,用来接收CPU对它的控制命令。 一个状态寄存器,提供各种状态位供CPU查询。 输入缓冲寄存器和输出寄存器,实现输入和输出。
1.输入过程
输入缓冲寄存器
图8-4(P199)
2.输出过程
§8-3 可编程并行通信接口8255A
8255A是INTEL系列的并行接口芯片。它是可编程 的,可以通过软件来设置芯片的工作方式。
将80H端口的内容送AL。
M/IO=1(此为8088引脚),RD=0, AL=10H
例2:输出:OUT 82H,AL;AL=10H 将AL中的内容送82H端口。 M/IO=1,WR=0,(82H)=10H
无条件传送方式小结:
第八章输入输出接口8255A8183
它接收片选信号及系统读信号 、写信号、复位信号
RESET,还有来自系统地址总线的端口地址选择信号A0 和A1。
特点是什么? 3.简述无条件传送方式的原理. 4.简述查询式输入接口原理.
§8-2 并行通信和并行接口
并行通信就是把一个字符的各数位用几条线进行传输。 和串行通信相比,在同样的传输率下,并行通信的信
息实际传输速度快,信息率高。 实现并行通信的接口就是并行接口。 一个并行接口可以设计为只用来作为输出接口,也可
同一外设中存在不同为的20端Kb口ps,线缆最长为15米。RS-232C接口通常被用
于将电脑信号输入控制,当通信距离较近时,可不需
信息变换:
要Modem,通信双方可以直接连接,这种情况下,只
CPU与外设的信息编需码使用方少式数不几同根,信如号七线段。数码管
CPU与外设的数据宽度不同,如并-串转换
①能接受外设的请求,并能向CPU发DMA请求信号; ②CPU接到DMA请求信号,如果允许,CPU发DMA响应信号,
DMA控制器接管总线,进入DMA方式; ③能寻址存储器,并修改地址; ④能向外设发读/写信号; ⑤能控制传诵的字节数,判断DMA是否结束; ⑥DMA结束时,能向CPU发出结束信号,将总线控制权交
一)、数据信息(详细见书本P196) 1、数字量 2、模拟量 3、开关量 4、脉冲量
二)、状态信息 反映当前外设所处的工作状态。
三)、控制信息 CPU 通过接口向外设传送控制信息。
接口部件的I/O端口
一个接口有几个寄存器,不同类型的信息进 入不同的寄存器,一般称这些寄存器为端口。
1、 I/O端口寻址方式
对接口的要求:需要提供状态端口
优点:软件比较简单
微机原理--输入输出方法及常用的接口电路
第8章 输入/输出方法及常用的接口电路
② I/O端口使用连续的地址。
2# 8286
D 15~ D8
D0
8
D T
7
A
D 7 ~ D0
OE
1# 8286 D0
8
8
D0
D7
接 口 电
D T
7
A
路
1
OE
IO RC BH E
RD ≥1
≥1
1
A 9~ A0
地址 译 码器
CS
A0 A1
A0 A1
2021/6/4
地址 译码器
I D7
I D1 I D0
片内
端口 A0
选择 线
A1
C PU 数据总线
8 A0输出接 口 A1 C S(含锁存器)
地址 译码器
O D7
O D1 O D0
A9 A3 A2 片选地 址线
I OR (a)
A9 A3 A2 片选地 址线
I OW (b)
图 8.2
(a) 经接口输入数据; (b) 经接口输出数据
Intel公司研制开发的CPU产品通常都设有IN、 OUT指令。因此,
80x86 CPU组成的系统一般都采用独立编址方式。 如8086/8088
CPU采用地址总线的低16位作为I/O端口的寻址地址线。因而IN、
OUT指令可寻址216=65 536(64 K)个8位地址号的I/O端口,或32 K
个16位的I/O端口。80386DX的地址总线是32位,则就有直接访问
因为在微机系统中,数据总线是各种设备以及存储器传送信 息的公共总线。任何设备(包括存储器)都不允许长期占用数据总 线, 而仅允许被选中的设备在读/写周期中(RD或WR为低电平) 享用数据总线。
微机原理实验报告 可编程并行IO接口8255
《微机原理及应用技术》课程实验报告实验五可编程并行I/O接口8255【预习内容】1.怎样选中可编程I/O接口?怎样实现I/O端口的寻址?8255的CS/接地址译码/CS0,则命令字地址为8003H,PA口地址为8000H,PB口地址为8001H,PC口地址为8002H。
通过地址/数据总线,按照指定地址进行读写操作直接选中8255。
并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。
CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。
8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片。
CPU与外设交换的数据是以字节为单位进行的。
因此一个外设的数据端口含有8位。
而状态口和命令口可以只包含一位或几位信息,所以不同外设的状态口允许共用一个端口,命令口也可共用。
数据信息、状态信息和控制信息的含义各不相同,按理这些信息应分别传送。
但在微型计算机系统中,CPU通过接口和外设交换数据时,只有输入(IN)和输出(OUT)两种指令,所以只能把状态信息和命令信息也都当作数据信息来传送,且将状态信息作为输入数据,控制信息作为输出数据,于是三种信息都可以通过数据总线传送了。
但要注意,这三种信息被送入三种不同端口的寄存器,因而能实施不同的功能。
CPU对外设的访问实质上是对I/O接口电路中相应的端口进行访问,也需要由译码电路来形成I/O端口地址。
I/O端口的编址方式有两种·存储器映象寻址方式·I/O指令寻址方式2.8255A接口芯片内含几个I/O端口?它们的名称分别是?这些I/O口地址有何特点?三个数据端口,三种工作方式A口可工作于方式0、方式1和方式2中的任一种B口可工作于方式0和方式1,但不能工作于方式2C口只能工作于方式08位数据端口:A口、B口、C口A口:PA7~PA0B口:PB7~PB0C口:PC7~PC0连接外部设备A口与B口为一个8位的输入口或输出口C口单独作为一个8位的输入口或输出口配合A口和B口使用,作为控制信号和状态信号3.8255A有几个控制字?怎样设置?它有两个控制字,一个是方式选择控制字,一个是对C口进行置位或复位控制字。
8255微机原理
1×××× 1 0×
B口方式1 B口输出 WR
PC0
INTRB
(4)方式1的使用场合
• 如果外部设备能为8255A提供选通信号或 者数据接收应答信号,那么常常使8255A 的端口工作于方式1的情况。
3. 方式2-双向传输方式
1. 方式0-基本输入/输出方式
• 工作特点:
(1)任何一个端口可作为输入口,也可作为 输出口,各端口之间没有规定必然的关系。 (2)各个端口的输入或输出,可以有16种不 同的组合,所以可以适用于多种使用场合。
• 使用场合:
两种:同步传送 查询式传送
2. 方式1-选通的输入/输出方式
(1)工作特点:
(1)工作特点 • 这种方式只适用于端口A。 其特点如下: ( i)方式2只适用于端口A。 (ii)端口A工作于方式2时,端口C用5个 数位自动配合端口A,提供控制信号。
(2)方式 2工作时的控制信号
• 口A在方式2时,口C的PC3~PC7共5个数位分 别作为控制信号端。具体关系如下:
D7 D0
PC3
PA7~PA0
1 1 × × × D2 D1 D0
INTRA
端口A 方式2
B组方式 0-方式0 1-方式1
B口: 0-输出 1-输入
PC2~PC0 0-输出 1-输入
WR RD
PC7 INTE1 PC6 INTE2 PC4 PC5
OBFA ACKA STBA IBFA
(3)方式2的使用场合
• 如果一个并行外部设备既可作以作为输入 设备,又可作为输出设备,并且输入输出 动作不会同时进行,那么将这个外设和 8255A的端口A相连,并使它工作在方式2, 就会非常合适。如磁盘驱动器。
微机原理与接口技术实验报告2-8255可编程并行接口实验
西安交通大学实验报告成绩第页共页课程微机原理与接口技术实验系别生物医学工程实验日期年月日专业班级组别交报告日期年月日姓名学号报告退发 (订正、重做) 同组者教师审批签字实验名称8255可编程并行接口实验一、实验目的:1、掌握8255芯片结构及工作方式;2、熟悉8255并行口扩展的编程。
二、实验设备1、Lab6000p实验教学系统;2、IBM-PC机三、系统中8255模块Lab6000p实验箱中的8255模块连线如图所示:AD0~AD7、A0、A1、RESET、/WR、/RD已分别连至系统总线DB0~DB7、AB0、AB1、RESET、/IOW、/IOR;8255_CS、PA口、PB口、PC口引出留给用户连接。
四、实验内容和实验步骤1、8255基本输入输出方式――开关控制LED显示1)实验要求开关拨上LED亮,开关拨下LED灭。
2)电路连接8255_CS连至地址译码/CS0,PA口连至LED电平显示模块,PB口连至开关电路。
3)程序框图4)程序代码mode equ 082h ; 方式0,PA,PC输出,PB输入PortA equ 8000h ; Port APortB equ 8001h ; Port BPortC equ 8002h ; Port CCAddr equ 8003h ; 控制字地址code segmentassume cs:codeStart:mov al, modemov dx, CAddrout dx, al ; 输出控制字loop1: mov dx, PortBin al, dxmov dx, PortAout dx, aljmp loop1code endsend start5)实验步骤[1]在Lab6000p实验箱上完成连接电路;[2]开启计算机电源,开启Lab6000p实验箱电源;[3]启动WAVE6000软件;[4]确认WAVE6000与Lab6000p连接;[5]输入源代码;[6]编译源代码(F9);[7]单步运行源代码(F8),观察每条指令执行结果;[8]连续运行程序(Ctrl+F9),上下拨动开关观察LED显示情况。
8255输入输出知识要点
8255输入输出知识要点8255输入输出是指使用8255芯片进行输入和输出操作的技术。
8255芯片是一种通用输入输出设备,可用于控制和监测外部设备。
本文将介绍8255输入输出的原理、应用和特点。
一、8255芯片的原理8255芯片是一种具有三个8位双向并行端口的设备,分别称为PortA、PortB和PortC。
PortA和PortB可以用作输入端口或输出端口,而PortC的8位则用作控制信号。
通过对PortC的控制,可以实现输入输出的选择和控制。
8255芯片的输入和输出方式有两种:模式0和模式1。
模式0是将PortA和PortB分别设置为输入和输出端口,而模式1则是将PortA设置为输入端口,PortB设置为输出端口。
二、8255芯片的应用1. 控制外部设备:8255芯片可以与各种外部设备连接,如LED显示器、数码管、键盘等。
通过对PortA和PortB的输入输出控制,可以实现对外部设备的控制和监测。
2. 数据采集和传输:8255芯片可以将外部设备采集到的数据输入到计算机中,也可以将计算机处理后的数据输出到外部设备中。
这在工业自动化和科学实验中非常常见。
3. 并行通信:8255芯片可以作为并行通信接口的一部分,实现计算机和外部设备之间的高速数据传输。
4. 扩展IO端口:由于计算机的IO端口有限,当需要连接更多的外部设备时,可以使用8255芯片扩展IO端口,从而实现更多的输入输出功能。
三、8255芯片的特点1. 灵活性强:8255芯片可以根据需要配置为不同的输入输出模式,适应各种应用场景。
2. 高速传输:8255芯片支持高速数据传输,可以满足对数据传输速度要求较高的应用。
3. 兼容性好:8255芯片与多种外部设备兼容,可以与各种通信协议和设备进行连接。
4. 易于编程:8255芯片的控制信号可以通过编程来实现,编程语言可以是汇编语言或高级语言。
5. 成本低廉:8255芯片是一种低成本的通用IO设备,适用于大规模生产和广泛应用。
微机原理接口课件6(8255)_ppt课件
/ACK
/OBF
D7-D0
PC7
&
PC3
D7-D0
&
INTRA
PC0
INTRB
/WR
PC4 PC5
I/0 /WR
8255A方式1输出时序
/WR D7-D0 /OBF
/ACK
INTR
三、方式2(双向数据传送方式)
A口作为双向数据总线 A口工作于方式2时,C口有5根线作为A口 的握手线和中断请求线 工作场合:外设可是输入设备,也可是 输出设备,但不会同时发生
如果A口为方式0输入,B口为方式1输出,C 口除了与B口方式1输出配合的PC0-PC2外, 其PC3设成输入,C口上(PC7-PC4)设为 输出,端口地址为60H-63H。
实验题目三:
1、PA口工作在方式0,接8个开关;PB口工 作在方式0,接8个LED;要求每读一次开 关值,并将开关值在LED上显示,当开关 值为全1时,程序退出。CS:280H—287H
8255A方式2输出联络信号(双向传输)
A口
CPU
+
& &
PA7-PA0
PC2 PC3 PC7 PC6
I/O INTRA /OBFA /ACKA /STBA IBFA I/0
D7-D0
INTE 2
INTE 1
/WR
PC4
/RD
PC5
PC2---- PC0
方式2的输入输出时序
WR OBF INTR ACK t ST STB IBF 外部总线 PA 7~ PA 0 RD t PH t SIB t PS t KD t RIB t WOB t AOB
IBF
tSIB tSI T tRIB tRIT tPH
微机原理8-8255的应用
PC1
WR
PC3
INTR
O
WR
O
PC0
PC4、5
I/O
ACK:外设应答 OBF:输出缓冲器满 INTE:中断允许,设置PC6=1,使INTEA=1;PC2=1,使INTEB=1; INTR:中断请求,当INTE = 1且OBF = 1时,INTR = 1
ACK OBF
INTR I/O
② 1方式下输出的时序:
STB
RD
O
PC3
INTR IBF
PC6、PC7
I / O INTR
RD 当PA口设置为工作方式1时, 如何使A端口的PC4置位/复位?
数据
②1方式下输出的联络信号线定义:
A口方式 1 ,输出
B口方式 1 ,输出
PA0 ~ PA7
INTE
A
PC6
PC7
ACK OBF
PB0 ~ PB7
INTE
B
PC2
2、并行接口的输出过程:外设取走数据后,“输出准备 好”状态位有效,或发一个中断请求;当输出的数据到 达输出缓冲寄存器后,接口会自动向外设发送一个信号 通知外设。外设收到数据后,并往接口发一个“数据输 出回答”信号。
8.3 可编程并行通信接口芯片8255A
8255A 可为CPU与外设之间提供并行输入/输出的通道, 可以通过软件来设置其工作方式。 8.3.18255A的内部结构及其功能 由8255A的内部结构图可见,8255A由以下几部分组成: 1、并行输入/输出端口A、端口B和端口C,且各端口相互独立; PC口还具有按位置位/复位功能。
TEST AL, 01
≥1
JZ …
K闭合 D0 = 0, K 打开 D0 = 1
8255接口
第八章 可编程并行接口8255A
第一节 可编程并行接口8255A
8255A是INTEL系列的并行接口芯片。它是可编程 的,可以通过软件来设置芯片的工作方式。
MOV DX,PCTR MOV AL,00001110B ;置PC7=0,禁止A/D OUT DX,AL MOV DX,POT_A ;送A口地址 IN AL,DX ;读数据,产生IBF信号(0)
3)方式1的使用场合 在采用中断方式进行输入/输出的场合, 如果外部设备能为8255A提供选通信号或 数据接收应答信号,那么,通常使用8255A 的端口工作方式1的情况。
LP:
思考题:用8255A控制三个发光二极管依秩序循 环显示。假设开关闭合时,点亮发光二极管,开 管断开时息灭二极管。
+5V
200 D7 ~D0 8086 CPU A1 A2 译 地 码 址 A 线 0 器 A0 A1 CS
PA0 PA1 PA2
8255A
PB0
2K +5V
例2:计数器2输出600HZ方波,送扬声器。工作 于模式3.8255A控制8253的门控信号与扬声器的 开启。
输 入 0=输出
A口方式1输入有关信号的规定
中断允许信号,INTE由STB(PC4)置“1”,INTR有效 RD
INTE
数据输入口
PC4
A
PC5 PC3 PC6.PC7
PA7~PA0 选同信号输入端,低电平有效 STBA 输入缓冲区满信号, IBFA 它是8255送往CPU的中断请求 信号,高电平有效。 INTRA I O
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
AB
DB
M/IO RD WR
CPU INTR
CS
DB
DB RDY
RD WR STB
INTR I/O接口芯片
DB
RDY
STB I/O设备
• 所谓“可编程”是指芯片的功能和一些参数是可由用户选 择和改变的。
• 通过向芯片内部写入特定的“工作方式控制字”,就可以 选择这个芯片的工作方式。
• 例如,可以将某芯片的数据端口设定为“输入”,也可以 将它设定为“输出”。
• 显然,芯片的可编程特性扩大了其使用范围,使用上也更 方便。
• 按照可编程接口芯片的用途,可以将其分为“通用接口芯 片”和“专用接口控制器”两类。
8.3.1 8255A芯片内部结构和引脚功能
1. 8255A的基本性能
• 8255A是具有多种功能的可编程并行接口电路芯片 • 其内部最基本的接口部件是: • 三态缓冲器、锁存器 • 此外,还包括与CPU的联络电路及与外设的联络电路: • 状态寄存器、控制寄存器 • 端口译码电路、控制电路(如读写控制、中断控制)
每位可独立进行输出控制(位控制)
使用最灵活,较难掌握
⑶ 数据总线缓冲器
这是一个三态双向8位缓冲器,它是8255A芯片 与系统数据总线的接口。
输入输出的数据,输出的指令以及CPU发出的控制 字和外设的状态信息,也都是通过这个缓冲器传送的
⑷ 读/写和控制逻辑
它与CPU的地址总线中的A1、A0以及有关的控 制信号(RD,WR,RESET,IO/M)相连,由它控制 把CPU的控制命令或输出数据送至相应的端口,也由 它控制把外设的状态信息或输入数据通过相应的端口, 送至CPU。
• 8255A有3个8位的数据端口(A/B/C), • 共24个I/O引脚, • 共有3种输入输出工作方式 • 基本输入/输出(A/B/C口) • 选通输入或选通输出(A/B口) • 双向选通(A口)
2. 8255A的内部结构和引脚
8255A由以下几个部分组成:
⑴ 4个8位端口----PA、PB、PC、CWR
7. (4) RESET——复位信号,高电平有效。它清除控制 寄存器,并且置所有端口(A、B、C)为输入方式。
8. ⑸A1、A0:地址信号,输入。内连8255A的片内寄 存器,外接CPU地址线,和CS#一起决定8255A的4
-CS A1 A0
000 001 010 011
I/O地址
60H 61H 62H 信号,用来指明哪一个端口被选中。 8255A有三个数据端口和一个控制端口。
数据端口用来传送数据,控制端口用来接受CPU传送来的控 制字。
数据和控制字都是通过CPU的数据总线传送给8255A的。 8255A则根据端口选择信号A1、A0的组合把数据总线传送来 的信息传送到相应的端口。
第8章输入/输出接口
8.3 可编程并行通信接口芯片8255A
8255A是Intel86系列微处理机的配套并行接口芯片,它可为86系列CPU与外部 设备之间提供并行输入/输出的通道。由于它是可编程的,可以通过软件来设 置芯片的工作方式,所以,用8255A连接外部设备时,通常不用再附加外部电 路,给使用者带来很大方便。
1.工作方式控制字 ☼工作方式控制字用来设定A口、B口和C口
的数据传送方向和工作方式; ☼工作方式分别是方式0、方式1和方式2; ☼A口可工作在三种方式中的任何一种方式下0 、1、2; ☼B口只能工作在前两种工作方式下0、1; ☼C口只能工作在方式0下或者配合端口A和端 口B工作; ☼8255A的工作方式控制字格式和各位的含义
3. 一些控制命令
4. (1) CS(Chip Select)——选片信号,低电平有效,由 它启动CPU与8255A芯片之间的通信 (Communication)。
5. (2) RD——读信号,低电平有效。它控制8255A送出 数据或状态信息至CPU。
6. (3)WR——写信号,低电平有效。它控制把CPU输 出的数据或命令信号写到8255A。
8255A中有三个输入输出端口,另外,内部还有一个控制字寄 存器,共有四个端口,要有两个输入端来加以选择,这两个 输入端通常接到地址总线的最低两位A1和A0。
⑵ A组和B组控制电路 这是两组根据CPU的命令字控制8255A工作方式的电路。
它们有控制寄存器,接受CPU输出的命令字,然后分别决定两组的 工作方式,
读操作-RD
读端口A 读端口B 读端口C
非法
写操作-WR
写端口A 写端口B 写端口C 写方式字和位控字
4 片选与端口地址:
I/O接口芯片的片选信号输入端CS端接地址译码器的的输出端 Y33 ,A1、A0接CPU的A1、A0。 A1、A0的取值,该接口芯片有4个端口:84H、85H、86H、87H CPU的A0除了作地址线外,还作为逻辑转换门电路的控制输入 端.
数据端口PA、PB、PC
它有三个输入输出端口: Port A、Port B和Port C。每 一个端口都是8位,都可以选择作为输入或输出,但功能上有 着不同的特点。
• 端口A:PA0-PA7,8位端口,支持工作方式0、1、2 • 端口B:PB0-PB7,8位端口,支持工作方式0、1 • 端口C:PC0-PC7,拆分为两个4位端口,仅支持工作方式0 端口寻址
当A1A0=00时,选中端口A; 当A1A0=01时,选中端口B; 当A1A0=10时,选中端口C; 当A1A0=11时,选中控制端口。
8.3.2 8255A的两个控制字和一个状态字
• 8255A是可编程接口芯片。 • 可编程就是用指令的方法先对芯片进行初始化,
决定芯片的端口是处于输入数据状态还是处于输 出数据状态,以及每个端口的工作方式。 • 工作方式和工作状态的建立是通过向8255A的控 制口写入相应的控制字完成的。 • 8255A共有两个控制字,即 • 工作方式控制字 • 对C口置位/复位控制字。
也可根据CPU的命令字对端口C的每一位实现按位“复位”或“置 位”。
端口A:PA0-PA7 (A组控制)
常作数据端口使用,功能最强大
端口B:PB0-PB7 (B组控制)
常作数据端口使用
端口C:PC4-PC7 (A组控制),
PC0-PC3 (B组控制)
可作数据、状态或控制端口使用
可拆分成两个4位端口分别输入或输出