Hallo uC Gurus, versuche seit ein paar Stunden mit dem PIC16F887 eine LED zum leuchten zu bringen. Bleibe aber erfolglos. Habe das Datenblatt studiert und das Headerfile angeschaut und daraus folgenden Code abgeleitet. Was ist hier falsch? #include <16F887.h> #fuses HS, NOWDT #use delay (clock = 20000000) void main() { while (1) { SET_TRIS_A(0x00); // define PORTA RA0 as output OUTPUT_A(PIN_A0); } } Wie kann ich PIN_A0 auf 1 setzen?
OUTPUT_HIGH(PIN_A0); OUTPUT_LOW(PIN_A0); wenn du diese Befehle benützt brauchst du keine Portsettings machen, da der Compiler das dann übernimmt. Für eine LED ist das ok, wenn du schnelle I/Os brauchst kannst du vorher noch #use_fast_io benützen, dann musst du die Portsettings selber machen.
Vielen Dank Thorsten. Habe jetzt das Problem auf dem Demoboard (PICkit2), welches ich benutze, bemerkt. Habe anstatt auf PORTD auf PORTA geschrieben. LEDs sind aber an PORTD angeschlossen. Trotzdem vielen Dank. Ich denke, mit deiner Hilfe kann ich dennoch was anfangen.
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.