Hallo, ich sitze gerade vor einem PIC32MX470 und komme einfach nicht weiter, da der RA0-Pin nicht tut was er soll, bzw. was ich erwarten würde. Ich möchte ihn als einfachen digitalen Ausgang nutzen. Das entsprechende TRSIA0-Bit ist auf 0 gesetzt. Das ANESLA-Register benötige ich nicht, da der Pin immer digital ist. Aber egal ob ich LATA0 bzw. RA0 auf 1 oder 0 setze, messe ich immer ca. 2,1 Volt an diesem Pin. Auf meinem Board habe ich alles auf Kurzschlüsse überprüft und keine gefunden. Es handelt sich auch um keinen "reprogrammable Pin". Laut Datenblatt sind die einzigen zusätzlichen Funktionen TMS (JTAG) und CTED1 (Charge Time Measurement Unit), die ich aber beide nicht nutze. Andere PORTA-Pins lassen sich wie erwartet ansprechen. Meint ihr, dass der PIC dann einfach nur defekt ist, oder übersehe ich irgendwas in der Programmierung. Vielleicht hatte ja mal jemand ein ähnliches Problem und kann mir weiterhelfen. Vielen Dank schonmal!!!
Rob schrieb: > Das ANESLA-Register benötige ich nicht Hast Du es denn verändert? Standardmäßig steht es auf 0xFFFF, d.h. die RAx Pins sind analoge Eingänge. Willst Du also RA0 als digitalen Ein-/Ausgang nutzen, musst Du Bit 0 von ANSELA löschen.
Hallo Dirk, Danke für deine Tipps.. Das ANSELA-Register habe ich komplett auf 0 gesetzt. Andere RA-Pins funktionieren ja auch normal. Ich dachte auch, dass ich JTAG in den Configuration-Bits deaktiviert habe, habe jetzt aber festgestellt, dass diese Einstellung anscheinend nicht übernommen wird. Ich stelle es auf Off und programmiere anschließend, sobald ich aber wieder in die Configuration-Bits gehe, sehe ich, dass JTAG wieder auf On gestellt ist. Ist das normal oder muss ich beim Programmieren noch etwas zusätzlich beachten?
Rob schrieb: > Hallo Dirk, > > Ich stelle es auf Off und programmiere anschließend, sobald ich > aber wieder in die Configuration-Bits gehe, sehe ich, dass JTAG wieder > auf On gestellt ist. ??? Wo stellst du es auf OFF? Im MPLABX? Wenn Ja, dann ist das zu wenig. Du musst die CONFIG-Einstellung aus MPLABX in deine Source einfügen - mit dem Button <Generate Source Code to Output> komplette Configuration erzeugen und mit Copy&Paste in den Source übernehmen. Falls es im Source dann noch immer nicht funkteoniert, dann ist eventuell bei den Optionen vom Programmer (PICKIT3 ? ICD3 ?) etwas verstellt. <Auto select memory and ranges> sollte auf <Allow PicKit3 to Select Memorys> stehen (gleiches gilt auch für ICD3).
Ja, hatte es nur im MPLAB umgestellt.. habe jetzt aber den entsprechenden #pragma-Befehl in meinem Source-Code und es funktioniert.. vielen Dank euch beiden!:)
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.