#1 楼
在Arduino网站上:如果没有输入,将输入引脚转到已知状态通常很有用。这可以通过在输入端添加一个上拉电阻(至+5 V)或一个下拉电阻(接地电阻)来实现,其中10kΩ为公共值。
但是:那是从Arduino网站上获得的。请记住,Raspberry GPIO引脚只能承受3.3V的电压(因此,请在Raspberry Pi上拉至3.3V,而不是5V)!!!
这里是一个上拉电阻器原理图的示例。
上拉将确保该引脚在不插入的情况下向上电流太大。门有三种可能的状态:ON,OFF和FLOATING。
FLOATING状态不是很有用,因为它不能转换为布尔值。因此,上拉和下拉电阻器:在那里存在以消除浮动状态。
评论
从技术上讲,浮动不是逻辑状态,而是一个宽松的技术术语,用于描述它是未连接的,并且可能接收由附近物体产生的静电放电噪声引起的高/低的随机组合。除数学数字外,没有逻辑变量可用于浮动。数字为1或0。
– Piotr Kula
2014年8月2日14:52
#2 楼
在输入未连接任何东西或连接的部分处于高阻抗(Z)状态的情况下,在输入引脚上使用上拉或下拉电阻来定义状态。没有定义状态的输入存在以下问题:输入值可以是任何值(0或1),称为浮点型。在Wikipedia上的文章(Jivings添加到您的问题的评论中)对此进行了更深入的解释,而在SparkFun的这篇文章中则以直观的方式进行了解释。
评论
与Wikipedia相比,sparkfun的描述非常出色,因此对读者知识的假设要少得多
–马修·罗里希(Matthew Rohrich)
13年1月19日在10:36
#3 楼
需要记住的一点(首先让我感到困惑)是上拉或下拉电阻只是特定角色中的标准电阻。超过一个人试图购买上拉电阻器,只是发现它们不存在。否则,就像正常情况一样,用标准电阻将电压上拉至5V / 3.3V或降至0V。评论
令人困惑的部分是,电阻实际上并不是在做“上拉”,而是电阻另一侧是上拉。电阻只是控制流过上拉电阻的电流。 raspberrypi.stackexchange.com/questions/28973/…
–金锁♦
15年4月22日在17:56
#4 楼
电子词典对上拉的定义如下:上拉:描述用于提高电路值(例如阻抗)的电路或组件
与其连接的
。
如果LED连接到+5 V电源并且由微控制器/微处理器或某些设备控制(LED ON&OFF)其他方法是,在导通状态下,电源可能会提供大电流,反过来,大电流可能会损坏LED。
为了限制电源的大电流,需要一个上拉电阻来上拉电阻。阻抗并限制从电源(+ 5V)向LED供电的电流。因此,LED受到大电流保护。根据电路,上拉功能会发生变化,并为连接到I²C总线的有线
AND
逻辑提供保护。评论
@SlySven正确-从电子上来说,这个答案是不正确的。 AFAIK在电子产品中没有“拉高阻抗”的概念。在逻辑电路中,上拉电阻会降低阻抗,并且这样做会影响其连接的电压,通常会向正电压方向移动(因此上拉中的“上拉”也可以通过上拉电阻-down,通常为0V)。与LED串联的电阻器只是在确定可以流经LED的电流-即使原理图看起来相似,也与上拉电阻无关。
– Barny
16 Dec 7'在10:18
#5 楼
上拉或下拉是术语,用于描述电阻器执行的作用。它将连接到一端的信号线拉向另一端上的电源/接地/参考电压。先前的回答是不正确的,它说“它会拉高阻抗”,而是降低电路中的电阻/阻抗,以使线路处于已知状态,否则不会出现这种情况。集成电路上未连接的输入引脚。因为这将抵消外部连接时的影响,所以如果引脚意外或故意断开开路,则电阻值必须足够低以有效地进行拉动,但又要足够高,以免给任何外部电路造成不必要的负担Pi上的GPIO引脚具有可控制的内部引脚,据我了解,通常可以使该引脚成为逻辑低电平或高或左开路-如果有用户提供的上拉/下拉电阻来完成工作,则后者会很好(无论如何,这可能是外部电路的一部分)。如果外部电路从超过3.3伏的电源轨运行,则后者的设计尤其重要,因为在这种情况下,上拉不得试图将线路上的电压提高至3.3V以上-串联电阻(例如4K7) )和肖特基二极管(例如BAT85),其阳极连接到GPIO引脚的串联电阻一侧,阴极连接到3.3V电源轨是防止这种情况的一种方法-低(<0.2V)正向电压此类二极管的压降会阻止信号线变得足够高以损坏Pi,但会稍微增加信号传播到Pi的时间。
我昨天刚买了两台二手设备,所以我才刚开始使用Pi's(尽管我从事电子产品已有35年以上的历史了),并且正是出于这个原因,我一直在寻找有关Pi's Pinout的信息-最好放置两个PSU的地方,因为它们不是'em'随附的。 8-P
评论
zh.wikipedia.org/wiki/Pull-up_resistor我看了维基百科的解释,没有任何意义。我打算编辑问题以反映这一点,但您先回答了。
这个网站上的解释很好seattlerobotics.org/encoder/mar97/basics.html