Forum: Mikrocontroller und Digitale Elektronik CR-LF von Hand senden


von Fragender (Gast)


Lesenswert?

Hallo,

ich möchte mit einem Terminalprogramm ein File an meinen AVR senden.

Wenn ich die Befehle von Hand sende, also in HTerm meine Kommandos als 
ASII eintippe und bei "Send on enter" "CR-LF" eingebe, funktioniert 
alles.

Wenn ich allerdings z.B. schreibe "Befehl \r\n" wird er nicht 
akzeptiert.
Ich habe schon verschiedene Schreibweisen getestet, aber irgendwie 
funktioniert es nicht.

Was muss ich eingeben, um die Steuerzeichen von Hand zu senden, wie ich 
es bei einer Liste machne müsste?

Danke

von Walter T. (nicolas)


Lesenswert?

Fragender schrieb:
> allerdings z.B. schreibe "Befehl \r\n"

Wo?

von H.Joachim S. (crazyhorse)


Lesenswert?

\r\n kann natürlich nicht funktionieren, das ist ist in C so und ein 
Terminalprogramm kann damit nicht anfangen. Es hilft nur ein Blick in 
die Hilfe deines Terminalprogramms.
Bei Bray-Terminal z.B. wird das $-Zeichen benutzt, um Hexwerte zu 
senden:
ATZ0$0d$0a

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wenn Du ein Terminalprogramm verwendest, musst Du Ctrl+M (CR, 0x0d) und 
Ctrl+J (LF, 0x0a) eingeben. Die Taste Ctrl wird oft auch mit Strg 
beschriftet.

von Washington I. (washington_i)


Lesenswert?

hallo,

kannst du einzelne zeichen senden?
CR-LF wäre 0x0D 0x0A (hexadezimal) bzw 13 und 10 (dezimal)

also beispielsweise:
1
#define CR 0x0D
2
#define LF 0x0A
3
4
//und irgendwann:
5
sendstring("meine ausgabe");
6
sendchar(CR);
7
sendchar(LF);

ich definiere mir gerne für solche zwecke ein makro, was dann einen 
gewünschte zeilenumbruch sendet:
1
#define sendNewline sendchar(0x0D);sendchar(0x0A);
2
3
sendstring("meine ausgabe");
4
sendNewline

von H.Joachim S. (crazyhorse)


Lesenswert?

Es geht aber um die andere Richtung, vom Terminalprogramm Zeichen an den 
MC senden.

von Fragender (Gast)


Lesenswert?

Vielen Dank an alle :-)

"Befehl 0x0D 0x0A" funktioniert.
Die Buchstaben muss ich allerdings groß schreiben.

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.