8255芯片
8255芯片

8255芯片8255芯片是一种广泛应用于微处理器外围设备的集成电路,它具有8位数据总线和3个可编程I/O端口。
在本文中,我将对8255芯片进行详细介绍,并讨论它的主要特点和应用。
8255芯片由三个可编程I/O端口组成,分别是端口A(PA),端口B(PB)和端口C(PC)。
每个端口都有8个引脚,分别对应8位数据总线。
通过对这些端口的编程,可以实现对外部设备的数据输入和输出。
8255芯片的主要特点之一是它的多功能性。
每个端口都可以通过编程配置为输入或输出端口。
此外,每个端口都可以以单个位的方式进行控制。
这使得8255芯片非常适用于各种不同的应用场景。
8255芯片还具有可扩展性。
它可以通过对控制寄存器的编程来选择端口的工作模式和功能。
例如,可以将端口A和端口B配置为并行输入或并行输出模式,而端口C可以用于扩展输入/输出端口。
8255芯片还具有双向数据传输功能。
在并行输出模式下,可以从硬件连线读取数据。
而在并行输入模式下,则可以向外部设备输出数据。
除了以上功能之外,8255芯片还具有高速数据传输和低功耗的特点。
它可以在高达10 MHz的时钟频率下工作,并且可以通过与微处理器的连接来实现高速数据传输。
同时,它的封装形式也相对较小,可以在印刷电路板上紧凑地放置。
8255芯片在各种应用中被广泛使用。
它可以用于控制外部设备,如LED显示屏、驱动器、传感器、键盘等。
它还可以用于数据采集和通信系统,如数据采集卡、仪器仪表等。
总结起来,8255芯片是一种功能强大、多功能且易于使用的集成电路。
它具有高速数据传输和低功耗的特点,并且可以通过编程来实现各种不同的工作模式和功能。
因此,8255芯片在各种应用中被广泛应用,是微处理器外围设备控制的重要组成部分。
8255芯片知识点总结

8255芯片知识点总结一、8255芯片的功能8255芯片的主要功能是实现微处理器与外部设备之间的数据传输和交互。
它提供了24个I/O引脚,可配置为三个8位的并行输入/输出端口。
除了I/O功能之外,8255芯片还具有自动手摇功能,可通过设置控制字来进行不同模式的操作,包括模式0(基本I/O)、模式1(手摇方式)、模式2(双向通讯)和模式3(快速反射)。
在基本I/O模式下,8255芯片的三个端口A、B、C分别作为输出、输入、控制端口。
通过设置控制字可以配置每个端口的工作方式,包括输入、输出和双向通讯。
而在手摇方式下,8255芯片可以通过设置手摇信号来进行数据传输,可以实现16位数据的传输操作。
在双向通讯模式下,8255芯片可以通过读写控制字来实现双向数据传输。
而在快速反射模式下,8255芯片可以实现数据的快速输入和输出,适用于数据采集和高速数据传输等场景。
除了上述功能,8255芯片还可以实现对外设设备的中断请求响应、电源管理和自检功能等。
因此,8255芯片在微处理器系统中扮演着非常重要的角色,可以实现微处理器与外部设备的高效通讯和控制。
二、8255芯片的特点8255芯片具有以下几个显著的特点:1. 多功能性:8255芯片提供了多种工作模式和配置方式,可以适用于不同的应用场景。
用户可以通过编程来设置控制字,实现8255芯片的不同功能。
2. 高性能:8255芯片具有高速的数据传输和处理能力,可以满足对数据传输速度要求较高的应用。
3. 可编程性:8255芯片的功能和工作方式可以通过编程进行配置,可以根据具体的应用需求来设置控制字,实现不同的功能和模式。
4. 可靠性:8255芯片具有良好的稳定性和可靠性,可以在恶劣的环境条件下正常工作。
5. 兼容性:8255芯片广泛应用于各种微处理器系统中,与不同的微处理器兼容性强,可广泛应用于各种系统。
6. 低功耗:8255芯片采用低功耗设计,具有较低的能耗,适用于对电源管理要求较高的应用。
微机原理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芯片编程初始化控制字
8255是一个通用I/O端口芯片,是集成电路中的一种主要型号。
在初步使用8255芯片前,先需要对初始化控制字有一定的了解。
初始化控制字是8255芯片最重要的编程配置参数之一,它是通过对8255的编程实现对I/O端口的控制和管理的。
编程初始化控制字的目的是告诉8255芯片设置工作模式、芯片寄存器的状态和各个端口的工作方式。
具体地说,在编写初始化控制字时,需要保证以下几点:
1. 工作模式设置:在初始化控制字中,需要设置8255芯片的工作模式,即A组和B组的端口工作方式,可以是输入方式、输出方式或者是双向方式。
2. 芯片寄存器状态设置:除了工作模式,初始化控制字还需要配置8255芯片的芯片寄存器状态,包括I/O端口状态、中断状态和使能状态等。
3. 端口工作方式设置:端口工作方式包括模式设置和读/写方式设置。
模式设置用于配置端口的工作方式,可以是基本输入/输出、双向输入/输出和手摇开关模式等,读/写方式则用于定义数据在端口的输入/输出方式。
总之,初始化控制字是8255芯片的重要编程参数,合理的配置可以实现对I/O端口的良好控制和管理。
在使用8255芯片编程时,需要根据实际需求和硬件环境来定义适当的控制字,从而实现最优的工作效果。
微机第7章 8255芯片

信号等; C口未被用作联络信号的其它位可工作在方式 0。
第7章典型可编程接口芯片及应用
2.
端口C按位置/复位控制字
D7 0 标识 X X 未用 X B2
D0 B1 B0 1/0 D0=1 置1 D0=0 复位 0 1 2 0 1 0 0 0 1 0 0 0 3 4 5 6 7 1
说明: (1)写入8255的控制口。 (2)该控制字仅对8255的端
A组 控制 D7~D0 RD WR A0 A1 CS RESET 缓冲 读写 控制 逻辑 B组 控制
端口A 端口C (上部) 端口C (下部) 端口B
PA7 ~ PA0 PC7 ~ PC4 PC3 ~ PC0 PB7 ~ PB0
二、8255 PIN功能
40个引脚双列直插的NMOS器件
1.
与外设连接引脚
(2)对C口,其高低4位两部分可相同(同为输入或输出)也可不同。
但对端口8位的读写是在一条指令中作为整体来操作,可采用以下措施: CPU 高4 低4 IN 入 出 必须屏蔽低四位 IN 出 入 必须屏蔽高四位 IN 入 入 读入的8位均有用 OUT 入 出 输出数据只设在低4位 OUT 出 入 输出数据只设在高4位 OUT 出 出 输出8位数据
第7章典型可编程接口芯片及应用
一、8255的内部结构
1.
端口
A组 控制 缓冲 读写 控制 逻辑 B组 控制
端口A 端口C (上部) 端口C (下部) 端口B
PA7 ~ PA0 PC7 ~ PC4 PC3 ~ PC0 PB7 ~ PB0
(1)端口A(PA7~PA0):
D7~D0 由一个8位数据输入锁存器和一 RD 个8位数据输出锁存器及缓冲器组成, WR A0 可工作于双向方式。 A1 CS (2)端口B (PB7~PB0) : RESET
8255芯片百度百科

8255芯片8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。
具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。
其各口功能可由软件选择,使用灵活,通用性强。
8255可作为单片机与多种外设连接时的中间接口电路。
8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。
同时必须具有与外设连接的接口A、B、C口。
由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。
8255管脚编辑本段特性(1)一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口.(2)具有24个可编程设置的I/O口,即3组8位的I/O口为PA口,PB口和PC口.它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4~PC7),B组包括B口及C口(低4位,PC0~PC3).A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I/O3种模式;B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定.编辑本段引脚功能RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
WR:写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。
D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
8255芯片引脚及其功能
8255芯片引脚及其功能
8255是一个40引脚的双列直插式芯片,图8-8为8255与80C51的连接图。
由于80C51与8255的连接就是3总线的连接。
8255的数据总线DB有8根:D0~D7。
因为80C51是用其P0口作为数据总线口,所以80C51与8255数据线连接为:80C51 的P0.0~P0.7与8255的D0~D7连接。
8255地址线AB有2根:A0~A1。
A0、A1通过74LS373锁存器与80C51的P0.0、P0.1连接。
A1A0取00~11值,可选择A、B、C口与控制寄存器,选择方法如下:
①片选信号<?XML:NAMESPACE PREFIX = V /> <?XML:NAMESPACE PREFIX = O /> :由P2.5~P2.7经138译码器产生。
若要选中8255,则必须有效,此时2.5P2.6P2.7=111。
由此可推知各口地址如下:
A口:111 x~x 00 = E000H (当x~x=0~0时)
B口:111 x~x 01 = E001H (当x~x=0~0时)
C口:111 x~x 10 = E002H (当x~x=0~0时)
控制口:111 x~x 11 = E003H (当x~x=0~0时)
其中x~x表示取值可任意,所以各口地址不是唯一。
②读信号:8255的读信号与80C51的相连。
③写信号:8255的写信号与80C51的相连。
④复位信号RST:8255的复位信号RST与80C51的RST 相连。
8255中的方式控制字和位控制字
主题:8255中的方式控制字和位控制字1. 介绍8255芯片8255是一种可编程并行I/O芯片,广泛用于微机、工控、通信、家电等领域。
它具有多种功能,包括输入/输出控制、定时/计数功能等,能够满足不同应用的需求。
2. 方式控制字的概念方式控制字是8255中的重要概念之一,它用于配置8255芯片的工作方式。
通过设置方式控制字,可以确定8255的工作模式,包括输入、输出、双向或定时/计数等。
3. 方式控制字的结构方式控制字通常由8位二进制数据组成,每一位都代表着8255的某种工作状态。
其中,最高3位用于设置端口A、端口B和端口C的工作方式,接下来的3位用于设置端口A、端口B和端口C的工作模式,最低2位用于设置定时/计数功能的工作状态。
4. 方式控制字的设置方法在使用8255芯片时,需要按照具体应用的需求来设置方式控制字。
可以通过编程的方式将合适的二进制数据写入到8255芯片的方式控制字寄存器中,以达到配置8255工作模式的目的。
5. 位控制字的概念除了方式控制字之外,8255中还有位控制字的概念。
位控制字用于控制8255芯片的具体输入/输出操作,可以实现对单个端口的位控制。
6. 位控制字的结构位控制字通常由8位二进制数据组成,每一位都代表着8255的某种输入/输出操作。
通过设置位控制字,可以实现对端口A、端口B和端口C的单个位的输入/输出控制。
7. 位控制字的设置方法对于特定的输入/输出操作,可以通过编程的方式将合适的二进制数据写入到8255芯片的位控制字寄存器中,以实现对端口的单个位的控制。
8. 方式控制字与位控制字的关系方式控制字和位控制字是8255芯片中两个重要的控制概念,它们共同构成了8255的工作模式。
方式控制字主要用于配置8255的工作方式,而位控制字则用于具体的输入/输出控制操作。
9. 总结8255芯片中的方式控制字和位控制字是控制8255工作模式和具体输入/输出操作的重要手段。
通过合理设置方式控制字和位控制字,可以实现对8255芯片的灵活控制,满足不同应用的需求。
8255初始化编程步骤
8255初始化编程步骤一、引言8255是一种通用的并行I/O接口芯片,常用于嵌入式系统中。
本文将介绍8255的初始化编程步骤,帮助读者快速上手使用该芯片。
二、8255概述8255是一款具有三个I/O端口的芯片,即PA、P B和P C端口。
每个端口都可以被配置为输入或输出端口,用于与外部设备进行数据交互。
三、8255初始化编程步骤以下是8255初始化编程的详细步骤:步骤1:设置模式字模式字用于配置8255的工作模式,包括端口A、B、C的工作模式以及手动或自动方式。
模式字的格式如下:位|功能D7|A和C寄存器的工作模式选择D6|A和C寄存器的工作模式选择D5|A寄存器的操作模式选择D4|B和C寄存器的工作模式选择D3|B和C寄存器的工作模式选择D2|B寄存器的操作模式选择D1|模式选择标志:1为手动,0为自动D0|1为允许端口C访问,0为禁止端口C访问参考以下示例代码设置模式字:m o de=0b00100010;o u tp(0x80,mo de);//将模式字写入8255的控制寄存器步骤2:配置端口A和端口C针对端口A和端口C,需要进行以下设置:配置端口A1.如果端口A是输出端口,设置控制寄存器的位PA E为1。
2.如果端口A是输入端口,设置控制寄存器的位PA E为0。
参考以下示例代码进行端口A的配置:i f(o ut pu tP or tA){o u tp(0x82,0x01);//设置PA E为1,将端口A配置为输出}e ls e{o u tp(0x82,0x00);//设置PA E为0,将端口A配置为输入}配置端口C1.如果端口C是输出端口,设置控制寄存器的位PC F为1。
2.如果端口C是输入端口,设置控制寄存器的位PC F为0。
参考以下示例代码进行端口C的配置:i f(o ut pu tP or tC){o u tp(0x82,0x04);//设置PC F为1,将端口C配置为输出}e ls e{o u tp(0x82,0x00);//设置PC F为0,将端口C配置为输入}步骤3:配置端口B针对端口B,需要进行以下设置:配置端口B工作模式设置控制寄存器的位P BF E为1,将端口B配置为全双工模式。
8255的内部结构及编程方法
8255的内部结构及编程方法
8255是一个并行I/O接口芯片,其内部结构主要包括数据端口和控制端口。
数据端口有A、B、C三个,每个端口有8位数据输入/输出。
控制端口则用于控制数据端口的读/写操作。
在编程时,首先需要通过控制端口写入控制字,以设置数据端口的读/写方
式以及数据传输的方向。
控制字的格式为:D7-D3=0000,D2-D0分别对
应A、B、C三个数据端口的控制位。
例如,当D2-D0=000时,表示A口为输入,B口和C口为输出;当D2-D0=001时,表示B口为输入/输出,
而A口和C口为输出;以此类推。
具体来说,8255的内部结构如下:
1. 数据端口A、B、C:每个端口都有8位数据输入/输出,并具有数据输入锁存器和输出锁存器/缓冲器。
在实际应用中,这三个端口可作为独立输入
或输出端口使用。
2. 控制电路:分为A组和B组,用于控制各自对应的数据端口的工作方式
和读/写操作。
控制电路接收来自读/写控制逻辑电路的读/写命令,并根据
接收到的命令输出相应的控制信号。
3. 读/写控制逻辑电路:负责管理8255的数据传输过程。
它接收来自CPU 的地址和控制信号,通过内部控制逻辑向8255的各功能部件发出读/写控制命令。
4. 数据总线缓冲器:这是一个双向三态的8位数据缓冲器,用于连接8255与系统数据总线。
通过这个缓冲器,CPU可以实现与8255的数据传输。
以上内容仅供参考,如需获取更多关于8255的信息,建议咨询专业人士或查阅芯片手册。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8255A的内部结构,由三部分电路组成:与CPU的接口电路、内部控制逻辑电路和与外设连接的输入/输出接口电路。
D7~D0(data bus):三态、双向数据线,与CPU数据总线连接,用来传送数据。
(chip select):片选信号线,低电平有效时,芯片被选中。
A1, A0(port address):地址线,用来选择内部端口。
(read):读出信号线,低电平有效时,允许数据读出。
(write):写入信号线,低电平有效时,允许数据写入。
RESET(reset):复位信号线,高电平有效时,将所有内部寄存器(包括控制寄存器)清0。
PA7~PA0(port A):A口输入/输出信号线。
PB7~PB0(port B):B口输入/输出信号线。
PC7~PC0(port C):C口输入/输出信号线。
VCC:+5V电源。
GND:电源地线。
8255A的工作方式方式0:基本输入输出方式适用于无条件传送和查询方式的接口电路方式1:选通输入输出方式适用于查询和中断方式的接口电路方式2:双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路8255A初始化编程8255A的A,B,C三个端口的工作方式是在初始化编程时,通过向8255A的控制端口写入控制字来设定的。
8255A由编程写入的控制字有两个:方式控制字和置位/复位控制字。
方式控制字用于设置端口A, B, C的工作方式和数据传送方向;置位/复位控制字用于设置C口的PC7~PC0中某一条口线PC i(i=0~7)的电平。
两个控制字公用一个端口地址,由控制字的最高位作为区分这两个控制字的标志位。
(1)方式控制字的格式8255A工作方式控制字的格式如图7.11所示。
D0:设置PC3~PC0的数据传送方向。
D0=1为输入;D0=0为输出。
D1:设置B口的数据传送方向。
D1=1为输入;D1=0为输出.D2:设置B口的工作方式。
D2=1为方式1;D2=0为方式0。
D3:设置PC7~PC4的数据传送方向。
D3=1为输入;D3=0为输出。
D4:设置A口的数据传送方向。
D4=1为输入;D4=0为输出。
D6D5:设置A口的工作方式。
D6D5=00为方式0,D6D5=01为方式1,D6D5=10或11为方式2。
D7:方式控制字的标志位,恒为1。
例如,将8255A的A口设定为工作方式0输入,B口设定为工作方式1输出,C口没有定义,工作方式控制字为10010100B。
(2)C口置位/复位控制字的格式8255A C口置位/复位控制字的格式如图7.12所示。
8255A C口置位/复位控制字用于设置C口某一位口线PC i(i=0~7)输出为高电平(置位)或低电平(复位),对各端口的工作方式没有影响。
D3~D1:8种状态组合000~111对应表示PC0~PC7。
D0:用来设定指定口线PC i为高电平还是低电平。
当D0=1时,指定口线PC i输出高电平;当D0=0时,指定口线PC i输出低电平。
D6~D4没有定义,状态可以任意,通常设置为0。
D7位作为标志位,恒为0。
例如,若把PC2口线输出状态设置为高电平,则置位/复位控制字为00000101B。
(3)8255A初始化编程8255A的初始化编程比较简单,只需要将工作方式控制字写入控制端口即可。
另外,C 口置位/复位控制字的写入只是对C口指定位输出状态起作用,对A口和B口的工作方式没有影响,因此只有需要在初始化时指定C口某一位的输出电平时,才写入C口置位/复位控制字。
8255A的应用作为通用的并行接口电路芯片,825A具有广泛的应用应用在IBM PC/XT微机上应用于打印机接口电路连接简易键盘驱动LED数码管……1.8255A方式0的应用0方式只要用于一些通信双方不需要联络信号的场合,如读取开关量、LED显示、非编码盘、打印机接口等。
例1.某8086微机系统中有一片8255A,其端口A的PA7至PA0接8个开关K7~K0,B口的PB7~PB0接8个发光二极管LED7~LED0。
A口、B口均工作于方式0,硬件连接如下图所示,要求实现编程,将开关状态K7~K0送入LED7~LED0循环显示。
可编程通信接口8251A(USART)1.8251A的基本结构8251A的基本结构包括5个功能模块(1)数据总线缓冲器——用于暂存接收,发送数据,CPU发来的命令及8251的工作状态。
(2)读/写控制逻辑——接收来自CPU控制总线的控制信号,控制数据的传送方向。
(3)接收器——从接收数据线RXD上接收串行数据,按指定方式将其转换成并行数据。
(4)发送器——接收CPU送来的并行数据,按指定方式将其转换成串行数据通过发送数据线TXD发送出去。
(5)调制解调器控制电路——提供4个通用的控制信号,即(数据终端准备好),(数据设备准备好),(请求发送)和(准许发送),以备8251A与外设联络。
2.8251A的工作过程(1)8251A发送数据的过程①当发送缓冲器为空时,信号TXRDY有效(或状态字的D0=1),以示发送器准备好,等待CPU送入数据。
②CPU将要发送的数据写入8251A的发送缓冲器;③发送的数据进行“并→串”转换;④插入起始位、奇/偶位和停止位或同步字符等,数据一位一位从TXD端串行输出。
(2)8251A接收数据的过程①在RXD端检测到起始位或同步字符;②开始在RXD线上采集数据;③将接收到的数据“串→并”转换,并进行奇偶校验和检查错误;④将采样到的、经过变换的8位数据由接收缓冲器送入数据总线缓冲器;⑤信号RXRDY有效(或状态字的D1=1),以示8251A已接收到一个数据,待CPU读取。
3.8251A的初始化在如前面已经强调过的,在使用可编程接口之前必须进行初始化,即在使用8251A进行数据传输前,对其进行编程,将相关方式指令字、命令指令字写入8251A。
8251A初始化的具体步骤如图7-3所示。
图7-3 8251A初始化流程图4. CPU对8251A的操作和控制8251A有两个端口地址,偶地址为输入/输出数据端口地址,奇地址为控制/状态端口地址。
引脚线C/与A0连接:A0=0,访问输入/输出数据端口A0=1,访问控制/状态端口控制信号:、、C/、合成对8251A的操作如表7-1所示。
表7-1 CPU对8251A的操作5.8251A的控制字和状态字关于8251A的方式指令字、命令指令字和状态字,考生应着重对字中各位符号"0"、"1"含义的理解,掌握这些字的应用。
(1)方式指令字(控制字)格式方式指令字的格式如图7-4所示:[注]方式指令字的B2B1=00,此时8251A工作于同步方式,而字中S2S1的设置不起作用。
图7-4 8251A方式指令字格式(2)命令指令字(控制字)格式命令指令字的格式如图7-5所示:图7-5 8251A方式指令字格式(3)状态字8251A的状态字格式如图7-6所示:[注](i)状态位RX RDY、TXE、SYNDET和8251A的引脚信号RXRDY、TXE、SYNDET定义相同,电平一致;(ii)状态位TXRDY与8251A的引脚信号TXRDY定义相同,但条件不一样。
当发送缓冲器为空时,状态位TXRDY=1;而引脚信号TXRDY为高电平的条件是状态位TXRDY=1、命令控制字TXEN=1,且输入低电平。
(iii)采用查询方式利用8251A传送数据时,可通过对状态位RXRDY或TXRDY的测试来进行数据的传送。
图7-6 8251A的状态字格式二、8253-5的结构和功能8253-5为具有三个独立的16位计数器,它可用程序设置成多种工作方式,按十进制计数或二进制计数,最高计数速率可达2.6MHz。
8253-5能用于多种场合,例如作为可编程方波频率发生器、分频器、实时时钟、事件计数器以及程控单脉冲发生器等。
8253-5的结构框图及引脚排列如图7-17所示。
图7-17 8253-5的结构框图和引脚排列(a)结构框图; (b)引脚图24条引脚中,D 7~D 0为8条双向数据线;前一单元fix = v ns = "urn:schemas-microsoft-com:vml" />前一单元ferrelative="t" o:spt="75" coordsize="21600,21600">为写输入信号; 为读输入信号; 为片选输入信号;A 0、A 1为片内寄存器地址输入信号。
上述信号线都和CPU 相接。
三个计数器中每一个都有三条信号线;计数输入CLK 用于输入定时基准脉冲或计数脉冲;输出信号OUT 以相应的电平指示计数的完成,或输出脉冲波形;选通输入(门控输入)GATE 用于起动或禁止计数器的操作,以使计数器和计测对象同步。
每个计数器中有三个寄存器:①控制寄存器。
初始化时,将控制字寄存器内容写入该寄存器;②计数初值寄存器。
初始化时写入该计数器的初始值;③减1计数寄存器。
计数初值由计数初值寄存器送入减1计数寄存器,当计数输入端输入一个计数脉冲时,减1计数寄存器内容减1,当减到零时,输出端输出相应信号表示计数结束。
8253-5的读写控制逻辑接受系统总线的输入信号,当 接收到低电平时,8253-5根据 和 端的电平,控制本器件接受CPU 的访问,双向三态的数据总线缓冲器根据指令接收或发送数据。
这些数据是:编程8253工作方式的控制字;装入各计数器的初始值;读出各计数器的当前值。
用作寄存器选择的地址输入信号A 1和A 0决定CPU 访问的对象。
8253-5内部寄存器选择如表7-4所示。
表7-4 8253-5内部寄存器地址A 1 A 0 读 写 BIOS 使用的地址0 0 0 CNT 0 CNT 0 40H 0 0 1 CNT 1 CNT 1 41H 0 1 0CNT 2CNT 242H0 1 1 工作方式寄存器 43H1 X X 无 效工作方式寄存器(又称控制字寄存器)是只写寄存器,它接受写入的控制字。
8253-5内部有三个控制寄存器控制对应计数器的工作。
它决定计数器的工作方式,按十进制或二进制计数,并控制CPU 访问这些计数器的方法。
控制字中的6位作控制,2位用于选择计数器,其内容如下: 工作方式控制字: D 7D 6D 5D 4D 3D 2D 1D 0SC1SCRL1RLM2M1MBCD各字段说明见表7-5~表7-8。
表7-5 SC1,SC0——计数器选择SC1SC计数器SC1SC计数器00CNT010CNT2 01CNT111不用表7-6 RL1,RL——CPU读/写操作RL1RL操作方式00计数器锁存操作(供CPU读)01读/写计数器低8位10读/写计数器高8位11先读/写8位,再读/写高8位表7-7 M2M1M——工作方式选择M2M1M工作方式000方式0001方式1X10方式2X11方式3100方式4101方式5表7-8 BCD-计数方式选择016位二进制计数14位十进制(BCD)码计数8253-5的三个计数器是独立的16位减1计数器。