Forum: Mikrocontroller und Digitale Elektronik HTerm empfängt manchmal richtig, manchmal falsch


von Stefan S. (stefanst)


Lesenswert?

Hi!

Ich habe einen ATMega8 mit einem 12MHz Quarz am laufen und probiere 
gerade mit der UART rum. Am PC nutze ich HTerm und sende vom ATMEga 
ständig die Zeichenfolge xyz (nacheinander jedes Zeichen).
Wenn ich nun meinen µC starte und dann mit HTerm die Daten abhören will 
-dh. auf "connect" klicke-, so passiert es oft, dass nur Müll ankommt. 
Manchmal aber -beispielsweise wenn ich zwischendurch den µC resette- 
kommt HTerm wieder mit und stellt mir "xyz" richtig dar. Woran kann das 
liegen?

Gruß,
Stefan

von Chris (Gast)


Lesenswert?

12MHz ist kein Baudratenquarz. Wie groß ist deine Abweichung in 
Prozent? Vielleicht hast Du eine Übertragungsrate mit zu großer 
Abweichung gewählt.

von Thomas E. (thomase)


Lesenswert?

Chris schrieb:
> 12MHz ist kein Baudratenquarz.

Dann würde es nach einem Reset ja auch nicht funktionieren.


Stefan S. schrieb:
> Woran kann das liegen?

Du musst zuerst den Empfänger starten. Der lauscht dann auf das Startbit 
und legt los.

Wenn du zuerst den Sender startest und danach den Empfänger, wird die 
erste "0", die irgendeine "0" innerhalb des ASCII-Zeichens sein kann, 
als Startbit erkannt und er empfängt Müll.

Nach einem Reset des µC synchronisiert sich das dann wieder, weil 
während des Reset Stoppolarität anliegt und HTerm aufs nächste Startbit 
wartet. Das dann auch wirklich eins ist.

mfg.

von Willi W. (Gast)


Lesenswert?

Stefan S. schrieb:
> Woran kann das liegen?
Der Empfänger erkennt das Start-Bit nicht richtig, wenn du "ohne Punkt 
und Komma" sendest.
Übertrage mit zwei Stop-Bits, schick mal ein 0x00 oder mach eine kleine 
Pause im Datenstrom. Dann hat der Empfänger deutlich bessere Chancen.

von Stefan S. (stefanst)


Lesenswert?

Danke für die aufschlussreichen Antworten! Sowas dass HTerm nicht 
"mittendrin" einsteigen kann hab ich schon irgendwie gespürt... Ich hab 
auch mal die Variante ausprobiert, ein 0x00 zu senden, dann hats HTerm 
öfters geschafft, mittendrin einzusteigen ;)

Wie auch immer - Hauptsache es hat einen einfachen Grun und ich weiß 
jetzt, dass man immer erst resetten sollte, bevor man was "abhört" :)

Danke!

Stefan

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
Noch kein Account? Hier anmelden.