Hallo, Ich will eine Übertragung mit 1 Stopbit machen. Der AVR empfängt die Daten aber nur richtig, wenn ich 2 Stopbits sende. Wenn ich nur mit einem Stopbit sende, zeigt mir der ATmega einen Frame Error an. Ich übertrage mit HTerm probeweise Buchstaben auf den ATmega Laut Datenblatt braucht der Atmega8 nur 1 Stopbit. Das kann man auf der Empfansseite auch nicht einstellen. Nur in Senderichtung kann man die Anzahl der Stopbits festlegen. Woran könnte das liegen? Wie bekomme ich das hin, dass Daten mit einem Stopbit vom AVR richtig empfangen werden? Gruß Flo
Flo schrieb: > Das kann man auf der > Empfansseite auch nicht einstellen. was bringt dich auf diese Idee?
Hi >Woran könnte das liegen? Baudratenfehler? >was bringt dich auf diese Idee? Wie kann ein Empfänger die Anzahl der Stopbits bestimmen? MfG Spess
An einen Baudratenfehler hab ich auch schon gedacht. Habs mit 4800 und 9600 getestet, das hat nix am Problem geändert. Das mit dem Stopbit auf der Empfangsseite steht auch im Datenblatt des ATmegas. Gruß Flo
Flo schrieb: > Habs mit 4800 und > 9600 getestet, das hat nix am Problem geändert. Langsamer bedeutet nicht auch ein kleineren Fehler.
Das Stoppbit dient als Pause zwischen den Bytes. Wie lange benötigt deine Routine zur Verarbeitung der ankommenden Daten?
Hi >Das Stoppbit dient als Pause zwischen den Bytes. Von der Verarbeitung her nicht. Mit 2 Stopbits hat er 11 Bitzeiten, mit einem nur 10 Bitzeiten für die Verarbeitung zur Vefügung. Außerdem hat er einen Frameerror und keinen Data-Overrun. >An einen Baudratenfehler hab ich auch schon gedacht. Benutzt du einen Baudratenquarz? MfG Spess
Das zweite Stoppbit wird beim Empfang sofern nicht erwartet weggeworfen. "The Receiver ignores the second stop bit. An FE (Frame Error) will therefore only be detected in the case where the first stop bit is zero" Da Startbits low und Stoppbits high sind, kann man ein low Stoppbit nicht einfach per Protokoll erzeugen. Ein low Stoppbit, das der Grund für den FE ist, entsteht z.B. wenn das letzte Datenbit bereits für das Stoppbit gehalten wird.
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.