Hallo Forengemeinde, ich habe mich jetzt mal an den PICs (PIC16F648A) versucht und scheitere jetzt an einer einfachen EXOR-Verknüpfung. Ich habe ein LED an Port A1 über einen Vorwiderstand an Masse. Der PIC läuft über den internen Oszillator. Normalerweise sollte die LED doch so blinken, tut sie aber nicht. Sie geht nur an und bleibt an. Warum ist das so? Setze und lösche ich den Port A1 mit 2 Befehlen funktioniert es. Kennt der HI-TECH-Compiler in der freien LITE-Version kein EXOR? Hier mal der Code:
1 | #include <htc.h> |
2 | |
3 | __CONFIG(FOSC_INTOSCIO & WDTE_OFF & PWRTE_ON & MCLRE_ON & BOREN_ON & LVP_ON & CPD_OFF & CP_OFF); |
4 | |
5 | #define _XTAL_FREQ 48000
|
6 | |
7 | void main(void) |
8 | {
|
9 | OSCF = 0; // Internal Oscillator = 48kHz |
10 | TRISA = 0x00; // PortA = output |
11 | |
12 | PORTA = 0x00; // PORTA = aus |
13 | |
14 | while(1) |
15 | {
|
16 | PORTA ^= 0x02; // toggel LED |
17 | __delay_ms(500); |
18 | }
|
19 | }
|