Meine Aufgabe ist es, mit Hilfe von Logikgattern, eine, eingehende,
Spannungswert zu halbieren und anschließend in einen Addierer
weiterzuleiten.
Leider habe ich große Probleme damit, einen Weg zu finden, um Spannungen
zu dividieren. Selbst wenn ich einen Weg habe, um die Spannung zu einem
Digitalsignal umzuwandeln, finde ich weiterhin keine, für mich
verständlichen, Erklärungen zur Division von Digitalwerten mit Hilfe von
Logikgattern.
Es ist ein Schulprojekt, also wären simple Erklärungen sehr net :)
Martin schrieb:> Meine Aufgabe ist es, mit Hilfe von Logikgattern, eine, eingehende,> Spannungswert zu halbieren und anschließend in einen Addierer> weiterzuleiten.> Leider habe ich große Probleme damit, einen Weg zu finden, um Spannungen> zu dividieren.
Dann hast du nicht aufgepaßt. Ende der Ansage.
Der Trick ist: es gibt Sonderfälle bei der Division, die sich mit sehr
viel weniger Aufwand in binärer Logik abhandeln lassen. Das Halbieren
eines Wertes ist so ein Sonderfall...
Teilen durch 2 geht im Binärsystem ganz einfach, man muss nur nach
rechts schieben. Also einfach alles um eine Stelle umverdrahten.
Wenn Du 1000101010010 hast und willst das durch 2 Teilen kommt
100010101001 raus (hab ich ohne Taschenrechner gemacht)
Teilen durch 10 geht im Dezimalsystem ja auch ganz einfach.
Wenn Du 1939634934 hast und willst das durch 10 Teilen kommt 193963493
raus (hab ich ohne Taschenrechner gemacht)
Du musst schon zwischen analogen und digitalen Operationen
unterscheiden.
Eine Spannung zu halbieren ist auf jeden Fall eine analoge Operation.
Das macht man im einfachsten Fall mit einem Spannungsteiler. Spannungen
dividieren ist auch eine analoge Operation.
Mit ADC wandelt man analoge Spannungen in digitale Zahlen um. Mit einem
Computer (z.B. Mikrocontroller) berechnet man digitale Zahlen.
Logikgatter haben hier gar nichts zu suchen. Letztendlich besteht zwar
jeder Computer im Wesentlichen aus Logikgattern, allerdings tausende.
Nur völlig verrückte Bastler bauen Computer aus Logikgattern.
> Es ist ein Schulprojekt, also wären simple Erklärungen sehr net :)
Beschreibe doch bitte zunächst etwas konkreter, was du machen willst. Du
hast hier den Fehler gemacht, mit einem halbgaren Lösungsansatz für eine
unbekannte Aufgabe anzufangen. So geht das nicht.
Also löse dich bitte von Gattern, Spannungen und Divisionen und
beschriebe die eigentlich Aufgabe. Die könnte zum Beispiel lauten: "Ich
möchte die Heizung einschalten, wenn die Wohnung zu kalt wird" - nicht:
"Ich möchte eine fünf möglichst tödliche Hochspannungsfunken erzeugen,
wenn die Hälfte einer Spannungen unter eine gewisse Schwelle fällt".
Martin schrieb:> Es ist ein Schulprojekt, also wären simple Erklärungen sehr net :)
Analog: Stichwort Spannungsteiler.
Digital: Stichwort Bitshift (wurde schon genannt).
Martin schrieb:> Danke dir :) Das hat mir sehr geholfen :D
Wer ist "Dir" und was ist "Das"?
Ich meine, eine wirklich konkrete Antwort hast du ja noch nicht
bekommen.
Vielleicht soll auch mit Logikgattern ein Spannungs-
teiler aktiviert werden? Der Addierer könnte ja auch ein
analoger Summierverstärker sein.
"ich soll" ... "Schulprojekt":
Sieht aus, als ob da jemand wochenlang geschwänzt hat - und wir
sollen mal fix die Hausaufgabe erledigen, ohne dass sich auch nur
um die genaue Aufgabenstellung gekümmert wird...
Gute Nacht
Schau dir mal die Analogschalter-ICs CD4066 sowie CD4051 bis CD4053 an.
Damit kannst du analoge Spannungen mittels digitaler Steuersignale
schalten.
Diese ICs gibt es auch mit niederohmigeren und schnelleren Schaltern
aber reduzierten Spannungsbereich als 74HC-Serie, also 74HC4051 etc.
Also "eingehender Spannungswert" klingt für mich nach einem bereits mit
A/D-Wandler digitalisierten Zahlenwert, nicht nach analoger Spannung in
Volt.
Also geht es nur noch um die beiden Verarbeitungsschritte "Teilen durch
Zwei" und "Addition". Dass die Teilung einfach aus Rechtsschieben
besteht, wurde schon gesagt, für die Addition gibt es fertige
TTL-Bausteine, deren Innenleben aus Logikgattern im Datenblatt oft
abgedruckt ist.
Aber wenn ich die Formulierung zum Addierer ("weiterzuleiten") richtig
verstehe, soll der nicht aus einzelnen Logikgattern aufgebaut werden,
sondern ist schon fertig vorhanden.
Wenn der gewandelte Wert als "echter" Binärwert vorliegen, greift der
Sonderfall: Division durch 2.
Ein echter binärer Teiler wird ein Bauteilegrab oder ein
Spezialbaustein.
Übrigens: Was ein Binärwert repräsentiert, also Volt, Liter oder
Kilogramm, ist bei der Bearbeitung völlig egal.
Bissl aufwändig für nur einen Divider. Divisionen mit Logikgattern baut
man am einfachsten nach der Methode nach Heron auf und wenn es schnell
sein soll, als parallele Struktur wie beim "schriftlichen Dividieren".
Mal abgesehen von den analogen Varianten und denen wo du durch
Bitshifting durch 2, 4, 8, 16 usw. teilst:
Die krasse zu Fuß Variante, eine echte Division mit beliebigen ganzen
Zahlen durchzuführen, wäre so oft Divisor MINUS Dividend rechnen, bis es
nicht mehr geht weil das Ergebnis negativ wäre und dabei mitzählen wie
oft du subtrahieren konntest. Der Zähler enthält dann das ganzzahlige
Divisionsergebnis.
Das geht mit Logikgattern recht einfach. Habe ich damals im 1. Semester
des Studiums mal mit einem CPLD gemacht.