PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Daten senden - Aus Parallel mach Seriell


M@tes
2005-03-02, 23:26:34
Mir macht es Spass das Rad neu zu erfinden. Also lasst mir meine Freude, falls es so was schon gibt (Wovon ich mal ausgehe)^^
Ich weiss ehrlich gesagt auch nicht, wo ich Richtig damit bin? Ein Elektronikforum gibt es hier ja nicht.
Ich hatte in der Arbeit einwenig Zeit hab Grundlagen von Funktionsbausteinen wiederholt und ein paar Übungen gemacht. Irgendwann kam mir eine gute Idee. Raus kam das Bild was zum Schluss kommt. Ich wollte mal wissen, was ihr davon haltet und ob das so Funktioniert wie ich es mir gedacht habe. Die FF’s unten sind FlipFlops und sollen eine Art Schieberegister darstellen. Nur je einer von denen hat den Wert 1. Und der Wert 1 wandert von FF1 auf FF2 bis FF8 und dann wieder zurück auf FF1. Dies passiert bei jedem Impuls des Taktgebers, oder Flanke – egal. Wenn nun auf FF1 der Wert 1 ist, ist &1 frei geschaltet. Ist der Eingang nun 1, wird der Sendebit auf 1 gesetzt. Geht es auf FF2 weiter, wird &2 frei geschaltet und so weiter und so fort. So werden schön alle 8Eingänge (parallel) überwacht und in Serie geschaltet. Soweit meine Idee. Kenne mich da nicht so aus und kann dies leider auch nicht praktisch ausprobieren, drum frage ich euch: Ist das soweit Richtig?
Okok, es ist nur eine Grundlage! Erweiterungen werden noch folgen. Einen Empfänger hätte ich sogar schon. Hab jetzt aber keine Zeit mehr den zu zeichnen.
Was mein Problem jetzt ist, ist der Takt selber. An sich brauch ich ja nur 2 Leitungen:
Ground und Signal. Aber wie bekäme ich Sender und Empfänger auf die gleiche Frequenz? Woher weiss der Empfänger wo das erste Bit Anfängt?
Müsste da nicht eine art Steuerkabel dabei sein? Mit dem man einen Testcode durchschickt, um zu sehen, wie die Verzögerung ist und mit dem man sagen kann, wann es anfängt mit den Daten senden.

Ich bin kein Richtiger Elektroniker, also haut mich nicht, wenn euch irgendwas nicht passt!
Ich finds nur derbst interessant :D

alkorithmus
2005-03-02, 23:30:10
das bereitet mir kopfschmerzen...........im ernst

Botcruscher
2005-03-02, 23:33:30
Empfangen ja. Aber wie du damit senden willst ist mir ein Rätsel. Das "Steuerkabel" geht aber über eines der &.

M@tes
2005-03-02, 23:33:55
Wovon? Zu kompliziert? Zeichnung zu doof gezeichnet?

PS: Ich versuchs morgen besser zu zeichnen. Ist nicht ganz Normgerecht, aber ich hoffe man kann es verstehen. Vorallem bei den FlipFlops

mrdigital
2005-03-02, 23:37:50
das geht so, aber wieso so umständlich? Du kannst doch dein Schieberegister parallel beschreiben und dann rausschieben. Bei deiner Schaltung muss das Datenwort ja 8 Takte lang an den UND anliegen, bei der Schieberegister mit Loadfunktion nur einen Takt lang.
Zur Taktübertragung kannst du auch den Daten vier mal Hi-Lo losschicken, zum Synchronisieren, und dann erst deine Daten. Das machen die meisten seriellen Systeme so. Kannst ir ja mal Ethernet ansehen ;)

M@tes
2005-03-02, 23:43:51
Erklärs mir anhand eines Beispiels =)
Hab das ansich nur gemacht, um zu sehen, ob ich das halbwegs verstanden habe. Schulstoff sind nur Grundlagen mit AND,NAND,OR,NOR,...
Das hab ich jetzt aus eigenem interesse "kreiert" und sicher gibts schon fertige ICs dafür. Aber das is ja nicht Sinn der Sache :-)
Ev kann man ja ein HowTo draus machen.?? Mal grob und ausführlich und mal mit nem IC kompakt und klein =)
Mir fehlte bisher eben das Verständniss höherer Digitaltechnik.
Erst mit Flipflops und Zählern wurde für mich das ganze erst interessant.

barracuda
2005-03-03, 00:20:17
Also die Schaltung funzt schnmal net weil du die Ausgänge der UND-Gatter alle gegeneinander geschaltet hast. Eine solche Schaltung, die 8 Bits in eine Leitung zwängt wäre einfacher mit einem 3 Bit-Zähler und einem Multiplexer zu bewerkstelligen. Zur Synchronisation von Sender und Empfänger braucht es aber auch ein Startbit vor jedem Frame und zur Sicherheit auch noch eine Anzahl Stopbits, die 1, 1,5 oder 2 Bits lang sein können.

--> http://de.wikipedia.org/wiki/Serielle_Datenübertragung

alkorithmus
2005-03-03, 00:21:41
Wovon? Zu kompliziert? Zeichnung zu doof gezeichnet?

PS: Ich versuchs morgen besser zu zeichnen. Ist nicht ganz Normgerecht, aber ich hoffe man kann es verstehen. Vorallem bei den FlipFlops

nein es ist spät ...das ist alles :D

M@tes
2005-03-03, 07:44:35
Soso Fairplayaa =)
barracuda:
Folgendes Bild bringt mich ev ein gutes Stück weiter:
http://upload.wikimedia.org/wikipedia/de/e/e7/Asynchrone_Datenübertragung.jpg

Die Daten könnte man ja ansich positiv senden und die Steuersignale negativ.
Bisher dachte ich nur an 2 Zustände: 1 und 0, aber es gibt ja noch -1!
Mhh warum kam ich nicht eher auf die Idee, als ich noch eine SPS plus Step7 Software hatte? :P

EDIT: Gibt es eigendlich Logikbausteine, die nicht nur 1 und 0 erkennen sondern auch -1? Oder muss ich da ein Transistor bzw IC nehmen?

M@tes
2005-03-03, 19:25:29
Hab hier mal eine überarbeitete Version:
http://www.freefaq.ch/temp/pics/FUPv2.gif
Bei "Data" kann man halt das Signal abfangen.
Mit "Clock" kann man den Taktgeberimpulse durchschlaufen.
Der "Register in" dient für den Startimpuls und zum durchschlaufen.
Tut man kein 2. 8Bit Element dazu, muss man in und out schlaufen.

Man kann dies praktisch beliebig erweitern und mehrere dieser Einheiten in Serie schalten.

Stimmt das so?
Empfänger kommt irgendwann am Wochenende :-)

barracuda
2005-03-03, 21:53:46
Die Daten könnte man ja ansich positiv senden und die Steuersignale negativ.
Bisher dachte ich nur an 2 Zustände: 1 und 0, aber es gibt ja noch -1!
Lies dir mal den Artikel über die RS 232-Schnittstelle (http://de.wikipedia.org/wiki/RS232) durch, da sind die Definitionen der Logikpegel erklärt.
Der Spannungsbereich für die logische Eins geht von -3 Volt bis -15 Volt und die logische Null wird durch Spannungen zwischen +3 und +15 Volt abgebildet.
Da ist noch hinzuzufügen, dass diese Definition nur für die Datenleitungen (RxD, TxD) gilt, bei den Statusleitungen (DSR, DTR, RTS, CTS usw.) ist es umgekehrt.

EDIT: Gibt es eigendlich Logikbausteine, die nicht nur 1 und 0 erkennen sondern auch -1? Oder muss ich da ein Transistor bzw IC nehmen?
Es gibt in der Digitaltechnik nur zwei Logikzustände. Manche Bausteine haben einen Tri-State-Ausgang, das bedeutet da kann man die Ausgänge auf "hochohmig" engl. "High Impedance" schalten. Das dient dazu um z. B. bei Busstrukturen, bei denen zwangsläufig mehrere Bausteine mit den Ausgängen zusammen geschaltet werden müssen, zu verhindern dass diese Ausgänge gegeneinander arbeiten. Es kann immer nur ein Baustein zu einer Zeit Daten auf den Bus ausgeben.


Hab hier mal eine überarbeitete Version:
http://www.freefaq.ch/temp/pics/FUPv2.gif
Stimmt das so?
Empfänger kommt irgendwann am Wochenende :-)
Bis auf die zusammengeschalteten Ausgänge stimmt das. Möglich wäre auch hier die Verwendung von UND-Gattern mit o. g. Tri-State-Ausgängen, der Ausgang darf nur aktiv sein wenn das entsprechende Bit aus dem dazugehörigen FF "kommt".