Ok... ich habs.
Hab den code nochmal neui geschrieben. Aber der Fehler liegt am Board selbst.
An RB0 hängt noch ne LED. Der interne Pullup kann die nicht genug treiben, d.h. die Spannung fällt so drastisch ab, dass der PIC18f4520 die Flanke nicht mehr erkennt.
Ein hoch auf die Entwickler die das Board entworfen haben
erleichterte Grüße
Code:#include <p18f4520.h> #include <portb.h> void main (void); void InterruptHandlerHigh (void); void main () { INTCON2=0b0000000; TRISB=0b00000001; LATB=0b00000110; INTCON=0b00010000; INTCONbits.GIE=1; LATBbits.LATB1 =0; while (1) { } } #pragma code InterruptVectorHigh = 0x08 void InterruptVectorHigh (void) { _asm goto InterruptHandlerHigh _endasm } #pragma code #pragma interrupt InterruptHandlerHigh void InterruptHandlerHigh () { INTCONbits.INT0IF = 0; LATBbits.LATB1 = !LATBbits.LATB1; //toggle LED on RB1 }






Zitieren

Lesezeichen