Hallo zusammen, ich habe ein ziemliches Problem. Ich habe in einem Projekt den PIC32MX340F512H im Einsatz. Programmieren und Debugging läuft über ICD2. Meine Software ist nun fertig und im Debug-Mode funktioniert sie auch einwandfrei. Stelle ich jedoch auf Release um und programmiere den PIC, verhält er sich beim Ausführen der Software völlig unberechenbar. Kennt jemand das Problem?
sowas kommt oft durch Verbrechen im Code (const casts oder sowas), wo der Compiler einfach sachen optimiert, die er nicht optimieren dürfte. Auch net ist ein vergessenes volatile vor Variablen, die in unterschiedlichen parallelen Verarbeitungssträngen beschreiben werden (ISR). lässt man das volatile weg optimiert der compiler Zugriffe auf die Variable weg. So bekommt der andere Verarbeitungsstrang nicht mit, wenn sich die original variable ändert. volatile zwingt den compiler die Varaible bei jedem Zugriff auszulesen.
Hallo, danke für den Versuch. An der Optimierung lag es (Ausnahmsweise) nicht. Es war der JTAG-Port. Echt dumm von mir. Ich nutze die PLib Funktionen und dachte, dass die Funktionen den JTAG automatisch deaktivieren. Dem war allerdings nicht so.
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.