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?
Gast
#715805
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.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.