Hallo Community, ich bin professioneller C Entwickler bei einer kleinen Firma und habe das Problem, dass ich jetzt mit PICs arbeiten muss:) Ich verwende einen PIC18LF26K40 und möchte das SPI nachdem ich es benutzt habe wieder als IO verwenden. Das SPI funktioniert auch gut, aber wenn es mit SSP1CON1bits.SSPEN = 0; wieder ausgeschaltet werden soll gehen danach die Pins nicht mehr als IO, auch wenn ich die TRIS Register richtig setzte. Kennt jemand das Problem? Vielen Dank, Bernd
Bedeutet "wieder verwenden", dass die Pins vor der Verwendung als SPI als I/O verwendet werden und da wie erwartet funktioniert haben? Eingänge oder Ausgänge? Analogfunktion (falls Eingänge) deaktiviert?
:
Bearbeitet durch User
So ungefähr. Also die Pins werden manchmal als SPI verwendet, aber wenn sich die Schaltung schlafen legt werden von dem Chip die Eingänge hochohmig, sodass ich denen ein festes Potential geben muss. Dazu will ich die MISO Leitung als Ausgang schalten und Low activ anlegen. Deswegen muss immer hin und her gewechselt werden in der Funktion der Pins. Und momentan ist es so, dass ich das SPI an mache, funktioniert auch, dann aber nach dem ausmachen vom SPI kann ich den Pin nicht mehr als Output verwenden.
Bernd schrieb: > Und momentan ist es so, dass ich das SPI an mache, funktioniert auch, > dann aber nach dem ausmachen vom SPI kann ich den Pin nicht mehr als > Output verwenden. Die Frage war ja eine andere: Volker S. schrieb: > Bedeutet "wieder verwenden", dass die Pins vor der Verwendung als SPI > als I/O verwendet werden und da wie erwartet funktioniert haben? Versuche also, ob sie ohne SPI einschalten funktionieren. Falls ja, dann schaue nach, welche Register Du alle für SPI einschaltest und welche Du entsprechend zurückschalten musst. Ich bin jetzt zu faul, bei Deinem Typen zu schauen, aber es gab früher manchmal Wechselwirkungen, mit anderen Funktionalitäten, z.B. ADC.
Ach ich habs gefunden. Es lag daran, dass beim SPI initen die PPS Register gesetzt werden, sodass intern die Pins auf das SPI gemappt werden. Das bleibt auch so, wenn man das SPI aus macht. Wenn man die PPS Register nullt gehts. Trotzdem danke für die Hilfe:) Bernd
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.