Forum: Mikrocontroller und Digitale Elektronik MPLAB(x) und ICD3 schreiben die Configurationsbits nicht


von temp (Gast)


Lesenswert?

Hallo,

ich mache meine ersten Versuche mit einem dsPIC33FJ16GS502. Compiler ist 
der C30 unter MPLAB bzw. MPLABX. Neuste Versionen. Die 
Configurationsbits stehen im Code in etwa so:
1
#include "p33FJ16GS502.h"
2
3
 _FOSCSEL(FNOSC_FRCPLL);
4
 _FOSC(FCKSM_CSECMD & OSCIOFNC_OFF);    
5
 _FWDT(FWDTEN_OFF);                     
6
 _FPOR(FPWRT_PWR128);

Das Übersetzen meines Testprogrammes funktioniert. Wenn ich dann das 
ganze mit dem ICD3 debugge, muss ich feststellen, dass die 
Konfigurationsbits nicht geschrieben werden. Nach endlosen Versuchen und 
googeln habe ich es jetzt unter MPLAB geschafft, und zwar so, dass ich 
zuerst über Debuggen->Programmieren den dsPic flashe und dann erst 
debugge. Da bleiben dann die Configurationsbits erhalten. Ändere ich in 
diesem Zustand was am Code, übersetze und starte den Debugger, dann 
überträgt er den neuen Code aber nicht die eventuell geänderten 
Configurationsbits. Das ist zwar irgenwie nicht logisch aber man kann 
damit leben. Die selbe Verfahrensweise unter MPLABX geht nicht. Dort 
kriege ich es unter keinen Umständen hin, dass die Bits richtig gesetzt 
werden. Mache ich hier was falsch oder verstehe die Vorgehensweise 
nicht? Am Code kann es ja nicht liegen, da es unter MPLAB geht wenn man 
sich nicht darauf verlässt, dass beim Starten des Debuggers neben dem 
Code auch diese Bits geflasht werden. Oder habe ich mit dem ICD3 in 
Verbindung mit MPLABX wieder Bananen gekauft die erst beim Kunden reifen 
müssen?
Auf meinem Notebook unter W7 64bit und MPLABX wird zwar das ICD3 erkannt 
und angesprochen, kriegt aber keine Kommunikation mit dem Chip hin. So 
als ob die 3.3V mit dem der Chip vom ICD3 versorgt werden soll, nicht 
ankommen. Zu messen hatte ich geraden nichts da. Selbe Konstellation 
unter MPLAB geht aber.
Irgendwie ganz schön frustrierend. Geht das nur mir so?

von Frank K. (fchk)


Lesenswert?

Poste Deine Frage im Support-Forum auf microchip.com.

Ich habe solche Probleme nicht, benutze allerdings auch noch kein MPLABX 
und keinen der neuen XC8/16/32 Compiler. Beim Compiler kann es helfen, 
vielleicht ein oder zwei Versionen zurückzugehen, um zu prüfen, ob Du 
nicht einem Bug aufsitzt. Neu ist nicht in jedem Fall besser.

Das ICD3 versorgt das Target normalerweise NICHT mit Strom. Das ist eine 
Funktion, die Du erst extra aktivieren musst, und da hast Du bei MPLABX 
wohl den passenden Haken noch nicht gefunden.

fchk

von temp (Gast)


Lesenswert?

Danke erst mal.

Der erzeugte Code ist in Ordnung, sonst würde das in der beschriebenen 
Variante mit MPLAB auch nicht gehen können. Es ist immer der C30 nicht 
die XC Versionen. Den Haken beim IDC3 habe ich natürlich gesetzt. Es 
geht ja bei 3 von 4 Konstellationen.

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
Noch kein Account? Hier anmelden.