FAQ sui resistori pull-up/pull-down: parte 1
Anche questa disposizione del circuito relativamente semplice presenta delle sottigliezze che incidono sulle prestazioni.
Nel mondo binario teorico, nitido e pulito, i segnali esistono solo in due stati non ambigui, generalmente chiamati 1 e 0 (uno e zero). Tuttavia, quando studenti di ingegneria, hobbisti e professionisti esclusivamente digitali si immergono nel mondo reale dei circuiti e dei sistemi, scoprono che i circuiti binari hanno tre stati: 1, 0 e indefinito (o indeterminato).
Quest'ultimo stato è indesiderabile e può portare a malfunzionamenti di circuiti e sistemi, funzionamento irregolare e persino guasti gravi, quindi deve essere evitato in quasi tutti i progetti. Fortunatamente, è abbastanza facile da realizzare. Nota che tecnicamente, "binario" è un caso specifico e un sottoinsieme di "digitale", ma i due termini sono spesso usati in modo intercambiabile.
Questa FAQ esplorerà il ruolo dei resistori pull-up e pull-down per garantire che i punti del circuito binario (digitale) siano indiscutibilmente a un livello 1 o 0 non ambiguo e che lo stato intermittente non possa verificarsi. Questi resistori sono spesso utilizzati quando si interfaccia un interruttore o altri componenti con pin di input/output (I/O) del microcontrollore o altre porte digitali. Molti microcontrollori li includono, ma altri no, consentendo flessibilità di interfaccia.
D: Qual è la realtà del livello logico di un circuito digitale?
A: Un circuito logico digitale ha in realtà tre stati logici: alto, basso e "flottante" (o alta impedenza); quest'ultimo è indeterminato. Quando viene sondato con un misuratore, può apparire come alto o basso o alternarsi tra loro in modo casuale, ma ciò è fuorviante e non è una lettura valida del livello logico.
D: Questo è un problema sia per gli ingressi che per le uscite del circuito?
A: Sì, puoi avere un input o un output flottante. Possono avere "apparenze" e impatti diversi nonostante abbiano la stessa causa sottostante.
D: Ci sono principi di base da tenere a mente quando si osservano i livelli logici nei circuiti reali?
A: Sì, ce ne sono due: 1) la corrente elettrica ha bisogno di un percorso per fluire, e 2) la tensione ha significato solo quando è definita tra due punti noti. Naturalmente, tensione e corrente coesistono e interagiscono, e devi capire le azioni dell'una per capire l'altra.
D: Le preoccupazioni relative a un segnale flottante in un circuito riguardano sia i punti di ingresso che quelli di uscita?
A: Sì. L'ingresso è la base di un transistor bipolare o il gate di un transistor CMOS (Figura 1), dove la base di comando di uscita o il gate provengono da un altro IC, oppure potrebbe essere un interruttore meccanico discreto. Le preoccupazioni sono molto simili sia nei casi di input che di output.


Resistori pull-up e pull-down
D: Cos'è una resistenza pull-up? Cos'è una resistenza pull-down?
A: Un resistore pull-up è un resistore utilizzato per garantire che un punto del circuito venga "tirato" a un livello logico alto in assenza di un segnale di ingresso; un resistore pull-down assicura che il punto del circuito vada troppo in basso (quasi sempre "terra" o comune). Questi resistori vengono utilizzati per polarizzare correttamente gli ingressi delle porte digitali per impedirne il galleggiamento casuale. Vengono utilizzati anche sulle uscite delle porte digitali.
D: Possiamo vederlo "in azione"?
A: Si consideri un semplice interruttore a pulsante on/off collegato all'ingresso di una porta logica (ricorda, le porte nel mondo reale sono costruite con transistor bipolari o CMOS; non sono un concetto astratto). Elettricamente, l'interruttore sembra un cortocircuito o un circuito aperto, abbastanza semplice.
Se non è presente alcuna resistenza pull-up (Figure 2 ), l'ingresso della porta logica è flottante e non a 1 o 0 quando l'interruttore è aperto; quando l'interruttore è chiuso, l'ingresso è collegato a terra, logica 0.

Consideriamo lo stesso input ma con una resistenza pull-up (Figure 3 ).
Quando l'interruttore è aperto, la tensione all'ingresso del gate viene tirata fino al livello della tensione di ingresso (designata come Vin, VCC, VDD o il rail di alimentazione, a seconda del progetto del circuito e del suo progettista) ed è a 1 logico. Quando l'interruttore è chiuso, la tensione di ingresso al gate va direttamente a terra.
In breve, è necessario utilizzare una resistenza pull-up quando si ha uno stato di bassa impedenza predefinita e si desidera portare il segnale a "alto".
D: Tutto questo ha senso per un interruttore on/off a chiusura di contatto "rigido", ma come si applica a un ingresso pilotato dall'uscita di un'altra porta logica digitale?
A: Se si disegna lo schema e si modella il circuito, la situazione è molto simile. Quando l'uscita di pilotaggio è bassa, c'è una bassa impedenza a terra, quasi ma non proprio un cortocircuito; quando l'uscita è alta, c'è un percorso ad alta impedenza e praticamente nessun flusso di corrente, che appare quasi come un circuito aperto.

D: Che dire delle resistenze pull-down sugli ingressi?
A: È lo stesso principio, ma come suo complemento (Figure 4
). Quando l'interruttore è aperto, la tensione dell'ingresso del gate viene tirata verso il basso fino al livello di terra. Quando l'interruttore è chiuso, la tensione di ingresso al gate va a Vin. I livelli di tensione fluttuerebbero virtualmente tra le due tensioni senza il resistore. Il resistore pull-down mantiene il segnale logico vicino a zero volt (0 V) mentre tira la tensione di ingresso verso il basso fino a terra per impedire uno stato indefinito all'ingresso.
D: Puoi confrontare e contrapporre brevemente le configurazioni dei resistori pull-up e pull-down?
A: Figure 5
è una breve panoramica dei loro attributi relativi.

D: Che dire del pull-up e del pull-down sul lato di uscita di un gate o anche di un transistor di base?
A: È un problema simile. Se il collettore o il drain di uscita è collegato a "nulla", fluttuerà e non sarà in grado di raggiungere una vera logica di 0 o 1, poiché non c'è alcun percorso di corrente. Per questo motivo, la maggior parte delle porte logiche ha un resistore di uscita pull-up o pull-down incorporato.

D: Perché a volte vedo porte con uscite "open collector" o "open drain"?
A: Ciò è necessario quando si desidera che l'uscita del transistor guidi un carico esterno "reale". L'uscita open-collector si riferisce a un'uscita collegata al collettore del transistor (qui, un dispositivo NPN) (Figure 6
). Il transistor NPN consente di scaricare la corrente verso terra (più correttamente detto comune del circuito).
Utilizzando un collettore aperto o un drain, puoi far funzionare il carico come resistore pull-up. Il carico può essere un resistore discreto, un relè, un motore, una lampada, un LED o un altro componente.
Nella sezione successiva vengono analizzati l'alimentazione e l'assorbimento della corrente, nonché il dimensionamento dei resistori.
Contenuti EE World correlati
Cos'è uno scarico aperto?
FAQ: Come collegare un interruttore a un microcontrollore con resistori pull-up
Il driver MOSFET a canale N da 150 V con protezione lato alto veloce fornisce un ciclo di lavoro del 100%
Come scegliere l'encoder giusto: open-collector, push-pull o uscita differenziale?
Quando utilizzare transistor NPN e PNP e FET
Perché mi piacciono ancora i relè elettromeccanici – e anche a te (forse) dovrebbero piacere
Riferimenti esterni
Sparkfun, “Resistenze pull-up”
Nozioni fondamentali sui circuiti, "Resistenze pull-up e pull-down"
Wikipedia, “Resistenza di pull-up”
EE Power, “Resistenze pull-up e pull-down”
Utmel Electronic, "Quali sono le differenze tra resistori pull-up e pull-down?"
Tutorial di elettronica, "Resistenze pull-up"
Robu.in, "Cosa sono i resistori Pull-up e Pull-down?"