Mantık kapıları: bilmeniz gereken her şey

mantık kapıları

W mantık kapıları dijital elektroniğin temelidir. Bu nedenle çok önemlidirler ve onlarla çalışmaya başlamak istiyorsanız ne olduklarını, nasıl oluştuklarını ve işlevlerini bilmelisiniz. Yani piyasada bulunan bu tip kapılara sahip chip serilerini kullanabilir ve bu mantıkla çalışarak kendi projelerinizi yapmaya başlayabilirsiniz.

Bu kapılar, diğer Elektronik parçalar, ve hatta gibi plakalarla Arduino, yapımcılara çok fazla oyun verebilirler kendin de görebileceğin gibi.

Mantık kapıları nedir?

dijital mantık devresi

W mantık kapıları dijital elektronik devrelerin uygulanması için dijital mantığın temel unsurlarıdır. Bu kapılar, girişlerinin durumuna bağlı olarak çıkışlarında düşük (0) veya yüksek (1) voltaj sinyalleri sağlar. Genellikle bir çıkış ve iki girişleri vardır, ancak 2'den fazla girişi olan kapılar olabilir. Ek olarak, ters çevirme kapısı veya DEĞİL gibi özellikler vardır, yalnızca bir girişi ve bir çıkışı vardır.

Bu Boole giriş ve çıkışları sayesinde elde edebileceğiniz temel ikili mantık işlemleritoplama, çarpma, olumsuzlama gibi.

Nasıl uygulanır?

Mantık kapıları sadece tek bir şekilde uygulanamaz. Aslında, bu yüzden farklı mantıksal aileler. Bu ailelerin her biri, farklı elektronik bileşenler kullanarak geçidi tek bir şekilde uygulayacaktır.

tarafından örnekÇip için TTL kullanılıyorsa, kapılar bipolar transistörlerden oluşacak, CMOS mantığı ise yalnızca MOSFET transistörlerine dayanıyor. Genellikle en popüler olan bu iki aileye ek olarak, BiCMOS (bipolar ve CMOS transistörleri birleştirir), RTL (dirençler ve bipolar transistörler), DTL (diyotlar ve transistörler), ECL, IIL vb.

Diğerinden çok daha iyi bir aile yoktur, uygulamaya bağlı olacaktır. Ama yine de, CMOS CPU, MCU, GPU, bellek vb. gibi gelişmiş devrelerde en çok kullanılanlardan biridir. Diğer daha basit devreler için TTL'yi bulmak da yaygındır.

uygulamaları

basit toplayıcı

Bu mantık kapılarının uygulamaları sonsuzdur. Bu temel "tuğlalar" ile inşa edebilirsiniz çok sayıda dijital devre. Basit bir toplayıcıdan karmaşık bir CPU'ya, hayal edebileceğiniz diğer birçok devre aracılığıyla. Aslında, PC'niz, TV'niz, cep telefonunuz vb. gibi her gün kullandığınız sistemlerin birçoğunda milyarlarca mantık kapısı vardır.

Bu devreleri oluşturabilmek için sayısal mantık, Boole cebri bilgisine sahip olmak, ikili sistem bilgisine sahip olmak, fonksiyonları basitleştirmek vb. Bütün bunlar birkaç makale daha verecekti, ama ilginç olurdu ...

Un pratik örnek Mantık kapılarının uygulanması, yukarıdaki resimde görebileceğiniz bu basit toplayıcı olacaktır. Toplam sonucunu vermek için girişlerine iki bit (A ve B) ekleyebilen çok basit bir devredir ve ayrıca Carry yani ne alırsanız onu alırsınız... Yapacağı sonuçları görebilirsiniz. aşağıdaki tabloda veriniz:

A B Toplam Taşımak ikili sonuç
0 0 0 0 00
0 1 1 0 01
1 0 1 0 01
1 1 0 1 10

Bu tabloya bakarsanız, ikili sistemde 0 + 0 eklerseniz 0 verir, 1 + 0 eklerseniz 1, 1 + 1 eklerseniz 2 verir, bu ikili sistemde 10'a tekabül eder.

Mantık kapısı türleri

SEMBOLLER mantık kapıları

Gelince mantık kapısı türleri, bunlardan çok sayıda var, ancak en çok kullanılanlar (doğruluk tablolarıyla birlikte):

Yukarıdaki resimde de görebileceğiniz gibi, devrelerde mantık kapılarını temsil eden birkaç isimlendirme vardır. En yaygın olanı ANSI'dir (ikinci sıra), ancak diğer devreleri başka formatlarla (DIN veya Almanca, BS veya İngiliz, IEC, NEMA, ...) yorumlayabilmek için eşdeğerleri bilmek iyidir.
  • Tampon (Evet): çıktısı girdisiyle aynı duruma sahip olacağından arabellek veya doğrudan kapı olarak bilinir. İşe yaramaz gibi görünse de, birçok mantık devresinde genellikle akım yükselticisi veya gerilim takipçisi olarak kullanılır.
Giriş Salida
0 0
1 1
  • DEĞİL (invertör): mantıksal olumsuzlamadır (¬ o '), yani çıkışındaki biti tersine çevirir.
Giriş Salida
0 1
1 0
  • VE (Y): bu diğer geçit, girdisinin ikili bitlerinin bir çarpım işlevini (·) gerçekleştirir. Yani, A ve B'yi çarpmak gibi olurdu. Bu nedenle, sıfırla herhangi bir şey sıfırdır, her iki girdi de 1 ise çıktısına yalnızca bir verir. Dolayısıyla 1 VE 1 adı.
A B S
0 0 0
0 1 0
1 0 0
1 1 1
  • ALTIN): bu diğer kapı, mantıksal bir toplama işlemi (+) gerçekleştirir. Yani, çıktısının 1 olması için çıktılarından biri VEYA diğeri VEYA her ikisinin de 1 olması gerekir. Her ikisi de 0 olduğunda, çıktı da 0'dır.
A B S
0 0 0
0 1 1
1 0 1
1 1 1
  • XOR (veya özel): Bu özel VEYA, A'B + AB ' Boole işlevini gerçekleştirir ve sembolü

    . Bu durumda iki girişi eşitse çıkış 0'dır. Farklıysa 1 olur.

A B S
0 0 0
0 1 1
1 0 1
1 1 0
  • NAND (Y reddedildi): olumsuzlanan mantıksal çarpımdır, yani VE'nin tersidir. Bu, çıkış bitlerini tersine çevirmek için AND çıkışında bir NOT kullanmak gibidir. Bu nedenle, sonuçlar:
A B S
0 0 1
0 1 1
1 0 1
1 1 0
  • NOR (Veya reddedildi): olumsuzlanan mantıksal toplam veya aynı olan, olumsuzlanan çıktısı olan bir VEYA, VEYA'nın tersiyle sonuçlanır.
A B S
0 0 1
0 1 0
1 0 0
1 1 0
  • XNOR (özel NOR): ikili tamamlayıcıyı bir XOR geçidine uygulamak gibidir. Yani AB + A'B' işlemini gerçekleştirin. A çarpı B eklendi, A çarpı B reddedildi. Bu nedenle çıktılar, ters çevrilmiş XOR'unki gibi olacaktır:
A B S
0 0 1
0 1 0
1 0 0
1 1 1

Hem NOR hem de NAND, en ilginç kapılardan ikisidir, çünkü onlar olarak bilinirler. evrensel mantık kapıları. Yani, başka herhangi bir mantık geçidi türünü temsil etmek için yalnızca bunlarla devreler yapabilirsiniz. Bu önemlidir, çünkü bu kapılarla chip satın alırsanız tüm fonksiyonlara sahip olabilirsiniz. Örneğin, bir NOR'un iki girişi köprülenmişse veya bir NAND, bir NOT'a eşdeğerse. Burada daha fazla eşdeğeriniz var:

eşdeğer kapılar

Fonksiyonlar: elektronik-tutorials.ws

Te ben öneririmDaha fazlasını öğrenmek için, Google herhangi bir kapıya sahip basit bir devre. Ve ne yaptığını öğrenmek için bir nevi "tersine mühendislik" yapın, giriş çıkışların satırlarını takip edin ve çıkışa verilen girişlere göre her satırın durumunu görün.

tarafından örnekYukarıdaki resme, NAND geçitli bir OR'nin denklik şemasına bakarsanız, çıkışları köprülenmiş iki NAND kapısından oluştuğunu ve her iki çıkışın da başka bir NAND'a gittiğini göreceksiniz. Aşağıdakileri aklınızda bulundurun:

  • NAND doğruluk tablosuna giderseniz, iki girişi 0 olduğunda çıkışının 1, iki girişi 1 olduğunda çıkışının 0 olduğunu göreceksiniz.
  • Köprülendiklerinde, eğer giriş 1 ise (her ikisi de girilirse) sonuç 0 olur. Ve giriş 0 (her ikisi de sıfır) olduğunda, çıkış 1 olur ve bu bir NOT'a eşdeğerdir.
  • Bu nedenle, A ve B bitleri için iki DEĞİL'e sahibiz. Bu nedenle, çıktılarında A 've B'ye sahip olacağız.
  • Bu iki olumsuzlama, bu iki bitin ters mantıksal çarpımını gerçekleştirecek olan son NAND'a gider.
  • Mantık yasalarına göre, bu doğrudan toplama, yani A + B'ye eşittir. Bu nedenle, nihai sonuç bir OR gibi olacaktır ...

Logic Gate Chip Serisi - Nereden Satın Alınır

Elektronik konusunda uzmanlaşmış mağazalarda ucuz cips satın al projelerinizde kullanmaya başlamak için mantık kapıları ile. Bu yongalar tek bir mantık geçidi değildir, ancak giriş ve çıkışlarını ihtiyaç duyduğunuz şekilde bağlayabilmeniz için birkaç tanesine sahip olmanıza izin verir. Örneğin, yukarıdaki resimdeki şemada, 4 NAND kapılı bir DIP yongasının tipik bir pin çıkışını görebilirsiniz. Ek olarak, güç için iki pini de vardır (Vcc ve GND).

İşte bazı satın alma önerileri:

Diğer kaynaklar

Bu geçitlerin nasıl uygulanacağı ve onlarla devre oluşturmaya nasıl başlayacağınız hakkında daha fazla bilgi edinmek için bunlardan faydalanabilirsiniz. Başka kaynaklar ne tavsiye ederim:

Arduino ile dijital mantık

Arduino UNO milis fonksiyonları

Diğer kaynak zaten varsa elinde ne var bir tabak Arduino UNO senin elinde eskizler oluşturmak için Arduino IDE kullanın Örneğin, kapının çıkışını simüle eden bir LED ile sonucu daha görsel bir şekilde görmek için bu mantık fonksiyonlarını simüle eder. Örneğin, pim 7'ye bir LED yerleştirmek ve 8 ve 9'u A ve B girişleri olarak kullanmak:

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);
}

Gördüğünüz gibi burada bir AND (&) işlevi kullanılmış, ancak // AND satırının altındaki bu kod satırını kullanmak için başkalarıyla değiştirebilirsiniz. diğer mantık fonksiyonları:

//OR
pinOutState = pinAState | pinBState;

//NOT
pinOutState = !pinAState;

//XOR
pinOutState = pinAState ^ pinBState;

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

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

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


İlk yorumu siz

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.