Logička vrata: sve što trebate znati

logička vrata

Las logička vrata su osnova digitalne elektronike. Zbog toga su vrlo važni, a ako želite s njima početi raditi, trebali biste znati što su, kako su konstituirani i njihovu funkciju. Dakle, možete koristiti seriju čipova koji postoje na tržištu koji imaju ovu vrstu vrata kako biste mogli početi izrađivati ​​vlastite projekte koji rade s ovom logikom.

Ova vrata, u kombinaciji s drugim Elektroničke komponente, pa čak i s pločama poput Arduino, oni mogu dati puno igre proizvođačima kao što možete i sami vidjeti.

Što su logička vrata?

digitalni logički sklop

Las logička vrata temeljni su elementi digitalne logike za implementaciju digitalnih elektroničkih sklopova. Ova vrata pružaju signale niskog (0) ili visokog (1) napona na svom izlazu ovisno o stanju njihovih ulaza. U pravilu imaju jedan izlaz i dva ulaza, ali mogu biti vrata s više od 2 ulaza. Osim toga, postoje posebnosti kao što su invertirajuća vrata ili NE, ona ima samo jedan ulaz i jedan izlaz.

Zahvaljujući ovim Booleovim ulazima i izlazima možete dobiti elementarne binarne logičke operacije, kao što su zbrajanje, množenje, negacija itd.

Kako se provode?

Logička vrata se ne mogu implementirati samo na jedan način. Zapravo, zato postoje različiti logične obitelji. Svaka od ovih obitelji će implementirati vrata na jedan način, koristeći različite elektroničke komponente.

Po ejemploAko se TTL koristi za čip, vrata će biti sastavljena od bipolarnih tranzistora, dok se CMOS logika temelji isključivo na MOSFET tranzistorima. Uz ove dvije obitelji, koje su inače najpopularnije, postoje i druge poput BiCMOS (kombinira bipolarne i CMOS tranzistore), RTL (otpornike i bipolarne tranzistore), DTL (diode i tranzistori), ECL, IIL itd.

Ne postoji jedna obitelj puno bolja od druge, ovisit će o aplikaciji. Ali ipak, CMOS Jedan je od najčešće korištenih u naprednim sklopovima, kao što su CPU, MCU, GPU, memorija itd. Za druge jednostavnije sklopove također je uobičajeno pronaći TTL.

aplikacije

jednostavna zbrajalica

Primjena ovih logičkih vrata je beskrajna. S ovim bitnim "ciglama" možete graditi mnoštvo digitalnih sklopova. Od jednostavnog zbrajača, do složenog CPU-a, preko mnogih drugih sklopova koje možete zamisliti. Zapravo, mnogi sustavi koje koristite svaki dan, kao što su vaše računalo, vaš TV, mobilni, itd., imaju milijarde logičkih vrata.

Za izradu ovih sklopova potrebno je poznavanje digitalne logike, Booleove algebre, dobro poznavanje binarnog sustava, pojednostavljenje funkcija itd. Sve bi to dalo za još nekoliko članaka, ali bilo bi zanimljivo...

Un praktični primjer primjene logičkih vrata bio bi ovaj jednostavan zbrajač koji možete vidjeti na gornjoj slici. To je vrlo jednostavan sklop, koji je sposoban dodati dva bita (A i B) u svoje ulaze kako bi dao rezultat Zbroja, a također i Carry, odnosno ono što oduzmete... Možete vidjeti rezultate koje bi dati u sljedećoj tablici:

A B Suma nositi Binarni rezultat
0 0 0 0 00
0 1 1 0 01
1 0 1 0 01
1 1 0 1 10

Ako pogledate ovu tablicu, ako dodate 0 + 0 u binarnom sistemu, dobijete 0, ako dodate 1 + 0 to je 1, ali ako dodate 1 + 1, dobit će 2, što u binarnom sustavu odgovara 10.

Vrste logičkih vrata

SYMBOLS logička vrata

Što se tiče vrste logičkih vrataImate ih dobar broj, iako su najčešće korišteni sljedeći (s njihovim tablicama istinitosti):

Kao što možete vidjeti na gornjoj slici, postoji nekoliko nomenklatura za predstavljanje logičkih vrata u krugovima. Najrašireniji je ANSI (drugi red), iako je dobro poznavati ekvivalente da biste mogli interpretirati druge sklopove s drugim formatima (DIN ili njemački, BS ili britanski, IEC, NEMA, ...).
  • Međuspremnik (Da): poznat je kao međuspremnik ili izravna vrata, budući da će njegov izlaz imati isto stanje kao i njegov ulaz. Iako se može činiti beskorisnim, u mnogim logičkim sklopovima često se koristi kao strujno pojačalo ili kao sljedbenik napona.
ulaz izlaz
0 0
1 1
  • NE (inverter): je logička negacija (¬ o '), odnosno invertira bit na svom izlazu.
ulaz izlaz
0 1
1 0
  • I (Y): ova druga kapija obavlja funkciju proizvoda (·) binarnih bitova svog ulaza. Odnosno, to bi bilo kao množenje A i B. Prema tome, bilo što s nulom je nula, dalo bi jedinicu svom izlazu samo ako su oba ulaza 1. Otuda njegov naziv 1 I 1.
A B S
0 0 0
0 1 0
1 0 0
1 1 1
  • ZLATO): ova druga vrata obavljaju operaciju logičkog zbrajanja (+). To jest, ili jedan od njegovih izlaza ILI drugi, ILI oba moraju biti na 1 da bi njegov izlaz bio 1. Kada su oba 0, izlaz je također 0.
A B S
0 0 0
0 1 1
1 0 1
1 1 1
  • XOR (ili isključivo): Ovo ekskluzivno OR obavlja Booleovu funkciju A'B + AB ', a njegov simbol je

    . U ovom slučaju, ako su njegova dva ulaza jednaka, izlaz je 0. Ako su različiti, tada će biti 1.

A B S
0 0 0
0 1 1
1 0 1
1 1 0
  • NAND (Y negirano): je negirani logički proizvod, odnosno inverz od I. To je kao da koristite NOT na izlazu I za invertiranje izlaznih bitova. Dakle, rezultati su:
A B S
0 0 1
0 1 1
1 0 1
1 1 0
  • NOR (ili odbijeno): negirani logički zbroj, ili ono što je isto, OR sa svojim negiranim izlazom, što rezultira inverzom OR.
A B S
0 0 1
0 1 0
1 0 0
1 1 0
  • XNOR (isključivo NOR): to je poput primjene binarnog komplementa na vrata XOR. To jest, izvedite operaciju AB + A'B '. A puta B dodano A puta B odbijeno. Stoga će izlazi biti poput onih za invertirani XOR:
A B S
0 0 1
0 1 0
1 0 0
1 1 1

I NOR i NAND su dva najzanimljivija vrata, budući da su poznata kao univerzalna logička vrata. To jest, možete napraviti sklopove samo s njima koji predstavljaju bilo koju drugu vrstu logičkih vrata. Ovo je važno, jer ako kupite čips s ovim vratima, možete imati sve funkcije. Na primjer, ako su dva ulaza NOR-a premoštena ili je NAND ekvivalent NOT-u. Ovdje imate više ekvivalenata:

ekvivalentna vrata

Funkcije: electronics-tutorials.ws

Te SavjetujemDa biste saznali više, Google jednostavan krug s bilo kojim vratima. A da biste saznali što radi, napravite svojevrsni "obrnuti inženjering", pratite linije ulaza i izlaza i pogledajte status svake linije prema ulazima danim izlazu.

Po ejemploAko pogledate gornju sliku, dijagram ekvivalencije ILI s NAND vratima, vidjet ćete da se sastoji od dva NAND vrata s premošćenim izlazom i oba izlaza idu na drugi NAND. Imajte na umu sljedeće:

  • Ako odete na NAND tablicu istine, vidjet ćete da kada su njegova dva ulaza 0, izlaz je 1, a kada su njegova dva ulaza 1, izlaz je 0.
  • Kako su premošćeni, ako je ulaz 1 (jedan ulazi u oba), rezultat je 0. A kada je ulaz 0 (oba nula), izlaz će biti 1, što je ekvivalentno NE.
  • Stoga imamo dva NOT-a za bitove A i B. Na njihovom ćemo izlazu dakle imati A 'i B'.
  • Te dvije negacije idu u zadnji NAND, koji će izvesti inverzni logički proizvod ta dva bita.
  • Prema zakonima logike, ovo je jednako izravnom zbroju, to jest A + B. Stoga će konačni rezultat biti kao da je OR ...

Serija čipova Logic Gate - Gdje kupiti

U trgovinama specijaliziranim za elektroniku možete kupiti jeftin čips s logičkim vratima za početak korištenja u svojim projektima. Ovi čipovi nisu jedna logička vrata, ali vam omogućuju da ih imate nekoliko tako da možete povezati njihove ulaze i izlaze prema potrebi. Na primjer, na dijagramu na gornjoj slici možete vidjeti tipičan pinout DIP čipa s 4 NAND vrata. Osim toga, ima i dva pina za napajanje (Vcc i GND).

Evo nekoliko preporuke za kupnju:

Ostali resursi

Kako biste saznali više o tome kako implementirati ova vrata i kako početi stvarati sklopove s njima, možete koristiti ove Drugi resursi što preporučam:

Digitalna logika s Arduinom

Arduino UNO milis funkcije

Drugi resurs što imaš u rukama ako već imaš tanjur Arduino UNO u tvojim rukama je koristite Arduino IDE za izradu skica koji simuliraju ove logičke funkcije kako bi, na primjer, vidjeli rezultat na vizualniji način s LED diodom koja simulira izlaz vrata. Na primjer, stavljanje LED diode na pin 7 i korištenje 8 i 9 kao ulaza A i B:

int pinOut = 7;
int pinA = 8;
int pinB = 9;

void setup()
{
pinMode(pinOut, OUTPUT);
pinMode(pinA, INPUT);
pinMode(pinB, INPUT);
}
void loop()
{
boolean pinAState = digitalRead(pinA);
boolean pinBState = digitalRead(pinB);
boolean pinOutState;
//AND
pinOutState =pinAState & pinBState;
digitalWrite(pinOut, pinOutState);
}

Ovdje je korištena funkcija AND (&), kao što možete vidjeti, ali možete zamijeniti taj redak koda ispod reda // AND drugim za korištenje druge logičke funkcije:

//OR
pinOutState = pinAState | pinBState;

//NOT
pinOutState = !pinAState;

//XOR
pinOutState = pinAState ^ pinBState;

//NAND
pinOutState = !(pinAState & pinBState);

//NOR
pinOutState = !(pinAState | pinBState);

//XNOR
pinOutState = !(pinAState ^ pinBState);


Budite prvi koji će komentirati

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.