Forum: Mikrocontroller und Digitale Elektronik pic18f2550 uart will nicht empfangen


von Tobias O. (Gast)


Angehängte Dateien:

Lesenswert?

Ich weiss nicht mehr weiter, die UART meines PIC18f2550 empfängt keine
Zeichen. Das Senden vom Controller an den PC funktioniert einwandfrei.
Ich bin mir sicher, dass meine Treiberschaltung für das Empfangen
richtig ist, als auch die Verdrahtung, da diese Treiberschaltung auch
schon mit anderen Mikrocontrollern funktioniert hat. Habe alles mit dem

Multimeter durchgemessen.
Wenn ich einen großen File zum Controller schicke, konnte ich auch eine
Änderung des DC-Pegels am RX pin feststellen. Wahrscheinlich ist das ein
simpler Codefehler. Ich bin was PIC Controller angeht blutiger
Anfänger.

Bitte schaut doch mal in den Anhang, wo der Fehler steckt, oder schickt
mir euren UART Programmcode, der bei euch schon funktioniert hat.

Ich benutze die Studentenversion des MCC18 C-Compilers


Vielen Dank für eure Hilfe, Gruß Tobias

von Tobias O. (Gast)


Lesenswert?

Auch wenn das keinen Interessiert. Senden und Empfangen funktioniert
jetzt einwandfrei. Die Lösung war, das ich den PIC mit 48Mhz betrieben
habe, so wie es im Datenblatt angegeben war. Der PIC schien auch
einwandfrei zu funktionieren. LED blinken, Timer Interrupt, UART
senden, blos halt nicht empfangen. Aus Frustration habe ich dann die
Taktfrequenz niedriger eingestellt (24Mhz), und siehe da jetzt kann ich
auch empfangen.

G. Tobias

von Geri (Gast)


Lesenswert?

Hallo Tobias

Evtl. die Configuration bits noch einmal durchschauen.

Schau dir doch mal diese Konfiguration an
http://burger-web.com/Projects/PIC18F4550USB/de_PIC18UsbBoard.htm#Software

und dann noch einmal das Baudratenregister prüfen, vielleicht war die
doppelte Baudrate eingestellt.

Beste Grüsse
Geri

von Tobias O. (Gast)


Lesenswert?

Das Problem hat sich ja gelöst, der Fehler lag darin, das ich den mit 48
Mhz betrieben hatte, das senden funktionierte ja auch einwandfrei mit
den errechneten Parametern. Der lief wirklich intern mit 48Mhz. Jetzt
habe ich den 96 Mhz PLL CPU Takteiler auf 4 gestellt und das empfangen
funktioniert jetzt ja auch einwandfrei.

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.