Ich programmiere schon seit längerer Zeit mit den uC herum. Nun habe ich mir die neue Microchip IDE heruntergeladen mit den neuen XC8 compiler.
1 | #include <stdio.h> |
2 | #include <stdlib.h> |
3 | #include <xc.h> |
4 | #include <htc.h> |
5 | #include <pic.h> |
6 | |
7 | // CONFIG
|
8 | #pragma config FOSC = INTOSCIO // Oscillator Selection bits (INTOSC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)
|
9 | #pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled)
|
10 | #pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
|
11 | #pragma config MCLRE = ON // RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is MCLR)
|
12 | #pragma config BOREN = ON // Brown-out Detect Enable bit (BOD enabled)
|
13 | #pragma config LVP = ON // Low-Voltage Programming Enable bit (RB4/PGM pin has PGM function, low-voltage programming enabled)
|
14 | #pragma config CPD = OFF // Data EE Memory Code Protection bit (Data memory code protection off)
|
15 | #pragma config CP = OFF // Flash Program Memory Code Protection bit (Code protection off)
|
16 | |
17 | #define _XTAL_FREQ 4000000
|
18 | |
19 | #define led RB3
|
20 | |
21 | void main(void) { |
22 | |
23 | TRISA = 0x00; PORTA = 0; |
24 | TRISB = 0x00; PORTB = 0; |
25 | |
26 | led = 0; |
27 | __delay_ms(800); |
28 | led=1; |
29 | __delay_ms(800); |
30 | |
31 | }
|
der Kompiler gibt mir keinen Fehler aber so kann ich dem uC spannung geben und es passiert gar nichts. Aber wenn ich zuerst led =1; __delay_ms(800); led=0; __delay_ms(800); schreibe dan schaltet sich die LED ein aber nie wieder aus. was ist falsch an meinen Überlegungen.