Pull-up otpornici neophodni su u mnogim digitalnim sklopovima. Razgovarajmo o tome kako rade otpornici za povlačenje i kako ih koristiti.
Slika koja stvara digitalni sklop gdje je za paljenje LED-a potrebna tipka. Ispravno spojite strujni krug, spojite jedan kraj tipke na digitalni ulaz i uzemljite na drugi. Kada konačno date napajanje, primijetit ćete da se LED pali i gasi bez pritiskanja prekidača.
Ako ste ikada vidjeli ovakve situacije, vjerojatno ste zaboravili dodati otpornik za povlačenje u svoj digitalni krug. Dakle, što je zapravo pull-up otpornik? Kako radi i kako ga upotrebljavate?
Što je Pull-up otpornik?
Pull-up otpornik je otpornik koji dodajete digitalnom krugu kako biste izbjegli neželjene signale koji mogu ometati logiku ili programiranje vašeg kruga. To je način pristranosti ili povlačenja ulazne linije na plus ili VCC kada niti jedan drugi aktivni uređaj ne pokreće liniju. Povlačenjem linije na VCC, učinkovito postavljate zadano stanje linije na 1 ili istinito.
Postavljanje zadanog stanja svih ulaznih pinova važno je kako bi se izbjegli nasumični signali koji se generiraju tijekom njegovog plutajućeg stanja. Ulazni pin je u plutajućem stanju kada se odvoji od aktivnog izvora kao što je uzemljenje ili VCC.
Pull-up otpornici obično se koriste u digitalnim sklopovima mikrokontroleri i jednopločna računala.
Kako Pull-Up otpornik radi u strujnom krugu
Kada koristite trenutnu sklopku na digitalnom krugu, pritiskanje sklopke će uzrokovati zatvaranje kruga i prijenos vrijednosti true ili high mikrokontroleru. Međutim, isključivanje prekidača neće nužno zaustaviti ulazni pin u slanju takvih signala.
To je zato što prekidanje veze preko prekidača znači da više nije povezan ni s čim osim zrakom. To dovodi do toga da linija bude u plutajućem stanju, gdje bi signali iz okoline potencijalno mogli uzrokovati visoko podizanje igle u bilo kojem trenutku.
Kako biste spriječili registriranje ovih zalutalih signala u vašem krugu, morat ćete unijeti dovoljan napon u ulaznu liniju kako bi nastavio registrirati visoku vrijednost kada se uzemljenje više ne detektira. Međutim, ne možete izravno uključiti VCC u ulazni vod jer će strujni krug kratko proći čim prekidač/senzor spoji vod na masu.
Kako biste izbjegli kratki spoj naponskog napona, morat ćete koristiti otpornik. Posjedovanje otpornika prave vrijednosti osigurat će da će plutajući vod imati dovoljno napona da se podigne visoko, a dovoljno nisko da ne dođe do preranog kratkog spoja. Količina otpora ovisit će o vrsti logike koju vaš krug koristi.
Objašnjavanje logičkih obitelji
Da biste pravilno izračunali vrijednost otpora vašeg otpornika za povlačenje, morat ćete znati koju vrstu logike vaš krug koristi za rad. Obitelj logike koju koristi vaš krug će diktirati vrijednost otpora koja će biti potrebna vašem pull-up otporniku.
Postoji nekoliko vrsta logike. Evo nekoliko njih:
Skraćenica |
Ime |
Primjeri sklopova |
Min V uključen |
Max V isključen |
---|---|---|---|---|
CMOS |
Komplementarni metal oksidni poluvodic |
DSP, ADC, DAC, PPL |
3.5 |
1.5 |
TTL |
Tranzistor-tranzistorska logika |
Digitalni satovi, LED drajveri, memorija |
2.0 |
0.8 |
ECL |
Emiter-spregnuta logika |
Radar, laser, akceleratori čestica |
-1.5 |
-1.8 |
DTL |
Diodno-tranzistorska logika |
Flip-flopovi, registri, oscilatori |
0.7 |
0.2 |
Ako niste sigurni koju logičku obitelj koristite, vrlo je vjerojatno da vaš sklop koristi CMOS ili TTL logičke obitelji jer su ECL i DTL odavno zastarjeli. Oznake čipa s prefiksima koji koriste "74" ili "54" obično su TLL čipovi, dok oznake čipa s "CD" ili "MC" označavaju CMOS čip. Ako još uvijek niste sigurni, možete lako saznati koju logičku obitelj koristi vaš kontroler brzim pretraživanjem njegove podatkovne tablice na internetu.
Kako izračunati vrijednost Pull-Up otpornika
Sada kada razumijete različite tipove logičkih obitelji i njihove minimalne uključene i maksimalne isključene napone, sada možemo nastaviti izračunavati vrijednosti za naš pull-up otpornik.
Da biste izračunali točnu vrijednost otpornika, trebat će vam tri vrijednosti. Minimalni napon logičke obitelji koju vaš krug koristi, napon napajanja kruga i ulazna struja curenja, što možete pronaći na podatkovnoj tablici ili pomoću multimetra.
Kada imate sve varijable, možete ih jednostavno uključiti u sljedeću formulu:
Vrijednost otpora = (napon napajanja - visoki logički napon) / ulazna struja curenja
Na primjer, recimo da vaš krug koristi TTL, a ulazna linija koristi 100uA pri 5V. Znamo da je TTL-u potrebno najmanje 2 V da podigne visoku razinu i najviše 0,8 volti da podigne nisku razinu. To bi značilo da bi ispravan napon na izlazu iz našeg pull-up otpornika trebao biti između 3V i 4V budući da napon mora biti viši od 2V, ali ne viši od našeg napona napajanja koji je 5V.
Naše dane vrijednosti bile bi:
- Napon napajanja = 5V
- Logički visoki napon = 4V
- Ulazna struja curenja = 100μA ili 0,0001A
Sad kad imamo varijable, uključimo ih u formulu:
(5V - 4V) / 100μA = 10 000 ohma
Naš pull-up otpornik mora biti 10 000 ohma (10 kilohma ili 10 kΩ).
Kako koristiti Pull-Up otpornik u strujnom krugu
Pull-up otpornici obično se koriste u digitalnim sklopovima kako bi se izbjegle neželjene smetnje s digitalnim programiranjem kruga. Možete koristiti pull-up otpornike ako digitalni sklop koristi sklopke i senzore kao ulazne uređaje. Također, pull-up otpornici će biti učinkoviti samo ako su ulazni pinovi spojeni na masu. Ako su ulazni pinovi spojeni na VCC, možda biste trebali upotrijebiti otpornike koji se spuštaju.
Da biste koristili pull-up otpornik, morat ćete locirati ulazni vod koji se spaja na ulazni uređaj. Nakon što ga pronađete, poželjet ćete izračunati vrijednost vašeg otpornika pomoću formule o kojoj smo ranije govorili. Ako vaš krug zapravo ne zahtijeva veliku preciznost, možete jednostavno koristiti vrijednosti otpornika u rasponu od 1kΩ do 10kΩ.
Sada kada imate svoj otpornik s odgovarajućom vrijednošću, možete postaviti jedan kraj pull-up otpornika na VCC, a jedan kraj između ulaznog uređaja i MCU-a. Čestitamo! Sada znate što je pull-up otpornik i kako ga koristiti.
Neki mikrokontroleri kao što su Arduino ploče i SBC-ovi kao što je Raspberry Pi imaju unutarnje pull-up otpornike koje možete pokrenuti u kodu umjesto vanjskih pull-up otpornika.
Učvrstite svoje znanje kroz iskustvo
Ukratko, pull-up otpornik je važna komponenta koja pomaže u zaštiti vašeg kruga od obližnjih smetnji. Postavljanjem zadanog stanja ulaznog pina na visoko, sprječava se da nasumični signali ometaju logiku ili programiranje vašeg kruga. A sada kada znate kako se njime služiti, možda biste željeli učvrstiti svoje novostečeno znanje primjenom na svojim sljedećim projektima.