PIC16F884 Anfängerfragen

OP #7237103
Lesenswert?
• ▲
▼
warum kommt eine Fehlermeldung beim Hochladen ?
hängt es mit der Definition des internen Oszillators zusammen ?
Ich will ihn auf 1Mhz einstellen:

#pragma config FOSC = INTRC_CLKOUT// Oscillator Selection bits (INTOSC 
oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, I/O function on 
RA7/OSC1/CLKIN)
#pragma config WDTE = OFF       // Watchdog Timer Enable bit (WDT 
disabled and can be enabled by SWDTEN bit of the WDTCON register)
#pragma config PWRTE = OFF      // Power-up Timer Enable bit (PWRT 
disabled)
#pragma config MCLRE = ON       // RE3/MCLR pin function select bit 
(RE3/MCLR pin function is MCLR)
#pragma config CP = OFF         // Code Protection bit (Program memory 
code protection is disabled)
#pragma config CPD = OFF        // Data Code Protection bit (Data memory 
code protection is disabled)
#pragma config BOREN = ON       // Brown Out Reset Selection bits (BOR 
enabled)
#pragma config IESO = ON        // Internal External Switchover bit 
(Internal/External Switchover mode is enabled)
#pragma config FCMEN = ON       // Fail-Safe Clock Monitor Enabled bit 
(Fail-Safe Clock Monitor is enabled)
#pragma config LVP = ON         // Low Voltage Programming Enable bit 
(RB3/PGM pin has PGM function, low voltage programming enabled)

// CONFIG2
#pragma config BOR4V = BOR40V   // Brown-out Reset Selection bit 
(Brown-out Reset set to 4.0V)
#pragma config WRT = OFF        // Flash Program Memory Self Write 
Enable bits (Write protection off)

// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.

#define _XTAL_FREQ 1000000
#include <xc.h>

// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.

#include <xc.h>

int main()
{
  TRISA1 = 0;
  while(1)
  {
    RA1 = 1;
    __delay_ms(1200);
    RA1 = 0;
    __delay_ms(1200);
  }
  return 0;
}

diese Meldung kommt:
Device Erased...

Programming...

The following memory area(s) will be programmed:
program memory: start address = 0x0, end address = 0x7ff
configuration memory
program memory
Address: b3 Expected Value: 3fff Received Value: 0
Failed to program device
OP #7237108
Lesenswert?
• ▲
▼
wie wird OSCCON passend initialisert ?

mit externem läufts auch nicht:

#pragma config FOSC = HS // Oscillator Selection bits (INTOSC 
oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, I/O function on 
RA7/OSC1/CLKIN)
#pragma config WDTE = OFF       // Watchdog Timer Enable bit (WDT 
disabled and can be enabled by SWDTEN bit of the WDTCON register)
#pragma config PWRTE = OFF      // Power-up Timer Enable bit (PWRT 
disabled)
#pragma config MCLRE = ON       // RE3/MCLR pin function select bit 
(RE3/MCLR pin function is MCLR)
#pragma config CP = OFF         // Code Protection bit (Program memory 
code protection is disabled)
#pragma config CPD = OFF        // Data Code Protection bit (Data memory 
code protection is disabled)
#pragma config BOREN = ON       // Brown Out Reset Selection bits (BOR 
enabled)
#pragma config IESO = ON        // Internal External Switchover bit 
(Internal/External Switchover mode is enabled)
#pragma config FCMEN = ON       // Fail-Safe Clock Monitor Enabled bit 
(Fail-Safe Clock Monitor is enabled)
#pragma config LVP = ON         // Low Voltage Programming Enable bit 
(RB3/PGM pin has PGM function, low voltage programming enabled)

// CONFIG2
#pragma config BOR4V = BOR40V   // Brown-out Reset Selection bit 
(Brown-out Reset set to 4.0V)
#pragma config WRT = OFF        // Flash Program Memory Self Write 
Enable bits (Write protection off)

// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.

#define _XTAL_FREQ 4000000
OP #7237124
Lesenswert?
• ▲
▼
den manuellen Erase hab ich jetzt hinbekommen indem ich mir den Erase 
Button mit Customize Toolbar angelegt habe, aber das hat - 
erwartungsgemäß - nichts gebracht.

#hhinz: was ist denn überhaupt der OSCCON und warum muss man den 
initialiseren ? Da es mit dem externen Oszillator ja auch nicht geht, 
hat der Fehler vielleicht eine andere Ursache ?

(warum müssen eigentlich immer welche die Anfänger diffamieren - dann 
braucht man doch gar nicht zu antworten ! Es gibt doch genug 
hilfsbereite Mitmenschen die in der Lage sind kurz und bündig die 
richtigen Antworten zu geben)

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.