Hallo, Ich sitze grade dabei einen PIC16LF726 zu programmieren. dabei benutze ich eine serielle Schnittstelle (Softwareschnittstelle) welche ich folgendermaßen initialisiert habe: #use rs232(STREAM=GPRS, BAUD=57600 , XMIT=PIN_C4,RCV=PIN_C3) ich benutze dazu ein externes 20 MHz Crystal. Der uC läuft auch perfekt Aber sobald ich ein gets() oder getc() aufrufe startet sich der IC automatisch neu. Mit RESTART_CAUSE() hab ich herausgefunden, dass der Grund dafür MCLR_FROM_RUN ist. Ich habe auch schon mit FUSES NOMCLR versucht diese Neustarts zu unterdrücken aber ohne erfolg. Das komische ist auch, dass wenn ich den RCV Pin von C3 auf B3 wechsele es kein Problem gibt wobei beide normale I/O Ports sind. C3 kann lediglich auch als SCL/SCK Pin für den i2c Bus genommen werden. Das Problem ist, dass ich die Platine schon geätzt habe und eine neue zu entwerfen/ätzen/bestücken ne ziemliche Plackerei wäre. Ich benutze als Programmer den ICD_U40 Hat jemand von euch ne Idee wo der Fehler liegen könnte. Google konnte mir nur bedingt helfen indem ich ein paar NOPs in die Gets() Funktion einsetze aber ich komm an den Quellcode von gets() nicht ran. Ich wäre für jede Hilfe sehr dankbar
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.