www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Formatierte Ausgabe


Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

für Debug-Zwecke, will ich die Werte vom A/D-Wandler MAX186 über den
UART vom AVR an den PC übergeben. Soweit geht es auch. Nur wie stelle
ich es an, das die Werte nicht fortlaufend hinereinander geschrieben
werden, sondern die alten überschrieben werden? So eine Art
Seitenrücksprung?

Mfg Sascha

Autor: thomas_p. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach einen Cartridgereturn zum Rechner schicken ( 0d in Hexadezimal
bzw. \r als Ersatzdarstellung in C )

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

habs damit ja schon probiert:

printf("\r");

Ändert sich aber nichts daran, das die Werte fortlaufend sind.

Mfg Sascha

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Je nach Terminaleinstellungen kann es notwendig sein statt nur einem CR
ein CR/LF zu schicken - also 0D 0A

Sollte aber am Terminal auch einstellbar sein... Minicom kanns :)

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

auch dieses habe ich jetzt ausprobiert. Bringt auch keinen Erfolg.
Weder by Hyperterminal oder bei  Terminal.

Mfg Sascha

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn nur CR (0x0d - Carriage Return) gesendet wird, sollte das Terminal
zum Zeilenanfang (nicht Seitenanfang!) zurückspringen. Ein LF (0x0a -
Line Feed) springt in die nächste Zeile, ohne die horizontale Position
zu verändern.

Beispiel: Nacheinander werden folgende Zeichen übertragen

h a l l o <cr> n a s e

Danach sollte auf dem Bildschim "naseo" zu lesen sein und der Cursor
auf dem "o" stehen.

Beispiel: Nacheinander werden folgende Zeichen übertragen

h a l l o <lf> n a s e

Danach sollte folgendes auf dem Bildschirm stehen:
hallo
     nase

Zum "Debuggen" von derlei Dingen ist ein Terminal hilfreich, das den
empfangenen Hexcode darstellen kann; weder Hyperterminal noch das
Win3.11-Terminal können das.

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hatte auch schon derartige Probleme mit diversen Terminalprogramme.
cr heisst eigentlich zum Anfang der Zeile zurückzukehren, die meisten
Programme stellen sich aber so "schlau" an, dass sie meinen, dem
dummen Benutzer unter die Arme greifen zu müssen, der meint mit cr
schon eine neue Zeile :-)
Was bis jetzt bei allen Programmen geholfen hat: vor der Ausgabe die
entsprechende Anzahl backspaces zu senden (0x08). Wenn deine Anzeige
also lautet:
15.654
musst du vor der Ausgabe 6 x 0x08 senden. Ändert sich die Länge des
auszugebenden strings, bei der Ausgabe mitzählen (printf gibt auch
einen  Rückgabewert, wieviele Zeichen ausgegeben wurden), und das beim
nächsten Mal mitverarbeiten.

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn printf verwendet wird, kann es auch sein, daß der C-Compiler dem
Anwender unter die Arme greift und aus einem \n ein \x0d\x0a macht.
Ein einzelnes \r sollte allerdings nicht übersetzt werden.

Hilfreich ist - wie bereits gesagt - ein anständiges Terminalprogramm,
das die empfangenen Hex-Codes anzeigen kann.
Wenn ich mich recht irre, konnte das mal ein uraltes ProComm - aus der
präkolumbianischen 16-Bit-Windows-Zeit.

Autor: Dirk B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Jens123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
da bin ich froh, dass ich linux nutzen kann =)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.