Forum: Mikrocontroller und Digitale Elektronik STM32 UART new line wird im Terminal-Prog nicht ausgeführt


von Daniel303 (Gast)


Lesenswert?

Hallo,

ich versuche verzweifelt Integer-Werte im Termainalprog untereinander zu 
schreiben.

Ich benutze hTerm.

So sieht der relevante Code aus:
1
int main(void)
2
{
3
    int wert;
4
    char wertstring[16];
5
6
    while(1)
7
    {
8
      wert = 1234;
9
10
      sprintf(wertstring, "%d\n\r", wert);
11
12
      UARTSend(wertstring);
13
    }
14
}

Was beim Terminalprog ausgegeben wird sieht so aus:

1234\n\r1234\n\r1234\n\r1234\n\r...

Wobei \n und \r als kleine Zeichen dargestellt werden.


Für Hilfe bin ich sehr dankbar!

Beste Grüße,
Daniel303

von Der Weise (Gast)


Lesenswert?

Falschrum: Es ist \r\n. Außerdem muss das Terminalprogramm darauf 
eingestellt sein, die Zeilenumbrüche so zu interpretieren, zumindest bei 
HTerm ist das so.

von Daniel303 (Gast)


Lesenswert?

Hi,

ich habe die Frage vor 60 Sekunden gepostet! Vielen Dank für die 
schnelle Antwort! :)

"Es ist \r\n"

Vielen Dank.

Ich habe in hTerm so ziehmlich alles ausprobiert. Kann jemand sagen wo 
ich das genau einstellen kann?

Oh mann, da klickt man eine Stunde in dem Programm rum und dann findet 
man es auf anhieb. Einfach im Dropdown "New line at" auf CR oder LF, ...

Besten Dank!!!

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Daniel303 schrieb:
> ich versuche verzweifelt Integer-Werte im Termainalprog untereinander zu
> schreiben.
>
> Ich benutze hTerm.

Wenn Du ein Terminalprogramm verwenden würdest, würde Deine Anwendung 
funktionieren.
hTerm ist trotz des Namens kein Terminalprogramm, sondern eher ein 
Schnittstellentester oder -analysator.

Ein Terminalprogramm emuliert ein Terminal, das ist ein Gerät, das über 
einen wohldefinierten Satz von Steuersequenzen zum Beispiel Textausgaben 
auf dem Bildschirm positionieren kann, oder mit anderen Textattributen 
(Farbe, Unterstreichung etc.) ausgeben kann.

Hier ist der VT100-Befehlssatz sehr verbreitet, den versteht annähernd 
jedes echte Terminalprogramm. Dazu gehört auch das bei Windows lange 
Zeit mitgelieferte Hyperterminal (das als Schnittstellentester ziemlich 
unsäglich und daher nicht grundlos verhasst ist), oder TeraTerm, oder 
auch putty.

Und wenn Du ein Programm wie Deines Messwerte ausgeben lassen möchtest, 
dann ist der Gebrauch eines richtigen Terminalprogrammes angesagt; hTerm 
ist praktisch, um die allerersten Schritte bei der Benutzung der 
seriellen Schnittstelle zu machen, dann aber eben nicht mehr.

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.