Bei der seriellen Datenübertragung hat man üblicherweise 8 Datenbits, ein Startbit und ein Stopbit.
Der Wert des Start und Stopbit sind festgelegt, d.h. darin steckt keine Information. Das ist wie ein Umschlag: Man braucht ihn um einen Brief zu verschicken aber es steht nichts drauf.
Die 8 Datenbits sind beliebig, d.h. hier kann ich jedes der damit möglichen 256 Bytes übertragen.
Wenn du von diesen 256 Möglichkeiten einige gar nicht benutzt (z.B. bei 7 Bit ASCII ist das erste Bit immer null), dann ist das wie wenn du den Briefbogen nur zu 7/8 vollschreibst und den Rest leer lässt. Du überträgst immer 8 bit. Dass das erste Bit dabei immer null ist, ist eine Frage der Datenquelle. Der Eisenbahnwagen fährt auch ab, wenn er nicht bis zum letzten Platz voll ist. Und auch, wenn alle Plätze mit Nullen besetzt sind.
Übliche UARTs können alle mögliche Wortformate, z.B. auch 7 oder sogar 5 Bit Daten oder Paritybits zur Fehlererkennung. Wenn du nur 7 Datenbits verwendest und mit 8-N-1 codierst hast du aber 3 von 10 Takte keine Information übertragen.
Alternativ gibt es synchrone Datenübertragung. Hier werden zuerst einige Bit zur Synchronisation gesendet (etwa 10-20) („Flag“), danach kommen ohne Start und Stopbit immer 8 bit hintereinander. Eine Schaltung zur Taktrückgewinnung läuft dann synchron mit damit die Bits immer richtig zugeordnet werden können. Falls einmal zufällig sehr viele aufeinanderfolgende Nullen oder Einsen kommen muss man durch Einfügen eines Extra-Bits dafür sorgen, dass der Takt nicht ausrastet (HDLC, Bit-Stuffing). Dafür hat man fast 100% der Übertragungszeit mit Nutzinformation genutzt.
Gruß! Ulf
Hallo,
ich wüsste gerne was passiert wenn man weniger Daten überträgt als in einem Datenwort platz hätten?