Hallo zusammen, wahrscheinlich ist das Thema hier schon x mal durch, ich krieg es trotzdem nicht hin... Habe ein recht langes Programm, bis auf A0 und A1 machen auch alle Ports was sie sollen. Die schalten sich aus, so dass ich ne ungewollte PWM bekomme. Jetzt habe ich ein Testprogramm geschrieben, um das ganze von vorn anzugehen: Ich versuche, mit einem PIC12f675 einfach mal alle Ports (außer A3, I know...) auf 1 zu schalten. (interner RC) Habe hier einen PCW PIC C Compiler, bin in assembler nich so firm... Ich muss ja Komparator und Analog ausschalten. Da ich dem Compiler mit seinen Fuses nicht so ganz traue, hab ich das mal in c nachgeschrieben: void main (){ GPIO &= 0x00; // Alles aus CMCON |= 0x07; // Komparator off STATUS |= 0x10; // wechsel auf Bank 1 ANSEL = 0; // Analog off TRISIO = 0; // alles Outputs STATUS &= ~0x10; // wieder auf Bank 0 wechseln GPIO = 0xff; // alle Ports an } leider tut sich da gar nix mehr... Hab jemand eine Idee, was genau mit den beiden Ports los sein kann? Grüße & Danke, anton_elfi
Bin zwar kein C-Mensch, aber du musst um auf Bank 0 zu wechseln Status löschen (oder das Bit RP0). Jetzt bleibst du ja auf Bank 1.
bei keinem vernünftigen C-compiler muss man sich um die bänke kümmern, das macht sogar der cc5x von selbst. WDT?
Kennt dein Compiler kein RP0 ? RP0 ist 0x20 , damit wechselst du dann zu bank1 ein STATUS|=0x10 ist in wirklichkeit eine NOP, da du dieses Bit nicht schreiben darfst, es ist nur Read Only, zumindest in der Praxis.
Die Fuses (bei PIC: CONFIG) kannst Du im Programm nicht beeinflussen. In Deinem Programm kann ich keine Stelle finden, wo Du die Ausgänge auf 1 schaltest.
Hallo zusammen, herzlichen Dank und ein fettes Lob an dieses Forum, mit so vielen Antworten hatte ich nicht gerechnet :-) Freitag Nacht war es dann doch etwas spät, ich konnte wohl nicht mehr zählen... Natürlich muss Bit 5 vom Status Register auf 1 gesetzt werden, um auf Bank1 zu kommen. (also STATUS |= 0x20;) Damit ging es dann! Na ja, der Compiler lässt etwas zu wünschen übrig, ich dachte der erledigt diese Dinge in seinem Setup-Wizzard.... Also doch lieber alles selber machen bzw. kontrollieren! Nochmal besten Dank & viele Grüße! anton_elfi
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.