Sommario:

Crea un cancello XOR con i transistor: 6 passaggi
Crea un cancello XOR con i transistor: 6 passaggi

Video: Crea un cancello XOR con i transistor: 6 passaggi

Video: Crea un cancello XOR con i transistor: 6 passaggi
Video: Simulation of 4 bit CLA adder using Custom Compiler in Synopsys Part 2: Propagate block design 2024, Dicembre
Anonim
Crea un cancello XOR con i transistor
Crea un cancello XOR con i transistor

Le porte OR sono molto utili, ma hanno una caratteristica strana che può funzionare bene, ma in alcune applicazioni può causare problemi. Questo è il fatto che se entrambi gli input sono uno, anche l'output è uno. Se avessimo un'applicazione in cui non lo volevamo, forse stavamo costruendo un sommatore, useremmo qualcosa chiamato Exclusive Or Gate, che è abbreviato XOR o EOR.

Passaggio 1: progettazione

Design
Design
Design
Design
Design
Design

Un modo per ottenere il comportamento XOR è prendere una normale porta OR, quindi affrontare il caso in cui entrambi gli input sono positivi. Se colleghiamo una porta AND agli ingressi, possiamo ottenere un segnale quando si presenta quel caso. Possiamo quindi prendere quel segnale, invertirlo, quindi collegare quello e l'uscita della porta OR a un'altra porta AND. Ciò farà sì che ogni volta che non è il caso che entrambi gli ingressi siano attivi, la porta OR passerà semplicemente attraverso la seconda porta AND, ma quando entrambi gli ingressi diventano alti, la prima porta AND spegnerà la seconda porta AND e manterrà l'uscita si spegne indipendentemente dallo stato della porta OR.

Una regolazione che ho fatto nel circuito finale è stata la commutazione della combinazione AND/NOT per una porta NAND, che è solo una porta AND invertita. Il modo in cui funziona sarà evidente in seguito.

Ora scriviamo lo stesso schema, ma con transistor e resistori. Il tipo di transistor che ho usato è il 2N2222 BJT, che è abbastanza comune (funzionano anche il 2N4401 e il 2N3904). Ho usato 6 transistor, 3 resistori da 20k ohm, 3 resistori da 47k ohm, 1 resistore da 510 ohm, due pulsanti e un LED. Ho scelto questi valori di resistenza in base alla mia fonte di alimentazione da 5 V e alla corrente minima di 0,1 mA o 0,0001 A per il 2N2222. se usi la legge di Ohm per calcolare la corretta resistenza a terra per quei valori, ottieni 50.000 ohm. 47k ohm sono abbastanza vicini per la porta NAND inferiore, ma perché il valore più basso per la porta OR e il primo ingresso della seconda porta AND? Il motivo è che l'emettitore dei transistor che compongono la porta OR è collegato tramite la base di un altro transistor, quindi scorre attraverso un secondo resistore, non direttamente a massa. (Il resistore di limitazione della corrente del LED è un valore sufficientemente basso da essere insignificante in questo calcolo).

Passaggio 2: aggiunta di transistor, pulsanti e LED

Aggiunta di transistor, pulsanti e LED
Aggiunta di transistor, pulsanti e LED

Passaggio 3: aggiunta di resistori

Aggiunta di resistori
Aggiunta di resistori

Passaggio 4: aggiunta di cavi

Aggiunta di fili
Aggiunta di fili
Aggiunta di fili
Aggiunta di fili

Il modo in cui sto alimentando la mia scheda è collegare i binari di alimentazione a un alimentatore da banco impostato su 5 V e 500 mA di corrente massima. Lo stesso tipo di ingresso può essere ottenuto collegando l'alimentazione ai pin 5V e GND di Arduino, ma in realtà funziona un alimentatore a 5V (sebbene si consiglia uno limitato di corrente per ridurre il rischio di far saltare in aria i componenti).

Passaggio 5: test e risoluzione dei problemi

Ora che è collegato, ti farò provare il tuo. Se si preme uno o l'altro dei pulsanti, il LED dovrebbe accendersi. Se vengono premuti entrambi, tuttavia, il LED si spegne.

Problemi comuni

  1. Se un ingresso sembra non funzionare come dovrebbe e il caso in cui entrambi gli ingressi sono attivi fornisce ancora uno zero, controllare la tensione all'ingresso della porta AND che proviene dalla porta OR quando viene premuto quel pulsante. Se è basso (< 2V), ridurre la resistenza del resistore che va dall'OR alla porta AND.
  2. Se la porta si comporta ancora come una porta OR, il che significa che quando entrambi gli ingressi sono attivi, l'uscita è attiva, controlla la tensione che entra nell'ingresso della porta AND che proviene dalla porta NAND. Se è alto quando vengono premuti entrambi i pulsanti, assicurati che i transistor nella porta AND funzionino e controlla la resistenza da lì a terra quando vengono premuti entrambi i pulsanti. Se quella resistenza è alta e/o quella tensione è bassa, sostituire quei due transistor o ridurre la resistenza degli ingressi alle porte NAND.

Passaggio 6: vuoi di più?

Se ti è piaciuto questo Instructable, vai avanti e dai un'occhiata al mio libro su Amazon chiamato "The Beginners Guide to Arduino". Riguarda i principi dei circuiti di base e il codice C++ utilizzato per programmare un Arduino.

Consigliato: