USART/RS232 Empfangsproblem ATmega8

Gast #2055213
Lesenswert?

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
Gast #2055232
Lesenswert?

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
Gast #2055297
Lesenswert?

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
Gast #2072134
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren