准双向口和双向口的区别
首页 > 单片机 嵌入式 > 准双向口和双向口的区别     2018-11-15 FPGA   51  

在最初的51系列单片机中

P0口:双向8位三态I/O口

P1口:准双向8位I/O口

P2口:准双向8位I/O口

P3口:准双向8位I/O口

这里尤其要主要准双向与双向三态I/O的区分:

P1口,P2口,P3口是3个8位准双向的I/O口,各口线在片内均有固定的上拉电阻,当这三个准双向I/O口作输入口使历时,要想该口先写1,另外准双向I/O口无高阻的“浮空”状态。

而双向口P0口线内无固定上拉电阻,由两个MOS管串接,既可开漏输出(开漏输出,本博客有解释)有可处于高阻的“浮空”状态,故称为双向三态I/O口。

"准"就是"基本上"的意思.

P0口是双向指的是它被用作地址/数据端口时,只有在这个时候,P0口才处于两个开关管推挽状态,当两个开关管都关闭时,才会呈现高阻状态.

当P0口用于一般I/O口时,内部接Vcc的那个开关管是与引脚(端口)脱离联络的,这个时候,只有拉地的那个开关管其作用,P0口作为输出,是必须外接上拉电阻的,不然就无法输出高电平;如果P0口作为输入,则必须先对于端口写1,使拉地的开关管断开,这个时候,如果不接上拉电阻,则是高阻状态,就是一个双向口,如果接上拉电阻,则本身输出高电平,对于输入信号的逻辑无影响(注意是对于逻辑无影响,对于实际参数有没有影响我不确定,但是我认为是有的).

双向与准双向,根本原则是双向包含了高阻这个状态,而不在因而否需要先写1或者者不写,P1~P3口由于有内部上拉电阻,因此无论如何不是双向;P0口内部无尚拉电阻,在处于数据/地址功能时,自动完成3态的转换,是双向,处于一般I/O口时,如果不接外部上拉,而且先向端口写了1,那么就处于高阻状态,此时,它也是一个人为的双向口,这与它处于地址/数据功能时的自动双向有区分,以及与P1~P3处于输入时输出锁存器为1是有区分的。

 

© Copyright 吾爱微电子 | 琥珀川