8255微处理器:结构、工作及其应用
实际上,将I/O设备与处理器的数据总线直接连接是不可能的。因此,在它的位置上,必须有一些设备的I/O端口,用于连接8255微处理器等I/O设备。此处理器。。。
实际上,将I/O设备与处理器的数据总线直接连接是不可能的。因此,在它的位置上,必须有一些设备的I/O端口,用于连接8255微处理器等I/O设备。该处理器来自英特尔设计的MCS-85系列,可与8086和8085微处理器一起使用。8255是一种可编程外围接口设备,用于实现微处理器和机器之间的基本通信方法。它是一种用于机器的外围设备,被编程为用作接口。这个8255 PPI是微处理器和I/O设备之间的接口。本文讨论了8255微处理器–使用应用程序。
什么是8255微处理器?
8255微处理器是一种非常常用的可编程外围接口芯片或PPI芯片。8255微处理器的功能是在从简单I/O到中断I/O的各种条件下传输数据。该微处理器还设计用于将CPU与其外部世界(如ADC、键盘、DAC等)连接。该微处理器经济、功能强大且灵活,尽管有点复杂,因此可以与任何微处理器一起使用。该微处理器用于连接外围设备,也用于接口。所以这个外围设备也被称为I/O设备,因为这个微处理器的I/O端口用于连接I/O设备。该处理器包括三个8位双向I/O端口,可以根据需要进行配置。
特征
这个8255微处理器的特点包括以下内容。
- 8255微处理器是一个PPI(可编程外围接口)设备。
- 它包括三个在不同模式下编程的I/O端口。
- 这个微处理器只是提供了几个连接不同设备的设施。因此,它经常被用于不同的应用中。
- 它在三种模式下工作,如模式0(简单I/O)、模式1(选通I/O)和模式2(选通双向I/O)。
- 它与英特尔微处理器系列完全兼容。
- 它与TTL兼容。
- 对于该微处理器的端口C,可以使用直接位SET/RESET容量。
- 它包括24个可编程输入/输出引脚,这些引脚被放置为2至8位端口和2至4位端口。
- 它包括三个8位端口;端口A、端口B和端口C。
- 三个I/O端口包括一个控制寄存器,用于定义每个I/O端口的功能以及它们必须以何种模式操作。
8255微处理器引脚配置
8255微处理器的引脚图如下所示。该微处理器包括40个引脚,如PA7-PA0、PC7-PC0、PC3-PC0、PB0-PB7、RD、WR、CS、A1和A0、D0-D7和RESET。下面将讨论这些引脚。

PA7至PA0(端口A引脚)
PA7至PA0是端口A数据线引脚(1至4和37至40),平均分布在微处理器顶部的两侧。这八个端口A引脚根据加载到控制字寄存器中的控制字作为缓冲输入线或锁存输出工作。
PB0至PB7(端口B引脚)
从18到25的PB0到PB7是承载端口B数据的数据线引脚。
PC0至PC7(端口C引脚)
PC0到PC7引脚是端口C引脚,其包括携带端口A数据位的引脚10到引脚17。从那里开始,引脚10至引脚13被称为端口C上部引脚,引脚14至引脚17被称为下部引脚。来自这两个部分的引脚可以分别用于使用两个单独的端口C部分传输4个数据位。
D0至D7(数据总线引脚)
这些D0至D7引脚是包括27引脚至34引脚的数据I/O线。这些引脚用于携带8位二进制代码,并用于训练整个IC工作。这些引脚共同被称为控制寄存器/控制字,其携带控制字的数据。
A0和A1
引脚8和引脚9处的A0和A1引脚只需决定哪个端口将是传输数据的首选端口。
如果A0=0和A1=0,则选择端口A。
如果A0=0&A1=1,则选择端口B。
如果A0=1和A1=0,则选择端口C。
如果A0=1和A1=1,则选择控制寄存器。
计算机
类似CS’的引脚6是一个芯片选择输入引脚,负责选择芯片。CS’引脚处的低信号仅允许8255和处理器之间的通信,这意味着在该引脚处,数据传输的操作由激活的低信号允许。
第三方
类似RD’的引脚5是一个将芯片置于读取模式的读取输入引脚。此RD引脚处的低信号通过数据缓冲器向CPU提供数据。
写入
类似WR’引脚的引脚36是一个将芯片置于写入模式的写入输入引脚。因此,WR’引脚的低信号只允许CPU通过数据总线缓冲器在端口上方执行写操作,否则微处理器的控制寄存器。
重置
与RESET引脚类似的引脚35在设置模式下将所有按键中可用的全部数据重置为默认值。这是一个有效的高信号,其中RESET引脚的高信号清除控制寄存器,端口置于输入模式内。
全球导航卫星系统
引脚7是IC的GND引脚。
VCC公司
类似VCC的引脚26是IC的5V输入引脚。
8255微处理器体系结构
8255微处理器的体系结构如下所示。
8255体系结构
数据总线缓冲区:
数据总线缓冲器主要用于连接微处理器的内部总线和系统总线,以便在两者之间建立适当的接口。该缓冲器简单地允许从CPU或向CPU执行读取或写入操作。该缓冲器允许在写操作的情况下从控制寄存器或端口向CPU提供数据,在读操作的情况中从CPU向状态寄存器或端口提供数据。
读/写控制逻辑:
读或写控制逻辑单元控制系统内部的操作。该单元具有管理内部和外部数据传输和状态或控制字的能力。一旦需要获取数据,它就允许8255通过总线提供地址,并立即向两个控制组生成用于特定操作的命令。
A组和B组控制:
这两个组都由CPU管理,并基于CPU生成的命令进行工作。该CPU向这两个组发送控制字,并且它们连续地向其特定端口发送合适的命令。组A用高阶端口C位控制端口A,而组B用低阶端口C比特控制端口B。
端口A和端口B
端口A和端口B包括8位输入锁存器和8位缓冲或锁存输出。这些端口的主要功能也与操作模式无关。端口A可编程为3种模式,如模式0、1和2,而端口B可编程为模式0和模式1。
端口C
端口C包括8位数据输入缓冲器和8位双向数据o/p锁存器或缓冲器。该端口主要分为两部分——端口C上部PCU和端口C下部PC。因此,这两部分主要编程并单独用作4位I/O端口。该端口用于握手信号、简单I/O和状态信号输入。该端口与端口A和端口B结合使用,用于状态信号和握手信号。此端口仅提供直接但设置或重置容量。
8255微处理器操作模式
8255微处理器有两种操作模式,如位置位复位模式和输入/输出模式,下面将对此进行讨论。
位设置复位模式
位置位复位模式主要用于仅对Port-C位进行置位/复位。在这种类型的操作模式中,它只影响端口C的一个位。一旦用户设置了该位,它就会保持设置状态,直到用户取消设置为止。用户需要在控制寄存器中加载位模式来修改位。一旦端口C用于状态/控制操作,则通过发送OUT指令,可以设置/重置每个单独的端口C位。
I/O模式
I/O模式有三种不同的模式,如模式0、模式1和模式2,下面将讨论每种模式。
模式0:
这是一种8255的I/O模式,它只允许对每个端口(如I/p或O/p端口)进行编程。因此,该模式的I/O功能只包括:
- 无论何时锁存o/p,都会对i/p端口进行缓冲。
- 它不支持中断功能/握手。
模式1:
8255的模式1是带握手的I/O,因此在这种类型的模式中,端口A和端口B这两个端口都用作I/O端口,而端口C用于握手。因此,该模式支持通过编程端口进行的握手,作为i/p或o/p模式。握手信号主要用于同步以不同速度工作的两个设备之间的数据传输。该模式中的输入和输出被锁存,并且该模式还具有中断处理和信号控制的能力,以匹配CPU和IO设备的速度。
模式2:
Mode2是一个具有握手功能的双向I/O端口。因此,这种模式下的端口可以通过握手信号用于双向数据流。A组引脚可以编程为执行双向数据总线和端口C中的PC7–PC4通过握手信号使用。剩余的较低端口C位用于输入/输出操作。此模式具有中断处理能力。
8255微处理器工作
8255微处理器是一种通用可编程I/O设备,主要用于在必要的特定条件下将数据从I/O传输到中断I/O。这几乎可以与任何微处理器一起使用。该微处理器包括3个8位双向I/O端口,可以根据端口A、端口B和端口C等要求进行排列。该PPI 8255主要用于将CPU与其外部世界(如键盘、ADC、DAC等)接口。该微处理器可以根据特定条件进行编程。
8255 PPI与8086接口
8255 PPI与8086微处理器的接口需要:;8086微处理器在需要读取8255端口内的可用数据时触发8255的输入RD引脚。对于8255,它是一个有效的低i/p引脚。该引脚连接到8086微处理器的WR o/p。8086微处理器一旦需要向8255的端口写入数据,就会触发8255的WR i/p。
8255通过8位数据总线将数据传输到8086微处理器。串行通信协议用于8086和8255之间的通信。两条地址线A1和A0用于在8255内进行内部选择。8255的数据总线引脚(如D0至D7)连接到8086微处理器的数据线,读取输入引脚(如RD’)和写入输入引脚(例如WR’)连接到806的I/O读取和I/O写入。
它们有四个主要端口来选择PA、PB、PC和控制字。这些端口主要用于传输数据,选择控制字用于发送信号。两个信号被发送到8255,如I/O信号和BSR信号。I/O信号用于初始化端口的模式和方向,而BSR用于设置和重置信号线。
在下面的设备中,假设连接的设备是一个输入设备。起初,该设备会向PPI寻求许可,以便传输数据。

8255 PPI允许输入设备在8255内没有剩余数据时传输数据,这些数据必须传输到8086处理器。如果8255 PPI有一些以前的左数据,那么它仍然没有被发送到8086微处理器,那么它不允许输入设备。
当8255 PPI允许输入设备时,获得数据并将其存储在8255 PPI的临时寄存器中。当8255 PPI保存一些数据时,必须将其传输到8086微处理器,然后将信号传输到PPI。
一旦8086微处理器可以自由获取信息,那么8086就发回一个信号,然后在8255和8086之间进行数据传输。如果8086微处理器在很长一段时间内没有变为空闲状态,这意味着8255 PPI包括一些没有发送到8086微处理器的值,因此8255 PPI不允许输入设备发送任何数据,因为现有的数据将被覆盖。在上面的图中表示的弯曲箭头信号被称为握手信号。因此,这种数据传输过程被称为握手。
与8255接口需要考虑的因素
在接口8255时,有许多事情需要考虑,下面将对此进行讨论。
- 处于未编程状态的8255端口是输入端口,因为如果它们是处于未配置状态的o/p端口,则任何i/p设备都连接到它——输入设备也将在端口线上生成输出,8255也将生成输出。当两个输出连接在一起时,会导致一个/两个设备被毁。
- 8255输出引脚不能用于给设备供电,因为它们不能提供必要的驱动电流。
- 每当电机、灯或扬声器连接到8255时,都需要检查设备的额定电流&8255。
- 当8255不能提供必要的驱动电流时,使用类似的反相7406以及诸如7407.当需要大电流时,晶体管可以用于达林顿对的配置。
- 每当直流电机连接到8255时,根据电机的规格选择合适的H桥,因为H桥将允许直流电机在任何方向上运行。
- 端口A和端口B只能用作8位端口,因此这些端口的所有引脚都必须是输入或输出。
- 当交流供电设备连接到8255时,必须使用继电器进行保护。
- 一旦端口A和B在模式1或模式2内编程,端口C就不能作为正常的I/O端口工作。
Q: 8255协处理器是如何与微处理器接口的?
A: 8255协处理器使用地址总线和数据总线与微处理器接口。微处理器通过数据总线向8255协处理器发送控制信号和命令,8255协处理机通过数据总线发送和接收数据。
Q: 8255协处理器的三种操作模式是什么?
A: 8255协处理器的三种操作模式是:
模式0:基本输入/输出模式
模式1:选通输入/输出模式
模式2:双向总线模式
Q: 8255协处理器是如何处理中断的?
A: 当满足特定的输入或输出条件时,8255协处理器可以产生中断。中断可以被编程为发生在特定端口或端口内的特定位上。然后微处理器可以通过执行特定的中断服务例程来响应中断。
Q: 8255协处理器有哪些应用?
A: 8255协处理器在20世纪80年代被广泛用于为微处理器提供并行输入/输出功能。它被用于许多应用,如数据采集、过程控制和工业自动化。
Q: 8255协处理器是如何处理握手信号的?
A: 8255协处理器具有内置的握手信号生成能力。它可以生成并响应各种握手信号,如READY、ACK和BUSY。这些信号可以用来控制微处理器和8255协处理器之间的数据流。
Q: 8255协处理器今天还在使用吗?
A: 8255协处理器被认为已经过时,不再生产。然而,它仍在一些需要并行输入/输出功能的较旧系统或项目中使用。现在有更新、更先进的外围接口芯片,可以执行与8255协处理器相同的功能。
8255协处理器今天被认为已经过时了,现在已经不再生产了。现在有更新、更先进的外围接口芯片,可以执行与8255协处理器相同的功能。
可以取代8255的外围接口芯片的一个例子是8255A,它是8255的引脚兼容替代品,增加了一些功能和改进。
另一个例子是8254可编程间隔定时器,它是一种可编程定时器和计数器芯片,可以在需要精确计时和事件计数的系统中取代8255。
另一种选择是现代微控制器,如Arduino或Raspberry Pi,它可以编程为执行与8255相同的I/O操作,并具有更多功能。
此外,还有多种通用输入/输出(GPIO)芯片可用于提供并行输入/输出功能,例如74HC595、MCP23017和PCF8574。
值得注意的是,这些选项与8255并不完全兼容,可能需要修改软件和/或硬件才能用作替代。
优势
这个8255微处理器的优点包括以下内容。
- 8255微处理器几乎可以与每一个微处理器一起使用。
- 可以将不同的端口分配为I/O功能。
- 它使用+5V稳压电源工作。
- 它是一种常用的协处理器。
- 8255协处理器充当微处理器和外围设备之间的接口,用于传输并行数据。
应用
这个8255微处理器的应用包括以下内容。
- 8255微处理器用于连接外围设备和LED或继电器接口、步进电机接口、显示接口、键盘接口、ADC或DAC接口、交通信号控制器、电梯控制器等。
- 8255是一种常用的可编程外围接口设备。
- 该微处理器用于在不同条件下传输数据。
- 它用于与步进电机和直流电机接口。
- 8255微处理器广泛用于各种微控制器或微型计算机系统以及家用计算机,如所有MSX型号和SV-328。
- 这种微处理器也可以用于原始的PC/XT、IBM-PC、PC/jr和各种国产计算机(如N8VEM)的克隆。
因此,这是8255微处理器体系结构与应用程序的概述。82C55微处理器是一种通用可编程I/O设备,可与各种微处理器一起使用。采用高性能82C55微处理器的行业标准配置与8086非常匹配。这里有一个问题要问你,什么是8086微处理器?