Odio aggiungere una risposta qui, soprattutto perché il PO non ha nemmeno bisogno di un'operazione bidirezionale. Ma il circuito è strutturato terribilmente (per capirlo.) E la descrizione di cani e code non aiuta, tranne forse gli alchimisti che cercano di scrivere frammenti allegorici e mistificanti della loro "arte".
(Ci sono termini condivisi, sviluppati nel tempo e usati nell'elettronica per aiutare a comunicare. Un "pull-down" potrebbe essere un esempio del genere. Ma sono sopravvissuti alla prova del tempo e comunicano usando l'idea generale di tirare su un nodo , che non è difficile comunicare quando qualcuno chiede e sta cercando di imparare il termine. Può essere facilmente adattato per discutere di "tirare più forte", ad esempio, senza perdita di significato. L'idea di debole e forte è comunemente condivisa , come l'idea di tirare, e questi sono facilmente applicabili una volta che qualcuno ha acquisito le idee della legge, della tensione, della corrente e della resistenza di Ohm.)
Un modo per utilizzare un BJT per il cambio di livello è quello di usarlo in una modalità di base comune. Basta collegare la base a una guida e "tirare verso il basso" sul suo emettitore. È possibile posizionare il resistore alla base o all'emettitore. Tutto quello che resta da fare è usare un pull-up sul raccoglitore. Dato che speriamo di ottenere un uso bidirezionale, il resistore verrà posizionato alla base.
Ecco un esempio quando si passa da a 3V uscita logica verso a 5V ingresso logico:
simula questo circuito - Schema creato usando CircuitLab
Andando nell'altra direzione, è molto allettante usare un approccio simmetrico:
simula questo circuito
Ma questo non funziona. Perché? Perché la base ha5V a sua disposizione e il pull-up del collettore è agganciato a una tensione inferiore, 3V. Ciò significa che il diodo collettore di base (non più comunemente mostrato sul simbolo, anche se una volta era quando i BJT erano essi stessi resi più simmetricamente) può essere (e sarà) distorto in avanti. Quindi quando il BJT dovrebbe essere spento , in realtà non lo è. Invece, c'è un diodo polarizzato in avanti intercettato tra5V e 3Vcon due resistori per limitare la corrente. Quindi l'output avrà un valore medio sopra3V ma anche non del tutto 5V.
La simmetria fallisce.
È facile da risolvere. Possiamo solo cambiare la tensione di base in3V:
simula questo circuito
E questo funziona.
Supponiamo che tu voglia renderlo bidirezionale. Potresti semplicemente usare due di questi circuiti, uno per ogni direzione?
simula questo circuito
E la risposta è, sì, puoi. In effetti, ciò che ho fatto è semplicemente riprodurre quel circuito che mangia-coda-cane presentato dall'OP. È la stessa cosa. Ma ora puoi vedere la progressione che ha portato ad esso. E non è più confuso come qualche cosa strana, con la coda di cane incrociata. Sono solo due circuiti elaborati individualmente messi insieme in uno più grande.
Ma ricordi il problema precedente con il circuito sbagliato ? Il fatto che vi sia un subdolo diodo collettore di base che ha causato il funzionamento errato del circuito? Questo fatto dovrebbe ricordarci che tutti i BJT possono anche funzionare in modalità inversa. In questo modo, soprattutto con i moderni disegni asimmetrici per i loro collezionisti ed emettitori, significa cheβin una modalità sarà diversa dall'altra (tra le altre differenze). Ma ciò non significa che non funzionino.
E se fossimo appena tornati al nostro primo circuito e aggiungessimo semplicemente quel pull-up extra:
simula questo circuito
Funzionerebbe? La risposta è sì, funzionerà davvero. L'unica domanda rimanente potrebbe essere su quale modo puntare l'emettitore. Ed è qui che una buona risposta "dipende". Ad esempio, ci sono problemi di archiviazione dei costi da tenere in considerazione. (E questo è un motivo per cui c'è una differenza nel comportamento per il fronte di salita rispetto al comportamento di fronte di discesa mostrato nel grafico dall'OP.) La risposta dipenderà da ciò che ti interessa in quanto vi saranno considerazioni di fronte di salita e di discesa e nessuna risposta particolare ha sempre ragione. Per i miei scopi qui, eviterò di trascinarlo ulteriormente e invece lascerò quella domanda come qualcosa su cui riflettere. È sufficiente che questo circuito funzioni, indipendentemente.
Nota : il valore effettivo dei resistori utilizzati nei circuiti di cui sopra non implica che questi siano gli unici valori corretti da utilizzare in determinate circostanze. In genere, le uscite digitali possono sprofondare di più1mA della corrente del convertitore e, in genere, gli ingressi digitali affonderanno in modo significativamente inferiore 100μ A. Ma questi presupposti potrebbero essere errati per casi specifici. Tuttavia, non è difficile modificare i dettagli. Quindi l'idea di base può ancora essere applicata, anche se con modifiche ragionate nei valori dei resistori.
Ci sono più passaggi che uno potrebbe prendere, ora. E Trevor ha trovato un bell'esempio di dove si potrebbe andare. Lo includerò qui per catturare quel risultato. Vale la pena averlo. Chi è interessato può considerare i perché e i motivi. Senza ulteriori spiegazioni da parte mia, goditi l'aggiunta di Trevor di seguito: