den logiska grindar är grunden för digital elektronik. Av denna anledning är de mycket viktiga, och om du vill börja arbeta med dem bör du veta vad de är, hur de är uppbyggda och deras funktion. Så du kan använda den serie av chips som finns på marknaden som har den här typen av dörrar så att du kan börja göra dina egna projekt som arbetar med denna logik.
Dessa dörrar, i kombination med andra Elektroniska komponenter, och även med tallrikar som Arduino, de kan ge mycket spel till skaparna som du själv kan se.
Vad är logiska grindar?
den logiska grindar de är grundläggande delar av digital logik för implementering av digitala elektroniska kretsar. Dessa grindar ger låg (0) eller hög (1) spänningssignal vid deras utgång beroende på tillståndet för deras ingångar. De har i allmänhet en utgång och två ingångar, men det kan finnas dörrar med fler än 2 ingångar. Dessutom finns det egenheter som den inverterande grinden eller NOT, den har bara en ingång och en utgång.
Tack vare dessa booleska ingångar och utgångar kan du få elementära binära logiska operationer, som addition, multiplikation, negation osv.
Hur implementeras de?
Logiska grindar kan inte bara implementeras på ett sätt. Det är faktiskt därför det finns olika logiska familjer. Var och en av dessa familjer kommer att implementera grinden på ett sätt, med hjälp av olika elektroniska komponenter.
Por ejemploOm TTL används för chippet kommer grindarna att bestå av bipolära transistorer, medan CMOS-logiken enbart baseras på MOSFET-transistorer. Utöver dessa två familjer, som vanligtvis är de mest populära, finns det även andra som BiCMOS (kombinerar bipolära och CMOS transistorer), RTL (motstånd och bipolära transistorer), DTL (dioder och transistorer), ECL, IIL, etc.
Det finns inte en familj mycket bättre än en annan, det beror på applikationen. Men hursomhelst, CMOS Det är en av de mest använda i avancerade kretsar, såsom CPU, MCU, GPU, minne, etc. För andra enklare kretsar är det också vanligt att hitta TTL.
tillämpningar
Tillämpningarna av dessa logiska grindar är oändliga. Med dessa viktiga "tegelstenar" kan du bygga många digitala kretsar. Från en enkel adderare till en komplex CPU, genom många andra kretsar som du kan föreställa dig. Faktum är att många av de system som du använder varje dag, som din PC, din TV, mobil, etc., har miljarder logiska grindar.
Un praktiskt exempel för tillämpning av logiska grindar skulle vara denna enkla adderare som du kan se i bilden ovan. Det är en mycket enkel krets, som kan lägga till två bitar (A och B) i sina ingångar för att ge summaresultatet, och även Carry, det vill säga vad du tar bort ... Du kan se resultaten det skulle ange i följande tabell:
A | B | Sum | Carry | Binärt resultat |
---|---|---|---|---|
0 | 0 | 0 | 0 | 00 |
0 | 1 | 1 | 0 | 01 |
1 | 0 | 1 | 0 | 01 |
1 | 1 | 0 | 1 | 10 |
Om du tittar på den här tabellen, om du lägger till 0 + 0 i binärt så ger det dig 0, om du lägger till 1 + 0 är det 1, men om du lägger till 1 + 1 skulle det ge 2, vilket i binärt system motsvarar 10.
Typer av logiska grindar
Som för typer av logiska grindarDu har ett stort antal av dem, även om de mest använda är följande (med deras sanningstabeller):
- Buffert (Ja): det är känt som buffert eller direkt grind, eftersom dess utgång kommer att ha samma tillstånd som dess ingång. Även om det kan verka värdelöst, används det i många logiska kretsar ofta som en strömförstärkare eller som en spänningsföljare.
Ingång | utgång |
---|---|
0 | 0 |
1 | 1 |
- INTE (växelriktare): är den logiska negationen (¬ o '), det vill säga den inverterar biten vid dess utgång.
Ingång | utgång |
---|---|
0 | 1 |
1 | 0 |
- OCH (Y): denna andra grind utför en produktfunktion (·) av de binära bitarna i dess ingång. Det vill säga, det skulle vara som att multiplicera A och B. Därför är allt med noll noll, det skulle bara ge en till dess utdata om båda ingångarna är 1. Därav namnet 1 OCH 1.
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
- GULD): denna andra grind utför en logisk additionsoperation (+). Det vill säga, antingen en av dess utgångar ELLER den andra, ELLER båda måste vara på 1 för att dess utsignal ska vara 1. När båda är 0, är utsignalen 0 också.
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
- XOR (eller exklusiv): Detta exklusiva ELLER utför den booleska funktionen A'B + AB ', och dess symbol är
. I det här fallet, om dess två ingångar är lika, är utgången 0. Om de är olika blir den 1.
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
- NAND (Y negerad): är den negerade logiska produkten, det vill säga inversen av AND. Det är som att använda en NOT på AND-utgången för att invertera utgångsbitarna. Därför är resultaten:
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
- NOR (eller nekad): den negerade logiska summan, eller vad som är detsamma, ett ELLER med dess negerade utsignal, vilket resulterar i inversen av ELLER.
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
- XNOR (exklusiv NOR): det är som att tillämpa det binära komplementet på en XOR-grind. Det vill säga, utför AB + A'B 'operationen. A gånger B läggs till A gånger B nekas. Därför kommer utgångarna att vara som de för den inverterade XOR:
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Både NOR och NAND är två av de mest intressanta portarna, eftersom de är kända som universella logiska grindar. Det vill säga, du kan bara göra kretsar med dem för att representera vilken annan typ av logisk grind som helst. Detta är viktigt, eftersom om du köper chips med dessa dörrar kan du ha alla funktioner. Till exempel, om de två ingångarna för en NOR är överbryggade eller en NAND är ekvivalent med en NOT. Du har fler motsvarigheter här:
Te jag rekomenderarOm du vill veta mer, Google en enkel krets med valfri grindar. Och för att ta reda på vad den gör, gör en sorts "reverse engineering", följ linjerna för in- och utgångar och se statusen för varje linje enligt de ingångar som ges till utgången.
Por ejemploOm du tittar på bilden ovan, ekvivalensdiagrammet för en OR med NAND-grindar, kommer du att se att den består av två NAND-grindar med deras utgång överbryggad och båda utgångarna går till en annan NAND. Tänk på följande:
- Om du går till NAND-sanningstabellen kommer du att se att när dess två ingångar är 0, är utgången 1, och när dess två ingångar är 1 är utgången 0.
- Eftersom de är överbryggade, om ingången är 1 (en anger båda), blir resultatet 0. Och när ingången är 0 (båda noll), blir utsignalen 1, vilket motsvarar ett NOT.
- Därför har vi två NOT för bitarna A och B. Vid deras utgång kommer vi därför att ha A 'och B'.
- Dessa två negationer går in i den sista NAND, som kommer att utföra en omvänd logisk produkt av dessa två bitar.
- Enligt logikens lagar är detta lika med den direkta summan, det vill säga A + B. Därför blir det slutliga resultatet som om det vore ett ELLER ...
Logic Gate Chip Series - Var kan man köpa
I butiker specialiserade på elektronik kan du köpa billiga chips med logiska grindar att börja använda i dina projekt. Dessa chips är inte en enda logisk grind, men de låter dig ha flera av dem så att du kan länka deras in- och utgångar efter behov. Till exempel, i diagrammet i bilden ovan kan du se en typisk pinout av ett DIP-chip med 4 NAND-grindar. Dessutom har den också två stift för ström (Vcc och GND).
Här är några köprekommendationer:
- Inga produkter hittade..
- Huaban: 30-chip kit med universella NAND-grindar.
- Zebulon: 120 CMOS-chipset.
Övriga resurser
För att lära dig mer om hur man implementerar dessa grindar och hur man börjar skapa kretsar med dem, kan du använda dessa En annan resurs vad rekommenderar jag:
- SimulIDE programvara för att kunna simulera driften av dessa kretsar med grindar. Det är gratis, öppen källkod och plattformsoberoende.
- Binär kalkylator online (Du kan också använda ditt operativsystems kalkylator i binärt läge).
- Inga produkter hittade..
- Digital Logic Circuits Book: från design till experiment.
Digital logik med Arduino
Annan resurs vad har du i händerna om du redan har en tallrik Arduino UNO i dina händer är använd Arduino IDE för att skapa skisser som simulerar dessa logiska funktioner för att till exempel se resultatet på ett mer visuellt sätt med en lysdiod som simulerar dörrens utsignal. Till exempel att sätta en lysdiod på stift 7 och använda 8 och 9 som ingångar A och 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); }
En AND (&)-funktion har använts här, som du kan se, men du kan ersätta den kodraden under // AND-raden med andra att använda andra logiska funktioner:
//OR pinOutState = pinAState | pinBState; //NOT pinOutState = !pinAState; //XOR pinOutState = pinAState ^ pinBState; //NAND pinOutState = !(pinAState & pinBState); //NOR pinOutState = !(pinAState | pinBState); //XNOR pinOutState = !(pinAState ^ pinBState);