Che cos'è una resistenza pull up? Che cosa fa? E perché è necessario?


26

Mi sono imbattuto in molti semplici circuiti che mostrano come accendere un LED o qualcos'altro. Le resistenze pull-up sono spesso citate. Cosa fanno? Alcuni pin GPIO richiedono resistori pull up e altri no, qual è la differenza?



2
Ho guardato la spiegazione di Wikipedia e non aveva alcun senso. Stavo per modificare la domanda per riflettere questo, ma hai risposto prima.
Menuta,

molto ben spiegato in questo sito seattlerobotics.org/encoder/mar97/basics.html

Risposte:


11

Dal sito Web di Arduino :

Spesso è utile guidare un pin di input in uno stato noto se non è presente alcun input. Questo può essere fatto aggiungendo una resistenza pullup (a +5 V) o una resistenza pull-down (resistenza a terra) sull'ingresso, con 10 kΩ come valore comune.

MA : Questo è dal sito web di Arduino. Ricorda che i pin Raspberry GPIO sono tolleranti solo a 3,3 V (quindi, esegui il pullup a 3,3 V, non a 5 V sul Raspberry Pi) !!!

Ecco un esempio di schemi di resistenza pull-up.

un esempio

Un pull-up assicurerà che il pin sia sollevato senza assorbire troppa corrente. Una porta ha tre possibili stati: ON, OFF e FLOATING.

Lo stato FLOATING non è molto utile poiché non può essere convertito in un valore booleano. Da qui i resistori pull-up e pull-down: sono lì per eliminare lo stato FLOTTANTE.


3
Tecnicamente FLOATING non è uno stato logico ma un termine tecnico sciolto utilizzato per descrivere che non è collegato e può ricevere combinazioni casuali di HIGH / LOW causate dal rumore di scarica statica generato da oggetti vicini. Non esiste una variabile logica per il floating, tranne il numero matematico. Il digitale è 1 o 0.
Piotr Kula il

7

Una resistenza pull-up o pull-down viene utilizzata sui pin di ingresso per definire uno stato nel caso in cui un ingresso non abbia nulla collegato o la parte connessa si trovi nello stato ad alta impedenza (Z). Gli input senza uno stato definito hanno il problema che il valore di input può essere qualsiasi cosa (0 o 1), chiamato floating.

Questo è spiegato più in dettaglio nell'articolo su Wikipedia (che Jivings ha aggiunto ai commenti della tua domanda), e un po 'più visivamente in questo articolo su SparkFun .


La descrizione di Sparkfun è brillante rispetto a Wikipedia e fa molte meno ipotesi sulla conoscenza dei lettori
Menuta,

2

Qualcosa da tenere a mente (inizialmente mi ha confuso un po ') è che una resistenza pull-up o pull-down è solo una resistenza standard in un ruolo specifico. Più di una persona ha provato ad acquistare resistori pull-up solo per scoprire che non esistono. Altrimenti è proprio come sembra, un resistore standard che tira la tensione fino a 5 V / 3,3 V o fino a 0 V come lo stato normale.


1
Parte di ciò che confonde qui è che non è proprio il resistore che fa il "pull-up" - il pull-up è ciò che si trova dall'altra parte del resistore. Il resistore controlla semplicemente il flusso di corrente attraverso il pull-up. raspberrypi.stackexchange.com/questions/28973/…
goldilocks

1

Il dizionario elettronico definisce pull-up come segue:

pull-up: descrittivo di un circuito o componente utilizzato per aumentare il valore (ad es. impedenza) di un circuito a cui è collegato.

Se un LED è collegato a un alimentatore da +5 V ed è controllato (LED ON & OFF) da un microcontrollore / microprocessore o in qualche altro modo, durante lo stato ON l'alimentatore può fornire corrente elevata, a sua volta l'alta corrente può danneggiare il LED.

Per limitare l'alta corrente dall'alimentazione , una resistenza di pull-up, tira su l' impedenza e limita la corrente che alimenta il LED dall'alimentazione (+5 V). Quindi il LED è protetto da correnti elevate. In base al circuito, una funzione pull-up varia e forma protezione dalla ANDlogica cablata a un bus I²C.


1
@SlySven ha ragione: questa risposta non è corretta, parlando elettronicamente. AFAIK non esiste un concetto in elettronica di "tirare su l'impedenza". Nel contesto dei circuiti logici, un resistore pull-up RIDUCE l'impedenza, e così facendo influenza la tensione a cui è collegato, di solito verso una tensione positiva (da cui "up" in pull-up, puoi anche avere una pull -down, di solito a 0 V). Il resistore in serie con un LED sta semplicemente determinando la corrente che può fluire attraverso il LED - questo non è in alcun modo correlato a un pull-up anche se lo schema potrebbe apparire simile.
barny

1

Il termine pull-up o pull-down è un termine usato per descrivere il ruolo del resistore. Si tira la linea di segnale che è collegato ad un terminale su verso la / terra / riferimento di tensione che è presente sull'altro terminale. La risposta precedente non è corretta nel dire "tira su l'impedenza" piuttosto che ridurre la resistenza / impedenza nel circuito in modo tale che la linea assuma uno stato noto quando altrimenti non verrà ad esempio un pin di ingresso su un circuito integrato che è altrimenti non connesso. Poiché questo contrasterà gli effetti quando è collegato qualcosa di esterno, la quantità della resistenza deve essere abbastanza bassa da essere efficace per faretirando se il perno viene lasciato accidentalmente o deliberatamente sul circuito aperto ma abbastanza alto da non sovraccaricare indebitamente qualsiasi circuito esterno per superare l'effetto quando vuole guidare la linea nell'altra direzione.

I pin GPIO sul Pi hanno quelli interni controllabili che capisco possono essere fatti principalmente per far sì che le linee assumano un circuito aperto logico basso o alto o sinistro - quest'ultimo dei quali va bene se c'è un resistore pull up / down fornito dall'utente fare il lavoro (possibilmente come parte della circolazione esterna comunque). Il design di quest'ultimo è particolarmente significativo se il circuito esterno sta funzionando da binari di alimentazione superiori a 3,3 Volt perché in quel caso il pull-up non deve tentare di aumentare la tensione sulla linea al di sopra di 3,3 V - un resistore in serie (diciamo 4K7 ) e un diodo Schottky (ad esempio un BAT85) con il suo anodo sul lato del resistore serie collegato al pin GPIO e il suo catodo sul binario di alimentazione da 3,3 V è un modo per impedirlo: la caduta di tensione diretta bassa (<0,2 V) di quel tipo di il diodo impedisce che la linea del segnale venga presa abbastanza in alto da danneggiare il Pi, a spese di un tempo leggermente maggiore per la propagazione dei segnali nel Pi.

Ho appena iniziato con Pi's, perché ieri ne ho acquistati due di seconda mano (anche se mi occupo di elettronica da oltre 35 anni} e sto cercando informazioni sul Pi's Pinout proprio per questo motivo - e per il meglio posto per ottenere due alimentatori poiché non li hanno forniti. 8-P

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.