www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Kein Breakpoint auf bestimmte Zeile


Autor: Tony _s (tony_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

Bei einem Miniprojekt mit dem MSP430/149 und der IAR Workbench kann ich
an eine bestimmten Zeile keine Breakpoints setzen. Das Problem liegt in
einer Funktion mit lokaler Variable. Diese Variable wird aber nur
gerade innerhalb der Funktion verwendet. Nicht einmal dies "x = 1;"
funktioniert.

Vielleicht ist dies eine Anfängerfrage, aber um eine Antwort wäre ich
froh. Danke.

Gruss
Tony

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mich zwar noch nicht mit den MSPs und der IAR Workbench befasst,
aber ich kann mir folgendes vorstellen:

Das Programm wurde nicht in Assembler sondern in C programmiert und die
Optimierungsfunktion hat die Zeile einfach wegoptimiert. Sprich... es
gibt im fertigen Programm diese Zeile nimmer - also auch kein Platz für
nen Breakpoint an der Stelle ;)

Gruß,
Magnetus

Autor: Tony _s (tony_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tatsächlich!

Die Geschwindigkeit war auf Medium optimiert. Wenn ich die Einstellung
auf None stelle, dann ich an der gewünschten Stelle meinen Breakpoint
setzen.

Und, ja es ist C Code.

Dazu aber eine Frage: Kann man später wenn die Debugphase abgeschlossen
ist und der Code released werden soll, die Optimierung wieder
einschalten oder lässt man besser die Finger davon?

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm.... bin mir da auch nicht 100%ig sicher... Ich würde dir auf alle
Fälle raten nach der Debugphase die SW noch einmal im optimierten
Zustand auf Herz und Nieren zu testen.

Gruß,
Magnetus

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kommt drauf an. Wenn Du da wirklich nur rumrechnest, um zu testen, kann
der Compiler das ja getrost wegoptimieren. Wenn Du aber auf irgendein
(memory mapped) Register zugreifst, kann der Compiler das natürlich
nicht wissen. In diesem Fall musst Du die Variable als volatile
deklarieren, dann wird sie nicht wegoptimiert.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.