日志档案

发表于 2007-1-4 2:42:05

8

标签: 上拉电阻  

关于51单片机P0口的结构及上拉问题

首先请看P0口的结构:

点击看大图

说明:
1。P0作为地址数据总线时,T1和T2是一起工作的,构成推挽结构。高电平时,T1打开,T2截止;低电平时,T1截止,T2打开。这种情况下不用外接上拉电阻.而且,当T1打开,T2截止,输出高电平的时候,因为内部电源直接通过T1输出到P0口线上,因此驱动能力(电流)可以很大,这就是为什么教科书上说可以"驱动8个TTL负载"的原因.

2。P0作为一般端口时,T1就永远的截止,T2根据输出数据0导通和1截止,导通时拉地,当然是输出低电平;截止时,PO口就没有输出了,(注意,这种情况就是所谓的高阻浮空状态),如果加上外部上拉电阻,输出就变成了高电平1.

3。其他端口P1 P2 P3,在内部直接将P1口中的T1换成了上拉电阻,所以不用外接,但内部上拉电阻太大,电流太小,有时因为电流不够,也会再并一个上拉电阻。

(以上来自中山单片机学习论坛,有删减)

4.在某个时刻,P0口上输出的是作为总线的地址数据信号还是作为普通I/O口的电平信号,是依靠多路开关MUX来切换的.而MUX的切换,又是根据单片机指令来区分的.当指令为外部存储器/IO口读/写时,比如 MOVX  A,@DPTR ,MUX是切换到地址/数据总线上;而当普通MOV传送指令操作P0口时,MUX是切换到内部总线上的.

 

PS:

Because Ports 1, 2, and 3 have fixed internal pullups, they are sometimes called “quasi- bidirectional” ports.

我的e文不怎么样,参照金山在线后的解释:
因为端口1、2、3有固定的内部上拉,所以有时候他们被称为"准双向"口.

Port 0, on the other hand, is considered “true” bidirectional, because when configured as an input it floats.  
   
端口0, 从另外一方面来说,就被 认为是"真正的"双向,因为当它被设置为输入的时候是浮空(高阻态)的.     

本文为原创,转载请注明出处.  机器文学

  

系统分类: 单片机   |   用户分类: 单片机   |   来源: 原创   |   【推荐给朋友】

    阅读(3725)    回复(7)  

投一票您将和博主都有获奖机会!

  • 陈斐然

    2007-3-14 18:38:23

    顶 虽然现在看不明白 但是以后会看的明白的~~

  • Moreagain

    2007-1-4 14:10:45

    谢谢!

  • woaizybian

    2007-1-9 9:18:31

    好谢谢!

  • cocappjj

    2007-1-5 16:04:23

    谢谢:D

  • wang1jin

    2007-1-10 17:39:41

    我现在慢慢学单片机.以后有机会多指点下.HE HE...

     

    帮你多投几票.HE HE.

  • wondy

    2007-1-10 9:07:19

    好东西

  • 天涯

    2007-5-12 21:00:40

    好,太好了!顶