51单片机IO(输入输出)口
51单片机 IO 口输入输出方式

51 单片机IO 口输入输出方式传统51单片机IO接口只可以作为标准双向IO接口,如果用其来驱动LED只能用灌电流的方式或是用三极管外扩驱动电路。
灌电流方式:LED正极接VCC,负极接IO口。
IO为高电平是LED两极电平相同,没有电流,LED熄灭;IO为低电平时,电流从VCC流入IO,LED点亮。
但是当你吧LED正极接在IO接口,负极接GND时,将IO接口置于高电平,LED会亮,但因为IO 接口上拉能力不足而使亮度不理想,可以用下面介绍的方式解决这个问题。
推挽工作方式:LED正负极分别接在两个IO口上,然后设置正极IO接口为推挽输出,负极IO接口为标准双向灌电流输入。
推挽方式具有强上拉能力,可以实现高电平驱动LED。
IO口的四种使用方法从I/O口的特性上看,标准51的P0口在作为I/O口使用时,是开漏结构,在实际应用中通常要添加上拉电阻;P1、P2、P3都是准双向I/O,内部有上拉电阻,既可作为输入又可以作为输出。
而LPC900系列单片机的I/O口特性有一定的不同,它们可以被配置成4种不同的工作模式:准双向I/O、推挽输出、高阻输入、开漏。
准双向I/O模式与标准51相比,虽然在内部结构上是不同的,但在用法上类同,比如要作为输入时都必须先写1置成高电平,然后才能去读引脚的电平状态。
!!!!!为什么是这样子?见下面分析。
推挽输出的特点是不论输出高电平还是低电平都能驱动较大的电流,比如输出高电平时可以直接点亮LED(要串联几百欧限流电阻),而在准双向I/O模式下很难办到。
高阻输入模式的特点是只能作为输入使用,但是可以获得比较高的输入阻抗,这在模拟比较器和ADC应用中是必需的。
开漏模式与准双向模式相似,但是没有内部上拉电阻。
开漏模式的优点是电气兼容性好,外部上拉电阻接3V电源,就能和3V逻辑器件接口,如果上拉电阻接5V电源,又可以与5V逻辑器件接口。
此外,开漏模式还可以方便地实现线与逻辑功能。
对于上面疑问的解释,有这样一个资料:高阻态这是一个数字电路里常见的术语,指的是电路的一种输出状态,既不是高电平也不是低电平,如果高阻态再输入下一级电路的话,对下级电路无任何影响,和没接一样,如果用万用表测的话有可能是高电平也有可能是低电平,随它后面接的东西定。
51单片机IO引脚IO口工作原理

51单片机IO引脚IO口工作原理一、IO引脚的基本特性1.输入与输出:IO引脚可以配置为输入(接收外部信号)或输出(发送信号到外部设备)。
2. 高低电平:IO引脚可以输出高电平(通常为Vcc电压)或低电平(通常为接地GND电压)。
3.上拉与下拉:IO引脚可以通过上拉电阻或下拉电阻实现电平的稳定。
4. 悬空状态:未配置输入的IO引脚可能处于悬空状态(floating),容易受到噪声的干扰。
二、IO口的工作原理1.寄存器配置:通过对相应的寄存器进行配置,可以选择IO引脚的工作模式(输入或输出)、电平(高或低)、上拉或下拉等。
2.IO端口的控制:通过对控制寄存器进行设置,可以使IO引脚产生相应的电平信号,控制外部设备的操作。
3.输入输出驱动能力:IO引脚的输出能力决定了其能够驱动的外部设备的负载能力。
对于较重的负载,需要考虑使用缓冲电路或者外部驱动芯片。
三、IO口的配置与操作1.选择IO引脚功能:通过寄存器配置,将IO引脚配置为输入模式(将输入电平传递给芯片内部)或输出模式(将芯片内部的电平输出到外部设备)。
2.设置电平状态:对于输出模式的引脚,可以通过寄存器来设置输出电平的状态,使其输出高电平或低电平。
3.上拉与下拉电阻:通过配置相关寄存器,可以启用上拉电阻(使引脚在悬空状态时拉高到高电平)或下拉电阻(使引脚在悬空状态时拉低到低电平)。
四、IO端口的应用1.输入:将外部设备的信号输入到IO引脚,通过编程来实现对信号的判断和处理。
例如,读取按键的状态、读取传感器的数据等。
2.输出:将芯片内部产生的信号输出到外部设备,用于控制和驱动外部设备的操作。
例如,控制LED灯的亮灭、控制继电器的开关等。
3.通信:通过IO引脚与其他设备(例如外围设备、传感器、通信模块等)进行通信。
4.扩展IO口:通过外部的IO扩展芯片或者接口芯片,可以扩展更多的IO口。
总结:51单片机的IO口是其与外部设备通信的接口,通过配置相关寄存器来选择引脚的工作模式、电平和电阻状态。
51单片机高低电平

关于51单片机输入/输出口电压和电流以及加驱动电路的问题悬赏分:5 - 解决时间:2007-9-13 08:24各位好,我在查找用51单片机I/O模拟电压和电流以及用三极管驱动相关资料时看到下面的三种不同表述,请问哪一种是正确的呢,希望高手能综合点解释一下,谢谢!!1、51单片机I/O口为集电极上拉输出方式,高电平输出电流等于上拉电阻的电流,这个电流比较小,低电平输出是内部晶体管吸收的电流,最大可以达到10mA,但是整个端口的总电流不能超过24mA。
电平低于0.7V就是低电平,高于1.8V就是高电平。
在这个之间不确定。
2、51单片机的I/O口可以理解为一个开路的NPN三极管加一个上拉电阻,驱动PNP三极管最方便,驱动NPN三极管也没有问题,是靠上拉电阻驱动,所以不好。
况且51单片机复位时所有I/O口是高电平,就造成NPN三极管导通,这在大多数电路里是不允许的。
复位时,I/O口为高阻的单片机驱动三极管就无所谓了。
3、51系列单片机引脚电平与TTL电平兼容,也就是输入高电位大于2.0V,低电位小于0.8V,输出高电位大于2.4V,低电位小于0.4V。
一般情况下,若电源电压为5V,输出高电位电压也是5V左右,低电位电压接近0V.看上面的第三种论述好象还需要区分输入和输出两种情况,我都晕了。
问题补充:上面的论述中提到了输入和输出两中情况,输入是指象电源等这样的输入还是说P口从外部读取数据时的“输入”?而输出就应该是P口正常的输出了吧?提问者:zhangxb1393112 - 初学弟子一级最佳答案作为输出端口:P0可吸收可输出电流,多大不是很清楚,驱动LED没问题,驱动NPN、PNP 三极管都没有问题。
P1P2P3只能吸收电流,不能输出电流(如第一种说法中提的“这个电流比较小”,而第二种说法里的“驱动NPN三极管也没有问题”就需要实验证明一下了,因为这个电流实在太小了),如特别需要,可外接上拉电阻。
输出电流指得是输出1时带负载,吸收电流指得是输出0时带负载。
51单片机并行io口工作原理

51单片机并行io口工作原理51单片机是一种常用的嵌入式系统开发平台,具有强大的并行IO 口功能。
本文将介绍并行IO口的工作原理及其在51单片机中的应用。
我们来了解一下什么是并行IO口。
并行IO口是指可以同时进行多个输入输出操作的接口。
在51单片机中,通过并行IO口可以实现与外部设备的数据交互,如控制LED灯、读取按键状态等。
在51单片机中,有两种类型的IO口:通用IO口和特殊功能IO口。
通用IO口可以进行输入输出操作,而特殊功能IO口则有特定的功能,如串口通信、定时器等。
并行IO口的工作原理是通过对寄存器的写入和读取来控制IO口的状态。
在51单片机中,有4个8位寄存器,分别是P0、P1、P2、P3。
P0口的每一位对应一个IO口,P1、P2、P3口则是通过外部扩展芯片来实现更多的IO口。
通过向寄存器中写入数据,可以控制IO口的输出状态。
例如,向P0寄存器写入0x55,即二进制01010101,可以控制P0口的1、3、5、7位输出高电平,2、4、6、8位输出低电平。
通过读取寄存器中的数据,可以获取IO口当前的输入状态。
例如,读取P1寄存器的值,可以获取P1口每一位的输入状态。
在51单片机中,可以通过对寄存器的位操作来实现对单个IO口的控制。
例如,通过设置P2口的某一位为1,可以将对应的IO口设置为输出模式;通过设置P2口的某一位为0,可以将对应的IO口设置为输入模式。
通过对寄存器的位操作,可以实现对多个IO口的同时控制。
除了通过编程对寄存器进行操作外,51单片机还提供了一些特殊功能IO口,可以直接使用这些IO口来实现一些常见的功能。
例如,P3.0和P3.1口可以作为外部中断输入口,P3.3和P3.4口可以作为定时器输入口,P3.5和P3.6口可以作为串口通信口。
在实际应用中,我们可以根据需要将不同的外部设备连接到51单片机的IO口上,通过对寄存器的编程,控制外部设备的状态。
例如,我们可以将LED灯连接到P0口的某一位上,通过对P0寄存器的位操作,控制LED灯的亮灭;我们也可以将按键连接到P1口的某一位上,通过读取P1寄存器的值,获取按键的状态。
51单片机资料-单片机IO口介绍

20
综上所述:当P0作为I/O口使用时,特别是作 为输出时,输出级属于开漏电路,必须外接 上拉电阻才会有高电平输出;如果作为输入, 必须先向相应的锁存器写“1”,才不会影响 输入电平。
DQ CLK Q
T1
T2 MUX
P0.n P0口 引脚
读引脚
5
驱动场效应管T2栅极接通。故内部总线与P0口同相。由 于输出驱动级是漏极开路电路,若驱动NMOS或其
它拉流负载时,需要外接上拉电阻。P0的输出级可驱动
8个LSTTL负载。
读锁存器
地址/数据 VCC 控制
内部总线 写锁存器
DQ CLK Q
读锁存器
地址/数据 VCC 控制
内部总线 写锁存器
DQ CLK Q
T1
P0.n P0口
T2
引脚
MUX
读引脚
9
P0口必须接上拉电阻;
在读信号之前数据之前,先要向相应的锁存器做写1操作的I/O口 称为准双向口;
三态输入缓冲器的作用:
VCC
(ANL P0,A)
OUTPUT
Q1
P0i
9 01 3
GND
①P1口的一位的结构
它由一个输出锁存器、两个三态输入缓冲器和输出驱
动电路组成----准双向口。
VCC
读锁存器
内部总线 写锁存器
DQ CLK Q
R
P1.n P1口
T
引脚
读引脚
51单片机IO口工作原理

51单片机IO口工作原理51单片机(英文名为8051 Microcontroller)是一种由Intel公司于1980年推出的8位单片机,广泛应用于嵌入式系统中。
作为一种高性能、低功耗的单片机,其周围有多个IO口(Input/Output ports),可以用来实现数字输入、输出、模拟输入、输出等功能。
下面将详细介绍51单片机IO口的工作原理。
1.51单片机的IO口介绍51单片机共有4个8位的IO口,依次为P0、P1、P2和P3、每个IO 口都是一个8位的寄存器,称为端口寄存器(port register),用于和外部设备进行数据通信。
其中,P0是一个具有双重输入和输出特性的端口,可以配置为输入口或输出口;P1和P3是纯输出端口;P2是输入输出混合端口。
2.IO口的工作模式IO口的工作模式由P0、P1、P2和P3的寄存器位来配置。
每个IO口的寄存器位都有对应的功能和控制位,通过设置这些位可以控制IO口的工作模式和输出状态。
2.1输入模式在输入模式下,IO口作为输入口,接受来自外部器件的信号。
通过将对应的寄存器位设置为1,可以将IO口配置为输入模式。
在输入模式下,端口寄存器的位对应的为悬空状态,可以通过主动上拉或下拉方法来确保IO口的状态。
2.2输出模式在输出模式下,IO口作为输出口,通过控制寄存器位的值可以输出高电平或低电平信号。
将对应的寄存器位设置为0,可以将IO口配置为输出模式。
在输出模式下,直接修改端口寄存器的位即可改变IO口的输出状态。
对于纯输出端口,即P1和P3,更方便地改变IO口的状态可以通过直接操作对应的位。
2.3产生中断IO口还可以通过设置为中断产生源的方式来实现中断功能。
在输入模式下,将对应的寄存器位设置为1,即可配置IO口为中断输入。
当IO口检测到中断触发条件(例如边沿触发、电平触发等),会触发相应的中断服务程序(ISR)。
3.IO口的读取和写入操作为了读取和写入IO口的状态,可以直接访问相应的寄存器。
MCS-51单片机IO口详解

单片机IO口结构及上拉电阻MCS-51有4组8位I/O口:P0、P1、P2和P3口,P1、P2和P3为准双向口,P0口则为双向三态输入输出口,下面我们分别介绍这几个口线。
一、P0口和P2口图1和图2为P0口和P2口其中一位的电路图。
由图可见,电路中包含一个数据输出锁存器(D触发器)和两个三态数据输入缓冲器,另外还有一个数据输出的驱动(T1和T2)和控制电路。
这两组口线用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口,而不能象P1、P3直接用作输出口。
它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。
图1 单片机P0口内部一位结构图图2 单片机P0口内部一位结构图P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE选通作为地址总线的低8位输出口AB0-AB7。
外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD读写信号选通,因为2^16=64k,所以MCS-51最大可外接64kB的程序存储器和数据存储器。
二、P1口图3为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
图3 单片机P2口内部一位结构图作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。
需要说明的是,作为输入口使用时,有两种情况:1.首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读—修改—写操作,象JBC(逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。
2.读P1口线状态时,打开三态门G2,将外部状态读入CPU。
51单片机io口工作的基本原理

51单片机io口工作的基本原理51单片机是一种广泛应用于嵌入式系统开发的微控制器,其基本原理是通过控制输入/输出(I/O)口的电平状态来实现与外部设备的连接与交互。
单片机的I/O口被称为通用I/O口(General Purpose I/O,GPIO),可以通过设置其输入与输出模式以及控制电平状态来与外部设备进行数据的传输与控制。
在51单片机中,GPIO口可以进行两种模式的设置:输入模式和输出模式。
在输入模式下,GPIO口可以将外部设备的电平状态作为输入信号接收,并将该信号传送至单片机内部进行处理。
在输出模式下,单片机可以通过控制GPIO口的电平状态向外部设备发送数据或控制信号。
当GPIO口设置为输入模式时,单片机内部会初始化一个输入缓冲区,用于存储外部设备传入的电平信号。
当外部设备改变电平状态时,单片机会及时检测到,并将相应的电平状态记录在输入缓冲区中。
通过读取输入缓冲区的数值,单片机可以获取外部设备传入的数据。
这样,单片机就能够实现与外部设备的数据交互。
当GPIO口设置为输出模式时,单片机内部会初始化一个输出缓冲区,用于存储将要发送至外部设备的数据。
根据所需的传输方式,单片机可以通过改变输出缓冲区的数值来控制GPIO口的电平状态。
当输出缓冲区的数值发生改变时,单片机会通过输出电路将该数值转换为相应的电平状态,从而将数据或控制信号送至外部设备。
除了设置输入/输出模式以及控制电平状态之外,单片机还可以对GPIO口进行中断配置以及上下拉电阻的设置。
中断配置可以实现在特定事件发生时自动跳转至相应的中断服务函数,从而实现对外部设备的实时响应。
上下拉电阻则可以提供电平稳定性,防止输入口因为无输入信号而漂移到不确定状态。
综上所述,51单片机的I/O口工作基于设置输入/输出模式以及控制电平状态,通过与外部设备进行电平交互来实现数据的传输与控制。
通过合理配置中断和上下拉电阻,单片机可以实现高效稳定的IO口工作,为嵌入式系统开发提供强大的功能与灵活性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MCS-51使用统一编址的方式 每一接口芯片中的一个功能寄存器(端口)的地址 就相当于一个RAM单元。 I/O数据的几种传送方式
为实现和不同的外设的速度匹配,I/O接口必须
根据不同外设选择恰当的I/O数据传送方式。
I/O数据传送的几种传送方式是:
(1)同步传送(2)查询传送(3)中断传送。
9
1.同步传送方式(无条件传送) 当外设速度和单片机的速度相比拟时,常采用同步传
22
MOV A,#60H MOVX @DPTR,A
;60H→A ;将60H送C口输出
8255A接口应用举例2
对端口C的置位/复位。先 将C口的PC5置“1”,然后将 其置“0”
MOV MOV MOVX MOV MOVX DPTR,#0FF7FH; 8255A芯片 控制口地址 A,#0BH; 方式控制字 送入A @DPTR,A; 方式控制字 送入8255A PC5=1 A,#0AH; 方式控制字 送入A @DPTR,A; 方式控制字 送入8255A ,PC5=0
第10讲 I/O口的扩展
电气工程系 赵志衡 E-mail:zhzhhe@
1
I/O扩展主要内容
– – – – – 可编程I/O芯片8255A的扩展 可编程I/O芯片8155H的扩展 计数器芯片8253的扩展 利用串口对并行口的扩展 采用通用TTL芯片的扩展电路
2
本讲主要内容
• • • • I/O扩展概述 8255A的工作原理及其扩展 采用通用TTL芯片的I/O扩展 编程举例
端口C按位置位/复位控制字
当口A、B工作于非方式0时,要使用到一些C口线, 对于这些已被占用的C口不要进行置位、清零操作。 23
关于8255A的使用
• 一般让8255A工作于方式0,此时MCS-51 相当于多了3个I/O口,其中一个(C口) 既可以按字节操作,又可以按位操作。 • 在使用方式1、方式2时,一定要注意对C 口控制时序的理解,而且一定要接支持 这种时序的外设,例如打印机等。 通常8255A可以由方式1、方式2实现 的控制,也可以由方式0实现。
• 功能说明:74LS244
是8个三态线驱动器, 20个管脚,2个4输入端 (1A1~1A4)、 (2A1~2A4); 2个4 输出端(1Y1~1Y4)、 (2Y1~2Y4),两个控 制端1G、2G(低电平 有效,否则三态输出), 另外,还有电源、地。
单片机具有多个输入设备时,使得数据总线上 可“挂”有多个数据源,为不发生冲突,只允许当 前正在进行数据传送的数据源使用数据总线,其余 的应处于隔离状态。
6
I/O端口的编址 首先清楚I/O接口(Interface)和I/O端口(Port) 的概念。 I/O接口:是指单片机与外设间的I/O接口芯片。 I/O端口:简称I/O口,指具有端口地址的寄存器或 缓冲器。 一个I/O接口芯片可以有多个I/O端口, (1)数据口(2)命令口(3)状态口 I/O端口编址是给所有I/O接口中的寄存器分配地址。
地址:8000H Mov dptr,#8000h Mov a,#00h Movx @dptr,a
U? A 2 C LK 3 1 7 4 LS3 2 V5 RU N U? D0 D1 D2 D3 D4 D5 D6 D7 C LK Vc c 3 4 7 8 13 14 17 18 11 1 D1 D2 D3 D4 D5 D6 D7 D8 C LK C LR 7 4 LS2 7 3 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 2 5 6 9 12 15 16 19 UP1 UP2 B EW 1 B EW 2 DW 1 DW 2 BJ RU N BJ V6 CS0 DW 2 1 W R DW 1 3
常用的I/O接口电路芯片
Intel公司的配套可编程I/O接口芯片的种类齐全, 为扩展I/O接口提供了很大的方便。或者采用通用 的TTL集成电路芯片。
11
小结
• 原因:MCS-51单片机本身提供的口线不多 (P1、P3) • 方法:MCS-51单片机将外扩I/O和外部数据存 储器统一编址,用户可以把一部分外部数据存 储器的空间(64k)作为I/O地址,通过MOVX 指令完成对外扩口的输入输出。 • 实现:采用专门的外围接口芯片8155,8255等 采用一般的TTL芯片74LS377,74LS373等
• 功能说明:74LS377 是8D锁存器,20个 管脚,8个输入 (D0~D7)、8个输 出(Q0~Q7)、一 个片选E、一个锁存 端时钟(CLK)上 升沿有效,另外, 还有电源、地。
26
74LS377扩展为输出口
V2 UP 1 UP 2 3 2 1 R29 22 1 VC C V3 BE W1 BE W2 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 2 5 6 9 12 15 16 19 UP1 UP2 B EW 1 B EW 2 DW 1 DW 2 BJ RU N V5 RU N C LK E 74 H C 3 77 R ED V6 BJ R33 22 1 R ED V7 R34 22 1 R ED 22 1 R32 DW 2 1 DW 1 3 2 R31 22 1 V4 3 2 U8 D0 D1 D2 D3 D4 D5 D6 D7 W R A1 5 3 4 7 8 13 14 17 18 11 1 D0 D1 D2 D3 D4 D5 D6 D7 1 R30 22 1
7
I/O端口编址两种方式:独立编址与统一编址 1.独立编址方式
I/O寄存器地址空间和存储器地址空间分开编址,但
需专门读写I/O的指令和控制信号。
2.统一编址方式
MCS51采用这种方式
I/O寄存器与数据存储器单元同等对待,统一编址。 不需要专门的I/O指令,直接使用访问数据存储器的指 令进行I/O操作,简单、方便且功能强(MOVX)。
8255A工作方式0(基本I/O方式)
– – – – 两个8位端口和两个4位端口 任一个端口都可以输入输出 输出锁存而输入不锁存 数据无条件传送,不需要状态端口
17
8255A工作方式1(选通I/O方式)
– 可用作1或2个选通的输入或输出口 – 每个端口包括8位数据口和3条固定的控制线 – 可选择1个端口工作于方式1,余下的工作在 方式0 – 可选择2个端口都工作于方式1
2
3
• 74LS377作为输出 口,试确定其地址, E接P2.7;CLK接 WR,377的输入端 接8031的数据口, 输出端接8个发光 二极管。 地址:7FFFH Mov dptr,#7fffh Mov a,#00h Movx @dptr,a 27
4
Tit le
Siz e B
Da t Fil e 5
B口:
C口:
FF7DH
FF7EH
控制寄存器:
FF7FH
确定地址的原则:未使用到的片选地址线置1
21
软件编程
要求8255A工作在方式0,且A口作为输入,B口、 C口作为输出,程序如下:
MOV
MOV MOVX MOV MOVX MOV MOV MOVX MOV
A,#90H
DPTR,#0FF7FH @DPTR,A
V4
2
R31 22 1 R32 22 1
R ED
R33 22 1 R ED V7 R34 22 1 R ED
29
74LS244作为输入口
U? 2 4 6 8 11 13 15 17 1 19 1A 1 1A 2 1A 3 1A 4 2A 1 2A 2 2A 3 2A 4 1G 2G 7 4 LS2 4 4 1Y 1 1Y 2 1Y 3 1Y 4 2Y 1 2Y 2 2Y 3 2Y 4 18 16 14 12 9 7 5 3
A1 0 0 1 0 0 1 1 x 1 x A0 0 1 0 0 1 0 1 x 1 x RD 0 0 0 1 1 1 1 x 0 1 WR 1 1 1 0 0 0 0 x 1 1 CS 0 0 0 0 0 0 0 1 0 0 操作 读端口A 读端口B 读端口C 写端口A 写端口B 写端口C 写控制字寄存器 数据总线为三态 非法状态 数据总线为三态
18
工作于方式1下的端口
选通输入/输出工作方式。A口和B口通常用于I/O数 据传送,C口用作A口和B口的联络线,以中断或查询 的方式传送数据。
19
8255A接口应用举例1
• 8255A与8031接口电路
20
8255A的接口应用举例1
端口地址确定
8255A各端口寄存器的地址为: A口: FF7CH
24
采用通用TTL芯片的I/O口 扩展
• 在许多情况下,有些开关量或并行数据需 直接输出或输入。 • 可采用8D锁存器和三态驱动门等进行扩展。 (74LS377、74LS273、74LS244等)Βιβλιοθήκη 2574LS377作为输出口
U? 3 4 7 8 13 14 17 18 11 1 D0 D1 D2 D3 D4 D5 D6 D7 C LK E 7 4 LS3 7 7 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 2 5 6 9 12 15 16 19
1.实现和不同外设的速度匹配
大多数的外设的速度很慢,无法和µs量级的单片机 速度相比。 单片机只有在确认外设已为数据传送做好准备的前提 下才能进行I/O操作。 想知道外设是否准备好,需I/O接口电路与外设之 间传送状态信息。
5
2. 输出数据锁存
由于单片机工作速度快,数据在数据总线上保留的时 间十分短暂,无法满足慢速外设的数据接收。I/O电路 应具有数据锁存器,以保证接收设备可靠接收。 3. 输入数据三态缓冲
12
可编程并行I/O芯片8255A
• 引脚及结构介绍
– 3个8位并行口PA、PB、PC 。 PC可分为高4位与低4位 – D0~D7数据端口 – A,B两组控制电路 – 双向三态数据接口 – 控制总线接口 – 复位控制RESET,高电平有效