下拉电阻


18

为了理解电气工程,我偶然发现了本教程:

http://www.ladyada.net/learn/arduino/lesson5.html

在开始切换之前,我已经了解了这些图。我不确定在面包板或图表上开关的工作方式。这是我正在考虑的特定电阻(这是下拉电阻):

在此处输入图片说明

实现是:

在此处输入图片说明

根据该图,我认为正在发生的事情是:电源接通了开关,如果按钮向上,则电路未完成。如果按下按钮,则电流会流向引脚2的电阻最小,因为它具有更大的拉力(100ohm <10kohm)。

教程中描述的方式听起来像是当按钮按下时,电路仍然完整,但是10k欧姆的电阻器将电源拉到了地面。我不敢肯定,如果10k ohm和100ohm都受到相同的电流,那么该电流如何或为什么通过比2号引脚开路的电阻高的电阻接地。


3
顺便说一句:尝试从每个点的电压而不是电流流向的角度来思考电路。这有助于我第一次学习EE时的理解。
geometrikal

我对这个问题的回答质量感到失望。我建议您改用AddOhms观看此视频。。我不理解这个概念,足以解释,但没有这里的答案,在写作的时候,甚至是在谈论什么导致的浮动状态,或者无论怎么拉或推下做出决议的问题。
埃文·卡罗尔

@EvanCarroll在另一方面,这个问题在写作的时候不问这些事情,你感兴趣的
梅德格里戈里耶夫

Answers:


29

首先,暂时不要使用100电阻。按钮的工作不是必需的,它只是一种保护,以防万一您编程失误。

  • 如果按下按钮,P2将直接连接到+5 V,因此将被视为高电平,为“ 1”。
  • 如果松开按钮,则+5 V不再计数,端口和地面之间只有10kΩ。

当用作输入时,微控制器的I / O引脚为高阻抗,这意味着仅流过很小的泄漏电流,通常小于1 µA,根据数据手册,这将是最大值。好,让我们说这是1 µA。然后,根据欧姆定律,这将导致1μA的电压降为10kΩ= 10毫伏跨电阻器。因此,输入将为0.01V。这是低电平或“ 0”。典型的5 V微控制器将看到任何低于1.5 V的低电平。 ×


现在是100电阻。如果您不小心使该引脚输出并将其设置为低电平,则按下按钮将导致短路:微控制器在该引脚上设置0 V,而在同一引脚上设置开关+5V。微控制器不喜欢这样,可能会损坏IC。在这种情况下,100Ω电阻应将电流限制为50 mA。(这仍然太多了,一个1kΩ的电阻会更好。)

由于不会有电流流入输入引脚(除了低泄漏),电阻两端几乎不会有任何电压降。

10kΩ是上拉或下拉的典型值。较低的值将为您提供更低的电压降,但是10 mV或1 mV的差别不大。但是还有其他事情:如果按下按钮,电阻两端的电压为5 V,那么将流过5 V / 10kΩ= 500 µA的电流。这足够低,不会引起任何问题,而且您也不会长时间按下按钮。但是您可以将开关替换为一个开关,该开关可能会关闭很长时间。然后,如果您选择了一个1kΩ的下拉电阻,则只要开关闭合即可通过电阻产生5 mA的电流,这有点浪费。10kΩ是一个好值。


请注意,您可以将其倒置以获得上拉电阻,并在按下按钮时切换到接地。

在此处输入图片说明

这将颠倒您的逻辑:按下按钮将为您提供“ 0”而不是“ 1”,但工作原理是相同的:按下按钮将使输入为0 V,如果松开按钮,则电阻器将连接输入到+5 V电平(压降可忽略不计)。

这是通常的方式,微控制器制造商也考虑到了这一点:大多数微控制器都具有内部上拉电阻,您可以在软件中激活或停用它。如果使用内部上拉电阻,则只需将按钮接地即可。(某些微控制器也具有可配置的下拉菜单,但这种情况不那么常见。)


我不知道Push-Down方法是如何从此答案中解决浮动状态的问题的。
埃文·卡罗尔

7

请注意,交换机不是看上设备需要电源,并创建一些输出信号-相反,认为它是一个线,你只是添加或按下按钮从电路中移除。

如果断开开关(未按下),则唯一可能的电流路径是P2通过两个电阻器接地。因此,微控制器将读取LOW。

如果已连接开关(按下):

  • 电流从电源流经开关

  • 一些电流通过100欧姆电阻流向P2。微控制器将读取高电平。

  • 少量电流将流过10 Kohm电阻器接地。这基本上是浪费功率。

请注意,只有100欧姆电阻器可以限制流入的最大电流P2。它通常不包含在这样的电路中,因为微控制器的P2输入已经是高阻抗,并且不会吸收太多电流。但是,如果您的软件有错误或逻辑错误导致尝试将其P2用作输出,则包括100 ohm电阻很有用。在这种情况下,如果微控制器试图将其驱动为P2低电平但开关短路并将其连接至高电平,则可能会损坏微控制器引脚。为了安全起见,在这种情况下,100欧姆电阻会限制最大电流。


5

当您按下按钮时,会将逻辑高电平(+5 V)置于输入上。但是,如果省略电阻器并释放按钮,则输入引脚将处于悬空状态,这在HCMOS中表示未定义电平。那是您不想要的,因此您可以使用电阻将输入下拉至地。需要电阻器,因为否则按此按钮会引起短路。

输入为高阻抗,这意味着几乎没有电流流过该输入。通过电阻的零电流意味着电阻两端的电压为零(欧姆定律),因此一侧的0 V在输入引脚上也将为0 V(或非常接近)。

这是连接按钮的一种方法,但是您也可以交换电阻器和按钮,以便电阻器变为+5 V,并且按钮接地。逻辑相反:按下按钮将在输入引脚上提供低电平。但是,通常这样做是因为大多数微控制器都内置了上拉电阻,因此您只需要按钮,便可以省略外部电阻。请注意,您可能必须启用内部上拉功能。



另请参阅此答案


我不知道Push-Down方法是如何从此答案中解决浮动状态的问题的。
埃文·卡罗尔

4

10kohm电阻器称为下拉电阻器,因为当“绿色”节点(连接100ohm和10kohm电阻器)未通过开关连接至+ 5V时,该节点被拉至接地(假设通过该分支的电流小) ,显然)。当开关闭合时,该节点的电位为+ 5V。

这用于控制逻辑IC(“与”门,“或”门等)的输入,因为如果这些电路的输入上没有确定的值(0或1的值),它们的行为将不稳定。如果将逻辑门的输入悬空,则无法可靠地确定输出,因此建议始终将确定的输入(再次为0或1)应用于门的输入。在这种情况下,P2将是特定逻辑门的输入,并且当开关断开时,其输入值为0(GND)。当开关闭合时,其输入值为1(+ 5V)。


2

电流走电阻最小的路径

我不确定这种普遍的误解是从哪里来的,但确实是错误的,因为它直接与欧姆定律相矛盾。电流流经所有可能的路径,与它们的电阻成反比。如果将5V电压施加到10k电阻,则无论提供多少替代路径(低电阻或其他),都会有0.5mA电流流过。

顺便提及,通过100 Ohm电阻器的路径不一定是“最小电阻”,因为该电阻器未接地。通常,您可以将该电阻连接到阻抗> 10 MOhm的MCU输入,从而有效地使10k电阻成为电阻最小的路径。


1

需要下拉电阻的原因是微控制器是CMOS器件,因此输入引脚最终是MOSFET的栅极。

如果您的按钮控制灯泡,LED或继电器,则不需要下拉电阻,因为开路会“断开”。释放按钮时,灯泡将关闭,因为没有电流流过。

如果您的设备像原始的7400系列逻辑芯片那样是真正的TTL部件,则不需要下拉电阻,因为这些输入将是双极晶体管,并且当释放按钮时,将没有电流流过基极-发射极结,并且输入将是“关闭”。

相反,微控制器的输入是MOSFET栅极,其作用类似于电容器。当栅极电压足够高时,输入为“ on”。当您按下按钮并且电流通过100R电阻流入微控制器时,就会发生这种情况。栅极像电容器一样(非常快速地)充电,并且输入变为“ on”。现在,松开按钮会发生什么?不再有电流流过。但这对输入意味着什么?如果没有下拉电阻,则栅极上的电荷无处可去。电压将仅位于5V附近,并且输入仍将“打开”。下拉电阻消耗栅极电荷,因此其电压降至“导通”电平以下。那就是您要确保数字输入被认为是“关”的。

您可以通过在输入引脚上钩两个按钮来进行试验。将1V绑到5V,然后将1绑到地。按下5V按钮时,输入将打开。当您松开它时,它将一直保持到您按下连接到GND的那一为止。


在TTL中,确实是基极-发射极结不会导通,但不会像您想象的那样:输入是输入NPN晶体管的发射极,如果输入变低则晶体管导通。浮动等于高。
stevenvh 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.