Hallo Gemeinde,
wollte mich mal nach langer Zeit mit einem Oszilloskop beschäftigen, und
so habe ich mich mal an die serielle Datenübertragung herangetastet...
und bin gleich auf einige Fragen gestossen, die ich gerne hier loswerden
möchte :)
Kurze Zusammenfassung der Testumgebung:
USB-BUB II (USB => TTL Wandler) => 8N1, 19200
Putty als Terminal (auch 8N1, 19200)
Oszilloskop an Tx
Wenn ich nun die Taste "e" drücke, erhalte ich die Binärdaten der
Übertragung (siehe Anhang)
Nun meine Fragen:
1. Warum kommen die Daten umgekehrt an ?
"e" laut ASCII Tabelle: 01100101
Ich muss mein Ergebniss immer von RECHTS lesen damit es schlüssig ist,
das habe ich mit mehreren Buchstaben evaluiert. ("e" Nutzdaten grün
umrandet)
Stopbit ist dann ganz links (gelb umrandet)
2. Wo ist der Startbit ?
3. Müssten die seriellen Datenbits nicht invertiert sein ?
Ich vermute das der USB=>TTL Wandler für einiges Verantwortlich ist, bin
mir aber nicht wirklich sicher.
Danke Euch vorab & Guts Nächtli
Peter H. schrieb: > Stopbit ist dann ganz links (gelb umrandet) Das ist Startbit. Stopbit (1) ist am Ende, von dir nicht markiert! 3. UART, als Protokoll, hat kein Inversion. RS232 hat! Du hast offensichtlich TTL-Level UART gemessen, nicht RS232...
Das niederwertigste Bit (2 hoch 0) steht doch Rechts und wird zuerst gesendet. Das Startbit steht demzufolge davor (rechts davon) Bei RS232 auf TTL-Level ist nicht invertiert, das ist nur bei V24 so.
Hajoooo... jetzt wo Ihr das schreibt... :O)
2. OK, Startbit "0" steht am Anfang (gelb), der Stopbit ist dann der Bit
nach der letzten eingetragenen "0" aus dem grünen Bereich.
P.S. Das erklärt auch, weshalb ich beim Umschalten auf 2 Stopbits keinen
Unterschied gesehen habe... habe an der falschen Stelle gesucht :O)
3. Stimmt, habe TTL Level => kein RS232 => nicht invertiert... Klaro
1. Das leuchtet mir noch nicht so ganz ein...
In der ACII Tabelle steht der neiderwertigste Bit ja auch rechts (siehe
Bild)
Mein Oszibild ist genau anders rum...ein von Beiden muss doch falsch
sein...
Ich würde folgendes Bild erwarten:
Startbit + Daten + Stopbit
0 01100101 1
Das wäre dann: 0011001011
Ich habe aber: 0101001101
EDIT: Eben hats gescheppert... der Groschen ist gefallen... ist doch
wohl Zeit zum Bubu machen... FETTES MERCI !
Danke St. D. & Danke Frank
Peter H. schrieb: > Startbit + Daten + Stopbit > 0 01100101 1 Wie du inzwischen richtig erkannt hast, werden die Datenbits andersrum übertragen, d.h. zuerst das Bit 0 und zuletzt das Bit 7. Ich habs noch mal in den Screenshot eingetragen.
Peter H. schrieb: > Mein Oszibild ist genau anders rum...ein von Beiden muss doch falsch > sein... Du musst doch nur den Oszi auf den Kopf stellen. Es gibt kein richtig oder falsch. Man kann festlegen, dass das niederwertigste Bit zuerst gesendet wird oder das höchstwertige, eines ist so gut wie das andere, es müssen sich bloss Sender und Empfänger dran halten. Meisten ist es das niederwertigste, das ist nämlich immer das gleiche Bit, egal wie lange das Zeichen ist. Georg
Wolfgang, George, habt Dank für den Nachtrag. Mit dieser Fülle an neuen Erkenntnissen werde ich mal in den Äther fischen gehen und ein paar von meinen 433Mhz Temperatursendern sniffen und analysieren. Der tiefere Zweck des Ganzen soll irgendwann die Datenübertragung zwischen 2 Mikrocontrollern sein (unidirektional)... mit eigenem Protokoll :O) Mahlzeit Peter
SPI arbeitet meist mit MSB first, ebenso Ethernet & Co, dort wird auch das höherwertige Byte zuerst gesendet (network byte order). I2C überträgt auch MSB first.
Falk B. schrieb:
... höherwertige "Byte" zuerst gesendet...
Hallo Falk,
müsste aber "Bit" heissen, richtig ?
@ Peter Hess (thunderfrog) >... höherwertige "Byte" zuerst gesendet... >müsste aber "Bit" heissen, richtig ? Nein. Ich meinte Byte. Wobei auch die höherwertigen Bits der Bytes bei Ethernet zuerst gesendet werden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.

