ZKX's LAB

单片机中P0口作为输出为什么要上拉电阻? 单片机p0口为什么不加上拉电阻

2020-09-30知识8

51单片机P0口为什么要接上拉电阻? P0口和其它三个口的2113内部电路是5261不同的,如下图P0口是接在两个4102三极管D0和D1之间1653的,而P1-P3口的上部是接一个电阻的。P0口的上面那个三极管D0是在进扩展存储器或扩展总线时使用MOVX指令时才会控制它的导通和截止,在不用此指令时都是截止的。在平常我们使用如:P0_1=0 P0_1=1这些语句时控制的都是下面那个三极管D1。我们先假设P1口接一个74HC373,来看一看它的等效图当AT89S51的P1口上接了74HC373后就等于接了一个负载,如上图右边。一般来说这些数字电路的输入阻抗都很大,都在几百K到上兆欧姆,而P1口内的电阻R一般在几十K以内。如上图,当我们发出指令P1=0时,三极管D导通,见中间的等效图,这时P1点的电位为0。当发出P1=1的指令后,三极管D截止,见右边等效图,因为Rx的阻值要比R的阻值大得多,因此P1点的电位是接近电源电压的。即高电平。我们再来看看P0口接负载时的图当P0=0时,等效图是中间的,三极管D1导通,P0点的电位为0。而当P0=1时,等效图是右边的,三极管D1截止,而上面的三极管D0始终是截止的,这样P0点就等效于悬空了,它处在不稳定状态,P0点又是RX的高阻抗输入点,很容易受到外界和周围电路的干扰从而直接影响到74HC373的。

单片机中P0口作为输出为什么要上拉电阻? 单片机p0口为什么不加上拉电阻

单片机P0口上拉电阻怎么接?还有为什么只有P0口要接上拉电阻和什么时候需要接下拉电阻??? 电阻一端接IO口另一端接VCC,这样就是上拉了。由于P0口的IO是开漏方式的,不接上拉电阻无法输出高电平,所以必须接上拉电阻。下拉电阻用的不多,这个要看具体情况了。

单片机中P0口作为输出为什么要上拉电阻? 单片机p0口为什么不加上拉电阻

随机阅读

qrcode
访问手机版