上拉電阻器非常普遍,您會一直在數字電路中看到它。 它只是一個電阻器,從輸入端連接到Vdd,電路的正電源。
上拉電阻用于確保在未按下按鈕時輸入引腳上具有高電平狀態。 如果沒有一個,您的輸入將是浮動的,并且您有可能在輸入在高和低之間隨機變化,因為它在空氣中拾取噪音。
如何選擇上拉電阻值
低電阻值稱為強上拉(電流流動較多),高電阻值稱為弱上拉(電流較少)
規則 1:值不能太高。
上拉值越高,輸入端的電壓就越低。 重要的是,電壓要足夠高,芯片才能將其視為高電平或邏輯1輸入。
例如,如果使用具有 10V 電源的 CD4017,則輸入端至少需要 7V 才能將其視為 HIGH。
規則2:但它也不能太小。
例如,如果您選擇100 Ω,問題是當按下按鈕時,您會獲得大量電流流經它。
使用9V電源時,您可以在100 Ω(90
mA)獲得9V電壓。 這是不必要的功率浪費,但這也意味著電阻器需要承受0.81W。 大多數電阻器只能處理高達0.25W的功率。
經驗法則
一般規則是使用比輸入引腳的輸入阻抗(R2)小一個數量級(1/10)的上拉電阻(R1),小10倍的電阻值。
通常,10 kΩ的上拉值就可以解決問題。 但是,如果您想了解它的工作原理,請繼續閱讀。
上拉電阻器如何工作?
您可以使用分壓器公式查找未按下按鈕時輸入引腳上的電壓:
如果對上拉R1使用1MΩ電阻,并且輸入引腳的阻抗R2約為1MΩ(形成分壓器),則輸入引腳上的電壓約為VCC的一半,并且微控制器可能不會將引腳記錄為處于高電平狀態。 在5V系統上,輸入電壓為2.5V
計算示例
假設您的芯片的輸入阻抗為1MΩ(對于許多芯片來說,100kΩ至1MΩ是正常的)。 如果您的電源是9V,并且您選擇10
kΩ的上拉電阻值,那么輸入引腳上的電壓是多少?
輸入引腳上的電壓為8.9V,足以用作高電平輸入。
通常,如果您堅持使用不超過輸入阻抗十倍的上拉電阻的經驗法則,您將確保輸入引腳上始終具有至少90%的VDD電壓。
總結
由于通常需要上拉電阻,因此許多MCU(如Arduino平臺上的ATmega328微控制器)都具有可以啟用和禁用的內部上拉電阻。 要在 Arduino
上啟用內部上拉,您可以在 setup() 函數中使用以下代碼行:
COPY CODEpinMode(5, INPUT_PULLUP); // Enable internal pull-up resistor on pin 5
需要指出的另一件事是,上拉電阻越大,引腳對電壓變化的響應速度就越慢。 這是因為饋電輸入引腳的系統本質上是一個與上拉電阻耦合的電容器,因此形成RC濾波器,而RC濾波器需要一些時間來充電和放電。 如果您有一個非常快速變化的信號(如USB),高阻值上拉電阻可以限制引腳改變狀態的速度(信號還具有可靠性)。 這就是為什么您經常會在USB信號線上看到1k至4.7KΩ電阻的原因。
所有這些因素都決定了使用什么值的上拉電阻器。
-
上拉電阻
+關注
關注
5文章
363瀏覽量
30682 -
電阻器
+關注
關注
21文章
3787瀏覽量
62237 -
分壓器
+關注
關注
0文章
194瀏覽量
18961 -
數字電路
+關注
關注
193文章
1620瀏覽量
80749 -
電阻值
+關注
關注
0文章
89瀏覽量
11375
發布評論請先 登錄
相關推薦
評論