RS-232 empfangen mittles PIC16F628

Gast #264873
Lesenswert?

Hallo,

dies ist das erste mal, dass ich hier im Forum etwas schreibe. Obwohl
ich nun seit zwei Tagen denke, google, durch das Forum streife und mich
durch spruts Seite lese komme ich einfach nicht weiter.

Ich möchte gerne einen PIC16F628 an eine serielle Schnittstelle des PCs
anschließen und die übermittelten Daten an einem LCD-Display ausgeben.
Wenn ich die Daten in das Programm schreibe werden die auch
ordnungsgemäß ausgegeben, aber wenn ich die via RS-232 übertragenen
Daten ausgebe kommen nur seltsame Zeichen (btw. interessanten
Zeichensatz haben diese Displays).

Da das direkte Ausgeben funktioniert denke ich, dass es an meiner
RS-232 Konfiguration liegt.

Von der Hardwareseite scheit alles sauber zu sein, denn ansonsten würde
er keine Daten empfangen, oder? Als Pegelwandler setze ich einen MAX232
ein.

Ich habe den Quellcode mal angehangen. Wenn jemandem etwas einfällt
oder einen Tipp für mich hat bitte ich um eine Antwort, denn so langsam
frustriert mich das Teil :-(.

Danke und viele Grüße,
 Patrick
Angehängte Dateien:
Gast #264875
Lesenswert?

Hallo,

ich hatte zuerst das mit dem internen Oszillator versucht, hatte aber
keinen Erfolg. Da der erhebliche Abweichungen von 4MHz haben kann habe
ich nun einen externen dran gelötet, aber auch ohne Erfolg.

Die 25 für SPBRG habe ich berechnet, aber sowohl 25, als auch 26
funktionieren nicht.

Danke,
 Patrick
Gast #264880
Lesenswert?

Aber ich denke das Polling wird schnell genug sein! Sind zur Abfrage ja
nur 2 Befehle - Die Abfrage und das goto!

Stimmt die Baudrate denn auf dem PC selber? Mit welchem "Tool" läuft
das ganze. Denn ich denke mit dem Windows Terminal kann man diese
ungerade Baudrade nicht einstellen!?

Falsche Zeichen sind meistens ein Problem einer flaschen Baudraute auf
der Seite des PCs oder des uCs!
Gast #264882
Lesenswert?

Hallo,

ich versuche masl allen zu antworten :)

Hans-Heinrich: wie Yves richtig erklärt hat geschieht das empfangen
über ein einfaches Polling. Das RS-232 Protokoll muss an im übrigen bei
diesem PIC nicht implementieren, da er das mitbringt. Ich bin im übrigen
auch der Meinung, dass es schnell genug sein sollte, da ich lediglich
ein Zeichen empfange.

Yves: Ich benutze minicom unter Linux.


Grüße,
 Patrick
Gast #264884
Lesenswert?

Hallo,

und danke für die vielen Antworten. Ich habe den Fehler gefunden :).
Zuerst einmal möchte ich sagen, dass ich doch nicht ganz so dämlich
binn, wie ich aussehe g, denn die programmierung war sichtig. ich
habe jetzt mal den MAX232 getauscht und siehe da, es funktioniert...

Aber ohne die Hilfe wäre ich wohl kaum darauf gekommen. Da mir keiner
geschrieben hat, dass das Programm nicht funktionieren kann ( aus
welchem Grund auch immer ) habe ich angefangen die Hardware mal zu
tauschen, und siehe da...

Nochmals Danke und viele Grüße,
 Ein sehr glücklicher Patrick

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