Logische Gatter - Schaltkreisfamilien

Allgemeines

Als Standardlogik-Bausteine werden Komponenten bezeichnet, die eine einfache digitale Hardware-Funktion bereitstellen, die vom Anwender nicht modifiziert werden kann. Standardlogik-Bausteine sind in sogenannten Bausteinfamilien bzw. -serien zusammengefasst. Zu den wichtigsten zählen die 4000er-Serie und die 7400er-Serie (auch 74er-Serie genannt).

Familie TTL LS-TTL CMOS HCMOS
Bezeichnung 7400 74LS00 4001 74HC00
Betriebsspannung 4,75 V bis 5,25 V 4,75 V bis 5,25 V 3 V bis 15 V 3 V bis 6 V
Gatterlaufzeit 10 ns 9 ns 50 ns 9 ns
maximale Frequenz bei 5V 25MHz 40MHz 5MHz 50MHz
Leistung pro Gatter bei 0Hz 10mW 2mW 1µW 1µW
Leistung pro Gatter bei 1MHz 10mW 2mW 1mW 0,5mW
Max. Strom bei LOW; 5V 1.6mA 4mA 0,5mA 4mA
Max Strom bei HIGH; 5V 4mA 4mA 0,5mA 4mA

Die Standardschaltkreise sind unter anderem in sogenannten DIL-Gehäuse (Dual In-Line) erhältlich. Zur Einbaukennung befindet sich eine Kerbe im Gehäuse. Liegt diese von oben gesehen links, befindet sich links davon der Anschluss Nr. 1. Die Zählrichtung der Pins erfolgt gegen den Uhrzeigersinn (siehe Abbildung). Bei einem 14-poligen Baustein ist z.B. auf Pin 7 oft GND und auf Pin 14 die Versorgungsspannung anzuschließen. Dennoch solltest du die genaue Pinbelegung immer aus dem jeweiligen Datenblatt entnehmen.

Digitale integrierte Schaltkreise als Logikbausteine können einfache bis komplexe logische Schaltfunktionen realisieren. Die Palette reicht von Bauelementen mit mehreren einfachen Logikgattern, wie UND-, ODER- und NAND-Gattern, sowie Flipflops bis hin zu programmierbaren Bauelementen wie PLDs (Programmable Logic Devices), FPGAs (Field Programmable Gate Arrays), Gate-Arrays und ASICs (Application-Specific Integrated Circuits, applikationsspezifische integrierte Schaltungen).

Schaltkreisfamilien

DTL

DTL-Schaltungen (Dioden-Transistor-Logik) bestehen aus Dioden, Transistoren und Widerständen. Anfangs wurden diese Schaltungen diskret aufgebaut, später erfolgte die Herstellung als Dünnfilm- und Dickschichtschaltungen. Heute findet man sie manchmal noch in Form monolithischer ICs. Die Grundschaltungen der DTL-Technik sind die UND-, ODER- und NICHT-Schaltungen. Aus Ihnen werden alle weiteren logischen Verknüpfungen aufgebaut.

DTL-UND.

DTL-ODER.

DTL-NICHT.


Experiment: DTL-UND Baustein nachbilden

text

Arduino Sketch

Aufbau

  • DTL-UND Gatter

  • Serial Monitor

Ablauf

  • Wahrheitstabelle durchlaufen

  • Ausgangssignal aufzeichnen

  • über Serial Monitor ausgeben

Wahrheitstalle

A (Eingang) B (Eingang) Q (Ausgang)
0 0 0
1 0 0
0 1 0
1 1 1
Bautteilliste (BOM)
Bauteil Anzahl Beschreibung
Arduino Uno oder Nano 1 Mikrocontroller
Breadboard + Kabel 1Set Aufbau & Verbindung
Widerstand 10 kΩ 1 bedrahtet
Diode 1N4148 2 Si-Diode
Arduino Code

// Arduino und Logikbaustein SN7408 (SN7400, SN7432)
const int OUT_PIN_A = 2;
const int OUT_PIN_B = 3;
const int IN_PIN_Q = 9;

void setup() {
    //Ausgänge
    pinMode(OUT_PIN_A, OUTPUT);
    pinMode(OUT_PIN_B, OUTPUT);
    //Eigang
    pinMode(IN_PIN_Q, INPUT_PULLUP);
    Serial.begin(19200);
}

void loop() {
    int state;

    digitalWrite(OUT_PIN_A, LOW);
    digitalWrite(OUT_PIN_B, LOW);
    state = digitalRead(IN_PIN_Q);
    Serial.print("A=0; B=0");
    Serial.print("Q=");
    Serial.println(state);
    delay(1000);
    digitalWrite(OUT_PIN_A, HIGH);
    digitalWrite(OUT_PIN_B, LOW);
    state = digitalRead(IN_PIN_Q);
    Serial.print("A=1; B=0");
    Serial.print("Q=");
    Serial.println(state);
    delay(1000);
    digitalWrite(OUT_PIN_A, LOW);
    digitalWrite(OUT_PIN_B, HIGH);
    state = digitalRead(IN_PIN_Q);
    Serial.print("A=0; B=1");
    Serial.print("Q=");
    Serial.println(state);
    delay(1000); 
    digitalWrite(OUT_PIN_A, HIGH);
    digitalWrite(OUT_PIN_B, HIGH);
    state = digitalRead(IN_PIN_Q);
    Serial.print("A=1; B=1");
    Serial.print("Q=");
    Serial.println(state);
    delay(1000);
}

Ergebnis
  • Ergebnis wie in Wahrheitstabelle vorgegeben.


TTL

Die Eingangsdioden der DTL-Technik wurden in der TTL-Technik durch einen bipolaren Multi-Emitter-Transistor ersetzt (siehe Abbildung 5.20). Die Bezeichnung TTL bedeutet Transistor-Transistor-Logic. Die Verknüpfungen werden bei dieser Schaltkreisfamilie ausschließlich durch bipolare Transistorstufen erzeugt. Zur Verschiebung von Pegel und zur Spannungsableitung werden Dioden verwendet. Widerstände dienen als Spannungsteiler und Strombegrenzer.

TTL-NAND.

Die TTL-Schaltkreisfamilie gibt es in verschiedenen Unterfamilien, die für verschiedene Anwendungen mit besonderen Eigenschaften entwickelt wurden. Hier ein kleiner Überblick über ein paar Standardlogik TTL-Bausteine:

Bezeichnung Beschreibung Anzahl der Pins
SN7400 Vierfach-NAND 14
SN7402 Vierfach-NOR 1
SN7404 Sechsfach-NICHT 14
SN7408 Vierfach-UND 14
SN7414 Sechsfach-NICHT (Schmitt-Trigger) 14
SN7432 Vierfach-ODER 14
SN7486 Vierfach-XOR 14

Experiment: Arduino und SN7432

Der SN7432 ist ein Vierfach-ODER-Baustein. Die Anschlussbelegung des Bausteins findest du in der nachfolgenden Abbildung.

Pin Bezeichnung Richtung Funktion
1 1A Eingang Erstes Gatter
2 1B Eingang Erstes Gatter
3 1Y Ausgang Erstes Gatter
4 2A Eingang Zweites Gatter
5 2B Eingang Zweites Gatter
6 2Y Ausgang Zweites Gatter
7 GND Versorgung Masse
8, 9, 10 3A, 3B, 3Y Drittes Gatter
11, 12, 13 4A, 4B, 4Y Viertes Gatter
14 VCC Versorgung +5,0 V DC

Um die Eingangssignale besser verfolgen zu können, werden wir nun die beiden Ausgangspins D2 und D3 jeweils mit einer LED und den Eingängen 1A bzw. 1B des SN7432 verbinden. Der Ausgang 1Y des SN7432 wird über einen 1,5-kΩ-Widerstand mit einer Low-Current-LED verbunden.

Arduino Sketch
Arduino Code

//Arduino und Logikbaustein SN7432 (SN7400, SN7408 etc.)
const int OUT_PIN_A = 2;
const int OUT_PIN_B = 3;

void setup() {
    //Ausgänge
    pinMode(OUT_PIN_A, OUTPUT);
    pinMode(OUT_PIN_B, OUTPUT);
}

void loop() {
    digitalWrite(OUT_PIN_A, LOW);
    digitalWrite(OUT_PIN_B, LOW);
    delay(1000);
    digitalWrite(OUT_PIN_A, HIGH);
    digitalWrite(OUT_PIN_B, LOW);
    delay(1000);
    digitalWrite(OUT_PIN_A, LOW);
    digitalWrite(OUT_PIN_B, HIGH);
    delay(1000);
    digitalWrite(OUT_PIN_A, HIGH);
    digitalWrite(OUT_PIN_B, HIGH);
    delay(1000);
}

Funktionsweise
A (Eingang) B (Eingang) Q (Ausgang)
0 0 0
1 0 1
0 1 1
1 1 1

Wenn einer der beiden Ausgänge D2 oder D3 auf HIGH geschaltet wird, leuchtet die rote LED am Ausgang 1Y. Sind beide Ausgänge D2 und D3 auf LOW geschaltet, erlischt die rote LED am Ausgang 1Y. Der Arduino schaltet seine Ausgänge D2 und D3 gemäß der nebenstehenden Wahrheitstabelle.


CMOS

Die am häufigsten verwendete digitale Schaltkreistechnologie ist die CMOS-Technologie (CMOS = Complementary Metal Oxide Semiconductor). CMOS-Bausteine haben ein sehr hohes Fan-Out, da die Eingänge der Gatter sehr hochohmig sind. Darum können an den Ausgang eines Gatters mehrere Eingänge anderer Gatter angeschlossen werden.

Bei einer so hohen kapazitiven Belastung eines Ausgangs erhöhen sich jedoch die Schaltzeiten. CMOS-Bausteine sind trotz der Eingangsschutzschaltung sehr empfindlich gegen statische Aufladung. Die Impulsflanken zur Ansteuerung von CMOS-Gattern müssen eine Mindeststeilheit haben. Bei langsamem Umschalten sind die Ausgangstransistoren zu lange beide leitend, was zu thermischen Problemen führt.

Die nebenstehende Abbildung zeigt die CMOS-Schaltung eines Nicht-Gatters bzw. Inverters. In dieser Inverterschaltung ist immer ein Transistor leitend und der andere gesperrt. Ist der Ausgangspegel 0 V oder LOW, dann sperrt der p-Kanal MOS-FET. Beim Ausgangspegel 5 V oder HIGH ist der n-Kanal MOS-FET gesperrt. In beiden Fällen fließt kein Strom.

CMOS-Inverter.

systeme.io

Experiment: Arduino und 74HC14 (Inverter mit Schmitt-Trigger)

Mechanische Taster und Schalter erzeugen keine idealen digitalen Signale. Im Gegenteil, wie wir es in Kapitel 3.8 sehen konnten. Beim Betätigen „prellt“ der Schalter. Die Kontakte öffnen und schließen mehrere Male innerhalb weniger Millisekunden. Dadurch entsteht eine schnelle Abfolge von HIGH/LOW-Impulsen, die für digitale Systeme wie den Arduino mehrere Tastendrücke darstellen können. Ein Schmitt-Trigger ist eine einfache, elegante und zuverlässige Lösung zur Hardware-Entprellung. Er formt das wackelige Eingangssignal in ein sauberes digitales Rechtecksignal um.

 

Ein Schmitt-Trigger ist ein digitaler Eingang mit Hysterese. Das bedeutet, es gibt zwei Schaltschwellen:

·        obere Schwelle V_TH+ (bei steigender Flanke)

·        untere Schwelle V_TH− (bei fallender Flanke)

Das Ausgangssignal ändert sich erst, wenn die Eingangsspannung eine der Schwellen eindeutig überschreitet. Damit ignoriert der Schmitt-Trigger langsame Flanken, Prellimpulse, kleine Spannungsstörungen und Rauschen. Das Ergebnis ist ein sauberer, stabiler digitaler Pegel.

Der 74HC14 enthält 6 unabhängige Inverter (siehe Abbildung), jeder mit Schmitt-Trigger-Eingang. Der SN7414 besitzt eine schnelle Reaktionszeit und eine hohe Störsicherheit. Er eignet sich ideal zur Glättung von Taster-, Sensoren- oder PWM-Signalen.

Pin Bezeichnung Richtung Funktion
1 1A Eingang Erster Inverter
2 1Y Ausgang Erster Inverter
3 2A Ausgang Zweiter Inverter
4 2Y Eingang Zweiter Inverter
5 3A Eingang Dritter Inverter
6 3Y Ausgang Dritter Inverter
7 GND Versorgung Masse
8, 9 4A, 4Y Vierter Inverter
10, 11 5A, 5Y Fünfter Inverter
12, 13 6A, 6Y Sechter Inverter
14 VCC Versorgung +5,0 V DC
Arduino Sketch
Arduino Code

//Taster entprellen mit SN7414
const int debouncedInput = 2;
const int led = 5;

bool toggleState = false;
bool lastState = LOW;

void setup() {
  pinMode(debouncedInput, INPUT);
  pinMode(led, OUTPUT);
}

void loop() {
  int current = digitalRead(debouncedInput);

  if (current == HIGH && lastState == LOW) {
    toggleState = !toggleState;
    digitalWrite(led, toggleState ? HIGH : LOW);
  }
  lastState = current;
}

Funktionsweise

Der Eingang des Schmitt-Trigger wird mit einem Pull-Up Widerstand beschaltet. Der Schmitt-Trigger invertiert das Signal, d.h. wenn der Taster nicht gedrückt ist, ist der Eingang auf HIGH und der Ausgang auf LOW. Wird der Taster gedrückt, geht der Eingang auf LOW und der Ausgang auf HIGH.

Falls nötig, kann man einen zweiten Schmitt-Trigger in Reihe schalten, um die Polarität wieder herzustellen. Solange das Eingangssignal nicht die obere Schwelle des SN7414 überschreitet, bleibt der Ausgang stabil. Kurze Prellimpulse reichen nicht aus, um die Hysterese-Schwellen zu überschreiten. Das Ergebnis ist ein sauberer HIGH-Pegel als Ausgangssignal.



TEILEN

Jetzt herunterladen.

Lade mein Freebie - "Die 10 wichtigsten Konzepte, die du wirklich verstehen musst" hier herunter.

ÜBER MICH

Ich möchte dich durch inspirierende Projekte und nützliche Anleitungen unterstützen, um deine digitalen Fähigkeiten zu verbessern und selbstbewusst in die Welt der Elektronik einzutauchen.

Erstellt mit © systeme.io • Datenschutzerklärung • AGB