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
Michael S. schrieb: > Address: b3 Expected Value: 3fff Received Value: 0 > Failed to program device Lösch den Chip mal manuell.
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
Michael S. schrieb: > wie wird OSCCON passend initialisert ? Du weißt nicht wie man bei einem alten PIC ein Register der Bank 1 beschreibt? Dann solltest du im PIC-Kurs nochmal auf den Anfang zurück.
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)
Michael S. schrieb: > Es gibt doch genug > hilfsbereite Mitmenschen die in der Lage sind kurz und bündig die > richtigen Antworten zu geben) Kaum.
Michael S. schrieb: > Address: b3 Expected Value: 3fff Received Value: 0 > Failed to program device Kann am der USB Verbindung liegen. Kabel tauschen, kein Hub, Verlängerung.... Das Kabel zum µC ist zu lang oder hat sonst wie Kontaktprobleme.
#teoderix: ich hab jetzt den Chip statt über einen Nullkraftsockel direkt ans Breadboard gesteckt und jetzt gehts ! danke für den Tip.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.