1、介紹
使用微控制器(MCUs) 或任何數(shù)字邏輯設(shè)備時(shí),上拉電阻器非常常見(jiàn)。本教程將解釋何時(shí)何地使用上拉電阻器,然后我們將做一個(gè)簡(jiǎn)單的計(jì)算,以顯示為什么上拉很重要。
2、上拉電阻是什么?
假設(shè)您有一個(gè)將一個(gè)引腳配置為輸入的 MCU。如果引腳沒(méi)有連接任何東西,如果這個(gè)時(shí)候程序讀取引腳的狀態(tài),則引腳是高(拉到 VCC)還是低(拉到接地)?
很難說(shuō)。這種現(xiàn)象被稱為浮空輸入「floating」。
為了防止這種未知狀態(tài),上拉或下拉電阻確保引腳處于高或低狀態(tài)。
使用上拉電阻的情況下,如果沒(méi)有按下按鍵,輸入引腳會(huì)讀到高電平,會(huì)有少量電流流入MCU的GPIO。如果按下按鍵,輸入的引腳GPIO直接連接到地,輸入引腳將會(huì)讀到低電平,如果沒(méi)有上拉電阻,按下按鍵的時(shí)候,會(huì)直接讓VCC接到GND,短路爆炸就出現(xiàn)了。
3、上拉電阻的大小如何選擇?
需要選擇上拉電阻的值以滿足兩個(gè)條件:
1、按下按鈕時(shí),輸入引腳被拉低。電阻 R1 的值控制VCC 的電流經(jīng)按鈕再流向GND。
2、未按下按鈕時(shí),輸入引腳被拉高。上拉電阻器控制輸入引腳上的電壓。
對(duì)于條件1,電阻的大小不能太低,如果電阻過(guò)低,流到GND的電流就會(huì)越大,這樣損失的功耗也就會(huì)越大。
對(duì)于條件2,電阻的大小不能太高,如果過(guò)高,GPIO讀到的分壓電壓會(huì)過(guò)小,這樣會(huì)導(dǎo)致在沒(méi)有按下按鈕的時(shí)候,GPIO讀不到高電平。比如在5V的系統(tǒng)中,如果分壓是2.5V,MCU讀到的狀態(tài)就是不確定的。
還有,如果上拉電阻越大,引腳對(duì)電壓變化的反應(yīng)就越慢。
4、上拉電阻如何計(jì)算?
假設(shè)我們希望把電流限定在1mA。
根據(jù)歐姆定律
最后得到的上拉電阻是 5KΩ。
聯(lián)系客服