51单片机的I/O端口结构及应用特性
扫描二维码
随时随地手机看文章
1.锁存器加引脚的典型结构
51单片机的I/O端口都有内部总线实现操作控制。P0-P3四个I/O口都可以做普通I/O口,因此,要求具有输出锁存功能。内部总线有事分时操作,因此每个I/O端口都有相应的锁存器。然而I/O端口又是外部的输入/输出通道,必须有相应的引脚,故形成了I/O端口的锁存器加引脚的典型结构。
2.I/O口的复用功能
(1)I/O口的总线复用
80C51在使用并行总线扩展时,P0口可作为数据总 线口和低8位地址总线口,这是,P0为三态双向口。P0口输出总线的地址数据信号,P2口输出高8位地址信号。
(2)I/O口的功能复用
I/O口的P3为功能复用的I/O端口。端口有复用输出的控制端;引脚也有复用输入的控制端。
(3)准双向结构
P0,P1,P2,P3口做普通I/O口使用时,都是准双向口结构。准双向口的典型结构见P1口位结构图。准双向口的输入操作和输出操作本质不同,输入操作时读引脚状态;输出操作时对口锁存器的写入操作。有口锁存器和引脚电路可知:当有内部总线对只1或只0时,锁存器的0、1状态立即反应到引脚上。但是输入操作(读引脚)时,如果口锁存器的状态为0,引脚被嵌位在0状态,导致无法读出引脚的高电平输入。
3.I/O端口的应用特性
(1)引脚的自动识别。无论P0,P2口的总线复用,还是P3口的功能复用,内部资源会自动选择,不需要通过指令的状态选择。
(2)端口锁存器的读、该、写操作。许多涉及到I/O端口的操作,只是涉及口锁存器的读出、修改、写入的操作。这些指令都是一些逻辑运算指令、置位/清除指令、条件转移指令以及将I/O口作为目的地址的操作指令。
(3)读引脚的操作指令。如果某个I/O口被指定为源操作数,则为
读引脚的操作指令。例如,执行MOV A,P1时,P1口的引脚状态传送到累加器中,执行MOV P1,A是,指令则将累加器的内容传送到P1口锁存器中。
(4)准双向口的使用。由准双向口的结构可知,当口锁存器内容为0时Q为1,使输出场效应管导通,I/O引脚被嵌位在低电平,无论引脚输入1电平还是0电平,读引脚操作都是0状态。因此,准双向口作为输入口时,应先使锁存器置1,称之为置输入方式,然后在读引脚。例如,要将P1端口状态读入到累加器A中,应执行以下两条指令:
MOV P1,#0FFH ;P1口置输入方式
MOV A,P1 ;读P1口引脚状态到ACC中
(5)P0口做普通I/O口使用。当不使用并行扩展总线时,P0、P2口都可用作普通I/O口。但P0为开漏结构,作I/O口时必须外加上拉电阻。