UART-Ausgabe führt bei längerem String zu Resert des µC

Gast #4783058
Lesenswert?

Vielleicht kann mir jemand mit folgenden Problem mal auf die Sprünge 
helfen, was ich hier falsch mache.

Ich würde gerne Stings per UART vom Atmega168 auf den PC übertragen.

Hierzu nutze ich einen FT232RL.

Ansich funktionier die Übertragung, solane ich nur einen kurzen String 
übertrage. Wird dieser länger, macht der µC scheinbar immmer einen 
Reset, sodass der Sting nur Abgehackt im Terminalprogramm (Putty) 
erscheint.

Momentan verwender ich 19200 als Baudrate. Gehe ich runter auf 9600, 
wird noch weniger Inhalt übertragen.

Mach ich beim Senden etwas falsch?

Ich verwende den Code aus dem GCC-UART-Tutorial und gebe den Text wie 
folgt aus:

uart_puts("\r\nHallo Welt, Hallo Welt, Hallo Welt, Hallo Welt");

Die Ausgabe sieht dann leider wie im Screenshot aus.
Angehängte Dateien:
Gast #4783101
Lesenswert?

Eigentlich ist zu dem Zeitpunkt der Ausgabe noch gar kein Watchdog 
aktiv. Mache die Übertragung momentan direkt nach der uart_init und 
nicht später im Programm, um solche Feher ausschließen zu können.
Gast #4783127
Lesenswert?

Aber noch eine weiter Frage. Momentan ist es ja so, dass die Strings 
ununterbrochen durch Putty jagen.

Wie realisiert man eine einmalige Ausgabe, sodass die Daten nicht 
ständig Flackern? Einfach nur die Daten durch eine Schleife einmal 
übertragen lassen? Oder gibts da nen speziellen Befehl?
#4783207
Lesenswert?

Mark schrieb:
> Wie realisiert man eine einmalige Ausgabe, sodass die Daten nicht
> ständig Flackern? Einfach nur die Daten durch eine Schleife einmal
> übertragen lassen? Oder gibts da nen speziellen Befehl?

Hä?
Wenn Du das in einer Schleife sendest kommt es natürlich immer wieder.
Was für eine Schleife?
Übertrage es einmal und es kommt einmal.
Überträgst Du es in der Schleife, kommt es natürlich bei jedem Durchgang 
der Schleife.

Gruß,
Norbert

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