Probleme mit Optimierung bei CCE für MSP430

Gast #1025830
Lesenswert?
• ▲
▼
Hallo,
kennt sich jemand mit den optimization Einstellungen in CCE aus?
Ich habe das Problem, dass mein Programm für einen MSP430f2272 mit level 
0 und 1 problemlos läuft, sich aber bei level 2 irgendwo aufhängt (lässt 
sich nicht durch debuggen finden).
Gibt es irgendwo eine Übersicht über die unterschiedlichen Level und was 
jeweil genau optimiert wird?
Gast #1026202
Lesenswert?
• ▲
▼
Hallo,
danke schon mal für die Antworten.
Ich habe jetzt mal wild mit volatile um mich geworfen und siehe da, das 
Programm funktioniert auch bei Stufe 2.

Nun noch eine Frage: In welchen Fällen ist volatile wirklich 
erforderlich bzw. an welchen Stellen sollte es nicht eingesetzt werden??
Gast #1026217
Lesenswert?
• ▲
▼
Mit volatile sollte sparsam umgegangen werden, da der Optimizer sonst 
seine Arbeit nicht richtig tun kann.
Volatile ist nötig wenn ein Register z.B. von einem Peripherieteil im uC 
wie Timer oder physikalische Eingänge verändert werden.
Auch globale Variablen die in Interrupts verändert werden, sollten mit 
volatile gekennzeichnet sein.
Das sind so die wichtigesten Dinge.
Gast #1026310
Lesenswert?
• ▲
▼
>Volatile ist nötig wenn ein Register z.B. von einem Peripherieteil im uC
>wie Timer oder physikalische Eingänge verändert werden.

D.h. ich muss, wenn ich z.B. den AD-Wandler im Verlauf des Programms 
mehrmals abfrage, die entsprechende Variable als volatile definieren, da 
er ansonsten Änderungen nicht berücksichtigt? Das kann ja eigentlich 
nicht sein.
Oder trifft das nur auf per Interrupt veränderbare Variablen zu?

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.