|
|
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| {{NNavigation}} | | {{NNavigation}} |
|
| |
|
| Mit dem 4-Bit Addierer können wir 4-Bit Binärzahlen addieren. Das sind <math>2^4 = 16</math> verschiedene Zahlen. Im Dezimalsystem entspricht das den Zahlen von <math>0</math> bis <math>15</math>.
| | In der Realität ist das Herstellen der Grundgatter <code>AND</code>, <code>OR</code> und <code>NOT</code> deutlich aufwendiger als die Herstellung eines <code>NAND</code> Gatters. Das Gute ist, dass aus dem <code>NAND</code> die anderen Grundgatter hergestellt werden können und somit eine Art Gatter ausreicht. |
|
| |
|
| Wenn das Ergebnis einem Menschen angezeigt werden soll, wird eine Anzeige benötigt, die die passenden Ziffern im Dezimalsystem darstellen kann. Eine solche Anzeige ist die ''7-Segment Anzeige''.
| | {{Aufgabe:Start|Icon=Digital Logo.png}} |
| | Baue in Digital die drei Grundgatter nur mit <code>NAND</code> Gattern zusammen. |
|
| |
|
| Eine solche Anzeige besteht aus - wenig überraschen - sieben Segmenten, die einzeln an und aus geschaltet werden können. Du kennst solche Anzeigen von vielen Beispielen. Hier sind die zehn Dezimalziffern, wie sie auf einer 7-Segment Anzeige dargestellt werden.
| | '''Tipp''': Beginne mit dem <code>NICHT</code>. |
| | |
| {| {{prettytable}}
| |
| |[[File:Seven segment display 0 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 1 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 2 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 3 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 4 digit (blue).svg|64px]]
| |
| |-
| |
| |[[File:Seven segment display 5 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 6 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 7 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 8 digit (blue).svg|64px]]
| |
| |[[File:Seven segment display 9 digit (blue).svg|64px]]
| |
| |}
| |
| | |
| {{Aufgabe:Start}}
| |
| * Bearbeite die [https://www.inf-schule.de/rechner/digitaltechnik/7segment/ein_7segment Schritt-für-Schritt Anleitung im digitalen Schulbuch Inf-Schule.de] zur 7-Segment Anzeige.
| |
| *: Entscheide dich für einen der sieben 4-Bit Decoder s<sub>0</sub> bis s<sub>6</sub> und setze ihn in {{Digital}} um. (Jeder Decoder steuert genau ein Segement der Anzeige.)
| |
| *: Sag deiner Lehrperson bescheid, welchen Decoder für welches Segment du baust. So können wir im Kurs einen vollständigen Decoder für eine 7-Segment Anzeige konstruieren.
| |
| *: Eine Wahrheitstafel für einen 4-Bit Decoder findest du in der [[wikipedia:Segmentanzeige#Logiktabelle|Wikipedia]].
| |
| {{Aufgabe:End}} | | {{Aufgabe:End}} |
| {{Info:Start}} | | {{Tipp:Start}} |
| == Hinweise zur Arbeit mit Inf-Schule.de ==
| | Du benötigst folgende Anzahl an <code>NAND</code>-Gattern: |
| | | ; <code>NOT</code> |
| Bei Inf-Schule.de wird die Simulationssoftware [http://www.tetzl.de/java_logic_simulator_de.html LogicSim] verwendet. Hier ist die erste Beispielschaltung für {{Digital}}: {{DAT|Vorlagen/Digital/7-Segment Anzeige/beispiel1.dig}}
| | : Ein <code>NAND</code> |
| | | ; <code>AND</code> |
| '''Hinweise zur Notation'''
| | : Zwei <code>NAND</code> |
| | | ; <code>OR</code> |
| Bei Inf-Schule.de wird teilweise folgende Notation verwendet:
| | : Drei <code>NAND</code> |
| | | {{Tipp:End}} |
| * ⋀ = '''UND''', Bsp: <code>A ⋀ B</code>
| | {{Lösung:Start}} |
| * ∨ = '''ODER''', Bsp: <code>A ∨ B</code>
| | [[Bild:Digital NAND NOT.png]] |
| * — = '''NICHT''', Bsp: <code>Ā</code>
| |
| | |
| '''Hinweise zum Projekt'''
| |
| | |
| Wir benutzen 4-Bit Binärzahlen, also sollte dein Decoder auch vier Eingänge besitzen. Der Decoder soll aber erstmal nur die erste Stelle (die Einerstelle) der Ergebnisanzeige ansprechen. Für die Binärzahl <code>(1100)<sub>2</sub> = (12)<sub>10</sub></code> soll also nur die <code>2</code> dargestellt werden. Der Decoder s<sub>0</sub>, der das Segment 0 (den Balken ganz oben) bedient, muss also für alle Zahlen außer der 1, 4, 11 und 14 den Ausgang mit <code>1</code> belegen.
| |
| | |
| Die Minimierung der Schaltungen mit den Rechengesetzten muss nicht nachvollzogen werden. Statt dessen kann auf der Seite [http://tma.main.jp/logic/index_en.html Online minimization of boolean functions] automatisch durchgeführt werden. Die Webseite benutzt wiederum eine andere Syntax für die Eingabe der Schaltungen:
| |
| * <code>AB</code> = A '''UND''' B
| |
| * <code>A+B</code> = A '''ODER''' B
| |
| * <code>~A</code> = '''NICHT''' A
| |
| {{Info:End}} | |
| {{Lösung:Start|Cheaten: Eine Abkürzung zum Decoder}} | |
| {{Digital}} ist in der Lage aus einer Wahrheitstafel automatisch eine passende Schaltung zu generieren. Gehe dazu im Menü auf "Analyse" → "Synthese". Es öffnet sich eine Wahrheitstafel. Wähle hier im Menü "Neu" → "Kombinatorisch" → "4 Variablen". Nun kannst du in der Spalte "Y" die Ergebnisse der Schaltung bei der jeweiligen Eingabe eintragen. Unten wird automatisch eine passender logischer Ausdruck angezeigt.
| |
|
| |
|
| [[Datei:Digital Synthese.png|center]] | | [[Bild:Digital NAND AND.png]] |
|
| |
|
| Wenn du die Tabelle ausgefüllt hast, dann kannst du über "Erzeugen" → "Schaltung" eine passende Schaltung erzeugen lassen.
| | [[Bild:Digital NAND OR.png]] |
| {{Lösung:End}} | | {{Lösung:End}} |