einfaches PIC programm

OP #3013220
Lesenswert?

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.
Gast #3013262
Lesenswert?

1. Da fehlt ne endlos schleife....

2. Bei PIC schreibt man die Ausgangswerte in das Latch Register..
also LATB.BIT3=0; (ob BIT3 richtig ist weiß ich gerade nciht...)

3. Wo wird denn deine Delay Funktion angegeben... muss man da nciht die 
delay.h oder so einbinden damit das so geht??
#3014773
Lesenswert?

kann ich nicht so sagen, ist mehr so ein gefühl resp. was ich immer (bei 
anderen) sehe. dass keine endlosschleife drin ist, die fehlenden 
*.h-datei-einbindungen und rein optisch, wie die paar wenigen zeilen 
geschrieben sind, lassen mich ahnen, dass du blutjunger anfänger ist 
(ist nicht schlimm, jeder fängt so an, und selbst ich muss noch viel 
lernen). deshalb mein tip, erstmal ein tutorial durchmachen, damit du 
die zukünftigen, groben fehler schon erst gar nicht machst :-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren