技术文档

单片机p0上拉电阻 什么是上拉电阻?51单片机P0口上的上拉电阻有什么用?

小编 2024-10-06 技术文档 23 0

什么是上拉电阻?51单片机P0口上的上拉电阻有什么用?

这次简单说说上拉电阻,那问题来了,什么是上拉电阻?上拉电阻从概念上理解就是一个电阻一端接到电源正极,一端接到输出端。下图就是一个简单的上拉电阻,如果没有这个电阻R,则I/O口和VCC就没有直接连接关系,如果用电阻连接起来就是一个上拉电阻。

从上图其实也能看出来,这个上拉电阻R能够避免I/O口悬空,这样就能稳定输出端的电位,如果觉得不好理解可以通过下面一个实例来看一下,下面这个YS276就是一个霍尔元件,如果检测到磁场2脚会输出低电平,左面那个图加了上拉电阻,右面那个图没加上拉电阻。

如果没有磁场对于霍尔元件本身来说2脚会处于高阻态,也就是电阻很大,左面那个电路由于接了一个电阻,所以2脚电位几乎就是电源电压(由于2脚输入电阻很大,电阻R中几乎没有电流),但是对于右面那个电路,由于没加这个电阻,实际上2脚输出状态并不是很确定,如果用右面那个电路做一个检测到磁场就报警,最后的结果可能是只要通上电就一直在报警。

学过51单片机的朋友可能知道51单片机的P0口需要加一个上拉电阻,这个上拉电阻的作用其实就和上面那个电路有相似的地方。我们来看一下这个P0口输出端,只看用黑色框框起来的部分,在T1管子的左侧有个与门电路,与门电路有两个输入端,实际上输入端总有低电平,所以这个与门电路总是输出低电平,因此T1管处于截止状态。

如果T2管栅极有高电平出现,那么T2管会导通,这时候T2管漏源之间的压降很小,因此P0.X输出低电平,相反如果T2管栅极输入低电平,T2管就会截止,这时候P0.X就处于高阻态,会出现和上面那种电路一样的情况,因此需要在P0口加一个上拉电阻

实际上上拉电阻不仅限于稳定输出端的电位,例如CMOS芯片上输入电阻一般都很大,为了防止静电造成损坏,不用的管脚不能悬空,一般都会接上拉电阻以保护内部电路;加上上拉电阻还能提高输出端的电流,增强引脚的驱动能力,这在单片机中也比较常用;上拉电阻由于连着电源正极,所以也能提高输出端高电平的电压等等。

51单片机P0口上拉电阻的选择

作为I/O口输出的时候时,输出低电平为0 输出高电平为高组态(并非5V,相当于悬空状态,也就是说P0 口不能真正的输出高电平)。给所接的负载提供电流,因此必须接(一电阻连接到VCC),由电源通过这个上拉电阻给负载提供电流。

P0作输入时不需要上拉电阻,但要先置1。因为P0口作一般I/O口时上拉场效应管一直截止,所以如果不置1,下拉场效应管会导通,永远只能读到0。因此在输入前置1,使下拉场效应管截止,端口会处于高阻浮空状态,才可以正确读入数据。

由于P0口内部没有上拉电阻,是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的。

1.一般的P0口在作为地址/数据复用时不接上拉电阻。

2.作为一般的I/O口时用时,由于内部没有上拉电阻,故要接上上拉电阻!!

3.当p0口用来驱动PNP管子的时候,就不需要上拉电阻,因为此时的低电平有效;

4.当P0口用来驱动NPN管子的时候,就需要上拉电阻的,因为此时只有当P0为1时候,才能够使后级端导通。 简单一点说就是它要驱动LCD显示屏显示就必须要有电源驱动,否则亮不了,而恰好P0口没有电源,所以就要外接电源,接上电阻是起到限流的作用;如果接P1、P2、P3端口就不用外接电源和电阻了。

P0口是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的;5、51单片机的P0口用作数据和地址总线时不必加上拉电阻。

有些IC的驱动能力并不强,如果P0口作为输入而加了不必要的上拉,有可能驱动IC无法将其拉回到低电平,从而使输入失败!

如果是驱动led,那么用1K左右的就行了。如果希望亮度大一些,电阻可减小,最小不要小于200欧姆,否则电流太大;如果希望亮度小一些,电阻可增大,增加到多少呢,主要看亮度情况,以亮度合适为准,一般来说超过3K以上时,亮度就很弱了,但是对于超高亮度的LED,有时候电阻为10K时觉得亮度还能够用。通常就用1k的。对于驱动光耦合器,如果是高电位有效,即耦合器输入端接端口和地之间,那么和LED的情况是一样的;如果是低电位有效,即耦合器输入端接端口和VCC之间,那么除了要串接一个1——4.7k之间的电阻以外,同时上拉电阻的阻值就可以用的特别大,用100k——500K之间的都行,当然用10K的也可以,但是考虑到省电问题,没有必要用那么小的。

对于驱动晶体管,又分为PNP和NPN管两种情况:对于NPN,毫无疑问NPN管是高电平有效的,因此上拉电阻的阻值用2K——20K之间的,具体的大小还要看晶体管的集电极接的是什么负载,对于LED类负载,由于发管电流很小,因此上拉电阻的阻值可以用20k的,但是对于管子的集电极为继电器负载时,由于集电极电流大,因此上拉电阻的阻值最好不要大于4.7K,有时候甚至用2K的。对于PNP管,毫无疑问PNP管是低电平有效的,因此上拉电阻的阻值用100K以上的就行了,且管子的基极必须串接一个1——10K的电阻,阻值的大小要看管子集电极的负载是什么,对于LED类负载,由于发光电流很小,因此基极串接的电阻的阻值可以用20k的,但是对于管子的集电极为继电器负载时,由于集电极电流大,因此基极电阻的阻值最好不要大于4.7K。

对于驱动TTL集成电路,上拉电阻的阻值要用1——10K之间的,有时候电阻太大的话是拉不起来的,因此用的阻值较小。但是对于CMOS集成电路,上拉电阻的阻值就可以用的很大,一般不小于20K,我通常用100K的,实际上对于CMOS电路,上拉电阻的阻值用1M的也是可以的,但是要注意上拉电阻的阻值太大的时候,容易产生干扰,尤其是线路板的线条很长的时候,这种干扰更严重,这种情况下上拉电阻不宜过大,一般要小于100K,有时候甚至小于10K。

根据以上分析,上拉电阻的阻值的选取是有很多讲究的,不能乱用。

相关问答

【为什么51 单片机 需要接 上拉电阻 ?怎么接?】作业帮

[最佳回答]只有P0口需要上拉.因为P1\P2\P3口在内部已经上拉了,不上拉,P0口不能输出高电平.当P0口高电平有效时要外接上拉提供驱动电流.只有P0口需要上拉.因为...

【我始终无法理解 单片机 的PO口要外接 上拉电阻 才能输出高电平...

[最佳回答]你要知道上拉是怎么个接法.P0总共8个IO,每个IO分别接一个电阻,电阻的另外一端是接到了电源正级上面.怎么会导致电势降低呢?只会让I/O的输出电流...

p0 .7为什么加 上拉电阻 ?

P0口作为I/O口输出的时候时,输出低电平为0输出高电平为高组态(并非5V,相当于悬空状态,也就是说P0口不能真正的输出高电平)。给所接的负载提供电流,因此必须...

为什么 单片机p0 口要接 上拉电阻 ?

单片机P0口(或其他输入口)接上拉电阻的主要原因是为了防止输入信号的漂移,从而保证输入信号的稳定性和可靠性。当单片机的输入引脚没有接任何信号时,引脚上...

单片机P0 口接 上拉电阻 是否真的有必要,解决方案?

有的单片机(增强型51单片机)P0口可以配置为推挽或者弱上拉,肯定不用外接上拉了有的单片机不能配置,如果你想低电平时输出电流,自然也不用接上拉电阻如果不能...

51 单片机 肿么 加上拉电阻 ?看书没看懂~~~-ZOL问答

1、某些型号单片机内置了上拉电阻,可以通过程序来设定IO口为上拉模式。2、对于不带上拉或者上拉太弱的单片机,可以通过外加上拉电阻的方式,同时将对应IO口设置...

51 单片机 p0 口和p2口作为i/o口使用,均需要接 上拉电阻 -ZOL问答

都用低电平驱动,不要上拉电阻你要高电平,就P0口要上拉电阻,且可以另接电压至12V有用(0)回复815435264三极管把电流放大,电流时毫安级的,如果不用三极管电流...

单片机 的哪一组IO没有 上拉电阻 ?

1、P0的八个口没有,P1P2P3的各八个口都有;2、标准51单片机P0口为开漏输出,没有上拉电阻,其它口都有,但上拉电阻很大,所以IO口高电平驱动能力很弱。STC系列...

谢谢有朋友给了我答复。但我还是不明白 上拉电阻 接在那里?是否接在 P0 和573的连接点?另一端接在VCC上?

因为你没弄明白上拉电阻是干什么的.,据基霍夫电流定理,流入一个节点的电流等于流出一个节点的电流,一个输出端如果流出的电流不能够满足所带负载所需电流,那么...

单片机 实验,用 上拉电阻 的道理.】作业帮

[最佳回答]如果指的是51单片机且I/O口不能配置为双向的,那么有两条要配置上拉电阻的理由:1,使用的准双向I/O没有足够的拉电流推动负载;2,使用了P0口的I/O作为...

猜你喜欢