比較器與混合訊號元件

上拉電阻(pull-up resistor)

上拉電阻是一顆從訊號線接到正電源的溫和電阻,任務是:只要沒有別的東西主動把線拉低,就把線維持在高。想想一個讓門保持關閉的輕量彈簧:任何人都能頂著彈簧把門推開,一鬆手彈簧就把門輕輕帶回關上。上拉電阻給導線一個明確的休息狀態,而不是任它浮接、任憑雜訊擺布。

它是開汲極輸出不可或缺的搭檔。電晶體只能把線拉低;上拉電阻提供向上的力。當電晶體關閉,電流從電源經電阻流到線上與任何輸入電容,把線安定在高。當電晶體導通,它壓過那顆弱電阻、把線拽到接近接地。選值是一種取捨:小電阻(比方 1 kΩ)拉得快、抗雜訊,但浪費較多電流,並要求電晶體在低時吸收更多(5 V / 1 kΩ = 5 mA);大電阻(比方 100 kΩ)很省電,卻把線的電容充得慢、模糊了快速邊緣。典型折衷是 4.7 kΩ 到 10 kΩ。下拉電阻是它的鏡像:接到接地,使線在休息時維持低。

上拉電阻無所不在:每條開汲極匯流排線上(I2C 每條線需要一顆)、微控制器的重置腳上以免浮接、按鈕上讓未按下的按鈕讀作乾淨的高、以及未使用的邏輯輸入上以免它們飄移。誠實的陷阱是漏掉一顆——浮接的輸入或匯流排線並不是低,而是未定義,它會在拾取哼聲與串擾時行為失常。許多微控制器提供可用軟體開啟的弱內部上拉(20 到 50 kΩ),省下一個元件,但對阻值的掌控較少。

一個按鈕從微控制器輸入接到接地,再以 10 kΩ 上拉到 3.3 V:放開時,接腳讀作高(3.3 V 經電阻);按下時,按鈕把接腳短路到接地,得到乾淨的低。沒有上拉電阻,放開的接腳會浮接、讀到垃圾。

一條通往高的弱彈簧;任何更強的力都能把它拉低。

上拉電阻越小,邊緣越快、抗雜訊越好,但浪費的電流越多、對下拉者的負擔也越重。沒有放諸四海皆準的「正確」值——它取決於匯流排速度、電容與功耗預算。

又称
pull-up上拉提升電阻