Skąd mam wiedzieć, czy potrzebuję podciągania lub opuszczania rezystora dla pinu GPIO?

8

Widziałem, że wiele mikrokontrolerów używa rezystorów podciągających lub obniżających albo jako ustawienie dla pinów GPIO, albo jako część sprzętu.

Skąd mam wiedzieć, czy potrzebuję podciągania lub opuszczania rezystora dla pinu GPIO, a jeśli tak, to skąd mam wiedzieć, który jest odpowiedni dla mojej aplikacji?

Dom
źródło

Odpowiedzi:

6

Potrzebujesz rezystora podnoszącego lub obniżającego na linii, której poziom napięcia co najmniej czasami jest „nieprzewidywalny” - na przykład wejście zmiennoprzecinkowe, ale także linia I2C.

Jeśli chcesz, aby domyślną linią była cyfra 1, użyj pull up. Jeśli chcesz, aby było cyfrą 0, użyj rozwijanego menu.

Bardzo typowym przykładem jest przycisk. Załóżmy, że oprogramowanie oczekuje, że pin spadnie po naciśnięciu przycisku. Na odpowiednim szpilce używasz podciągania, a przycisk łączy szpilkę z ziemią.


źródło
3

W ostatecznym układzie zdecydowanie zaleca się również wyciągnięcie każdej nieużywanej szpilki na odpowiedni poziom. Nie należy pozostawiać ich niepołączonych, ponieważ może to spowodować nieprzewidziane zachowanie w czasie uruchamiania lub podczas działania programu.

Ruslan Gerasimov
źródło
0

Niezależnie od tego, czy go podciągniesz, czy w dół, naprawdę zależy od ciebie i twojego projektu.

Jak wspomniano wcześniej

Jeśli twój kod chce wyzwolić zbocze opadające lub a 0, powinieneś użyć pull up, aby utrzymać wysoki poziom, gdy nie jest używany.

Jeśli twój kod chce wyzwolić zbocze narastające lub a 1, powinieneś użyć pull down, aby utrzymać potencjał na 0, użyj swojego zewnętrznego źródła.

Teraz rezystory ciągnące powinny mieć wysoką wartość omową, wystarczającą do pokonania szumu, który należy wyeliminować, ale nie tak mocny, aby twój zewnętrzny soucre nie mógł go pokonać.

Ogólnie rzecz biorąc, pociągając w dół zaoszczędzisz kilka mA mocy.

Powiedzmy, że mamy 5k pull up @ 5v, czyli 1mAna pin; podczas wyczerpywania baterii każde mA jest cenne.

Kiedy ściągamy, generalnie po prostu wypalamy szum EMF, zużywając znikomą liczbę mA.

Matt Clark
źródło
czy pobór nie byłby nominalnie pozbawiony prądu, gdy linia nie jest nisko napędzana, a także rozwijanego prądu odpadowego, gdy linia jest prowadzona wysoko?
John O'M.
Zwykle rezystor podwyższający / obniżający wystarczy, aby uzyskać pożądany „domyślny” sygnał, zazwyczaj Vin lub Gnd. W tym celu są one zwykle około 10k lub mniej, więc jeśli prowadzisz linię WYSOKĄ, gdy podłączony jest rezystor obniżający, marnujesz tylko wzmacniacze Vhigh / 10k. Jeśli Vhigh wynosi 5 V, to wynosi 0,5 mA.
Chuck