Digitale Logik: Grundlagen
Analog vs. Digital
In der analogen Welt kann eine Spannung jeden beliebigen Wert annehmen -- 0.000 V, 1.234 V, 3.782 V. In der digitalen Welt gibt es nur zwei Zustände:
- HIGH (logisch 1) -- eine Spannung oberhalb eines Schwellwerts
- LOW (logisch 0) -- eine Spannung unterhalb eines Schwellwerts
Das ist keine Einschränkung, sondern eine enorme Vereinfachung: Solange die Spannung eindeutig in einem der beiden Bereiche liegt, spielt der exakte Wert keine Rolle. 4.3 V und 4.8 V sind beide "HIGH". 0.1 V und 0.4 V sind beide "LOW". Rauschen, Temperaturdrift, Fertigungstoleranzen -- alles egal, solange die Pegel nicht in den verbotenen Bereich dazwischen rutschen.
Spannungspegel
Welche Spannung "HIGH" bedeutet und welche "LOW", hängt von der Logikfamilie ab. Für unsere 74HCT-Chips bei 5 V Versorgung:
| Pegel | Eingangsschwelle | Ausgangspegel |
|---|---|---|
| LOW (0) | < 0.8 V erkannt als LOW | < 0.4 V garantiert |
| HIGH (1) | > 2.0 V erkannt als HIGH | > 3.8 V garantiert |
| Verboten | 0.8 -- 2.0 V | -- |
Die Rauschmargen stecken in der Differenz: Der Ausgang liefert garantiert < 0.4 V (LOW) oder > 3.8 V (HIGH), aber der Eingang akzeptiert schon < 0.8 V bzw. > 2.0 V. Das heißt, das Signal darf auf dem Weg vom Ausgang zum Eingang um bis zu 0.4 V gestört werden (LOW) bzw. 1.8 V (HIGH), ohne dass Fehler entstehen.
Logikfamilien: TTL, CMOS, HCT
Die 74er-Serie gibt es in verschiedenen Technologien:
| Familie | Technologie | Versorgung | Besonderheit |
|---|---|---|---|
| 74LS | TTL (Bipolartransistoren) | 5 V | Klassiker aus den 70ern, veraltet |
| 74HC | CMOS | 2--6 V | Modern, sparsam, CMOS-Eingangspegel |
| 74HCT | CMOS mit TTL-Eingängen | 5 V | CMOS-Technik, aber TTL-kompatible Schwellen |
| 74AHC(T) | Advanced CMOS | 2--5.5 V | Schneller als HC(T) |
Warum HCT?
Wir verwenden 74HCT -- das "T" steht für TTL-kompatibel. Der Chip ist intern CMOS (sparsam, volle Rail-to-Rail-Ausgänge), aber die Eingangsschwellen sind an TTL angepasst (HIGH ab 2.0 V statt 3.5 V bei reinem CMOS). Das macht die Chips kompatibel mit:
- 5 V Arduinos (ATmega328P) -- logisch, beide 5 V
- 3.3 V Mikrocontrollern (ESP32, Pico, nRF52) -- funktioniert ebenfalls, weil 3.3 V > 2.0 V = HIGH
Mit reiner 74HC-Logik (CMOS-Eingangsschwellen) wäre 3.3 V bei 5 V Versorgung grenzwertig -- die HIGH-Schwelle liegt dort bei 3.5 V. HCT löst dieses Problem.
Was man braucht
Für alle Experimente in dieser Serie:
Chips (74HCT, DIP)
| IC | Funktion |
|---|---|
| 74HCT00 | Quad NAND |
| 74HCT02 | Quad NOR |
| 74HCT04 | Hex Inverter (NOT) |
| 74HCT08 | Quad AND |
| 74HCT32 | Quad OR |
| 74HCT86 | Quad XOR |
| 74HCT74 | Dual D-Flip-Flop |
| 74HCT112 | Dual JK-Flip-Flop |
| 74HCT14 | Hex Schmitt-Trigger Inverter |
| 74HCT138 | 3-to-8 Decoder |
| 74HCT161 | 4-bit Synchronzähler |
| 74HCT595 | 8-bit Schieberegister (SIPO) |
| NE555 | Timer |
Alle in DIP-Gehäusen -- passen direkt aufs Breadboard. Hersteller egal (TI, Nexperia, Toshiba, onsemi). Bei Mouser oder DigiKey nach "CD74HCTxxE" (TI) oder "74HCT00N" (Nexperia) suchen.
Zubehör
| Teil | Wozu |
|---|---|
| Breadboard (830 Punkte) | Aufbau |
| Jumper-Kabel (M-M) | Verbindungen |
| LEDs (rot, 5 mm) | Ausgabe sichtbar machen |
| Widerstände 330 Ω | Vorwiderstände für LEDs |
| Widerstände 10 kΩ | Pull-Down für Taster |
| Taster (6×6 mm) | Eingabe (HIGH/LOW umschalten) |
| USB-Netzteil 5 V oder 3× AA-Zellen | Stromversorgung |
| Keramikkondensatoren 100 nF | Abblockkondensatoren (einer pro Chip, an VCC-GND) |
Abblockkondensatoren: Nicht vergessen!
Jeder Logik-IC braucht einen 100 nF Keramikkondensator direkt zwischen VCC und GND, so nah am Chip wie möglich. Warum? Beim Schalten ziehen die Transistoren im IC kurze Stromspitzen aus der Versorgung. Ohne lokalen Kondensator muss dieser Strom über die langen Versorgungsleitungen fließen -- die haben Induktivität, und die Spannung bricht kurzzeitig ein. Das kann zu Glitches und unzuverlässigem Verhalten führen.
Auf dem Breadboard: 100 nF Kerko von der VCC-Reihe zur GND-Reihe, direkt neben den Versorgungspins des ICs. Kostet 2 Cent, spart Stunden Debugging.
Breadboard-Grundaufbau
Für alle folgenden Experimente:
- Stromversorgung: 5 V an die Versorgungsschienen des Breadboards (rote Schiene = VCC, blaue = GND). Die Schienen auf beiden Seiten mit einem Jumper verbinden -- sie sind nicht immer intern durchverbunden.
- LED-Anzeige: LED + 330 Ω Vorwiderstand. Anode an den Ausgang des Gatters, Kathode (kurzes Bein) über Widerstand an GND. LED leuchtet = HIGH.
- Taster-Eingabe: Taster gegen VCC, mit 10 kΩ Pull-Down-Widerstand an GND. Ohne Tastendruck: Eingang LOW (über Pull-Down an GND). Mit Tastendruck: Eingang HIGH (über Taster an VCC).
- IC einsetzen: Immer über den Mittelsteg des Breadboards, Kerbe nach oben (Pin 1 oben links). 100 nF Kerko direkt an VCC/GND-Pins.
Erstes Experiment: NOT-Gate
Das einfachste Gatter: ein Eingang, ein Ausgang, invertiert.
74HCT04 (Hex Inverter)
Der 74HCT04 enthält sechs unabhängige NOT-Gates in einem DIP-14 Gehäuse:
┌──── U ────┐
1A ──┤ 1 14 ├── VCC
1Y ──┤ 2 13 ├── 6A
2A ──┤ 3 12 ├── 6Y
2Y ──┤ 4 11 ├── 5A
3A ──┤ 5 10 ├── 5Y
3Y ──┤ 6 9 ├── 4A
GND ──┤ 7 8 ├── 4Y
└───────────┘
Pin 14 = VCC (5 V), Pin 7 = GND. Jedes Gate hat einen Eingang (A) und einen Ausgang (Y). \(Y = \overline{A}\).
Aufbau
- 74HCT04 aufs Breadboard, Kerbe nach oben
- Pin 14 → VCC, Pin 7 → GND, 100 nF Kerko dazwischen
- Eingang (Pin 1): Taster gegen VCC + 10 kΩ Pull-Down an GND
- Ausgang (Pin 2): LED + 330 Ω an GND
Wahrheitstabelle
| Eingang A | Ausgang Y |
|---|---|
| 0 (LOW) | 1 (HIGH) -- LED an |
| 1 (HIGH) | 0 (LOW) -- LED aus |
Taster nicht gedrückt → Eingang LOW → Ausgang HIGH → LED leuchtet. Taster gedrückt → Eingang HIGH → Ausgang LOW → LED aus.
Das Verhalten ist invertiert -- genau das macht ein NOT-Gate. Wer das begriffen hat, hat das Grundprinzip der digitalen Logik verstanden: Eingangspegel rein, Wahrheitstabelle anwenden, Ausgangspegel raus.
Doppelte Invertierung
Nimm einen zweiten Inverter im selben IC (Eingang Pin 3, Ausgang Pin 4) und verbinde den Ausgang des ersten Inverters (Pin 2) mit dem Eingang des zweiten (Pin 3). Am Ausgang Pin 4 eine zweite LED.
Ergebnis: Die zweite LED verhält sich wie der Taster -- doppelte Invertierung hebt sich auf. \(\overline{\overline{A}} = A\). Klingt trivial, aber dieses Prinzip steckt hinter De Morgans Gesetzen, die wir später brauchen.
Weiterführendes
- Grundgatter: AND, OR, NOT -- nächstes Kapitel
- Mikrocontroller -- wo die 74er-Logik hinführt