PIC 18F4550, RS232 und Putty

OP #2873291
Lesenswert?

Hallo zusammen,

ich versuche mittels Rs232 mit meinem PC den 18F4550 "anzusprechen". Im 
Schaltplan ist zu sehen, wie der MAX232 verschaltet ist.
Die bloße Kommunikation funktioniert.
Ich habe es zum Beispiel geschafft etwas an den PC zu schicken. Da ich 
Win7 habe, verwende ich Putty und hier liegt ein Problem: Ich checke das 
Programm, glaube ich, nicht so richtig.
Der Code
1
while(1)
2
{
3
   helfer=getc();
4
   printf("Ascii = %d \n", helfer);
5
   putc(13);
6
}
wartet ja irgendwie auf eine Eingabe (bitte korrigieren, wenn ich hier 
schon falsch liege) und sobald die kommt (ein char) dann gibt er mir den 
ASCII Wert aus. Das klappt auch. In Putty kann ich bei jedem 
Tastenanschlag unmittelbar dannach den ASCII Code sehen.
Aber warum sehe ich meine Eingaben nicht? Wie kann ich ganze Strings 
einlesen?
1
gets(string);
funktioniert zwar, weil ich den String mir wieder zurück schicken lasse, 
jedoch ist in Putty nichts von meiner Eingabe zu sehen. Der Cursor 
bewegt sich garnicht. Ich tippe sozusagen blind :-).
Mache ich was falsch oder bediene ich Putty falsch?

Gruß

John
Angehängte Dateien:
OP #2873392
Lesenswert?

Danke!

Unter "Terminal" im Frame " Line discipline options" bei Local Echo 
"forced on" wählen hat geholfen.
Was ich noch nicht so recht verstehe ist der Unterschied zwischen 
putc(13) und ein \n in einem printf-Befehl. Das soll doch beides eine 
neue Zeile bewirken, oder?
Gast #2873863
Lesenswert?

Eigentlich umgekehrt. Erst \r dann \n. Und man kann es in einem String 
schreiben.
printf("Ascii = %d \r\n", helfer);
Ist ein recht konfuses Thema. Windows hat \r\n, Linux nur \n, Mac nur 
\r. Manche Compiler wandeln es automatisch um... Gibt immer wieder 
Probleme.

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