Page tree

Diese Dokumentation ist nicht aktuell!

Gehen Sie bitte zu: http://help.logicals.com/lco3docu/latest/user-documentation/de.


Skip to end of metadata
Go to start of metadata

Vorausgehend: Unterbrechungspunkt im Code setzen


So debuggen Sie die Anwendung für das Projekt 

  1. Öffnen Sie das Kontextmenü für das Projekt, zeigen Sie auf Debug ausführen als und wählen Sie den folgenden Befehl (abhängig von der SPS).

    SPS/ZielsystemBefehl
    für C-Debugging
    Integrierte SPS

    Instant C Debugging
    Alternative: Selektieren Sie das Projekt im Projektexplorer oder selektieren Sie das Projekt, die Konfiguration, die Ressource oder die Programminstanz in der Sicht Instanzen. Dann klicken Sie auf  in der Symbolleiste. Beim ersten Start der Debugging-Sitzung (pro Arbeitsbereich) erscheint ein Dialog. Wählen Sie darin Arbeitsbereicheinstellungen überschreiben und aus der Liste der Startprogramme GDB (DSF) Create Process Startprogramm, danach drücken Sie OK

    Remote-Zielsystemejenen Befehl mit dem Namen, der aufgrund der Schritte bei "Launch-Konfiguration für Remote-Zielsysteme erstellen" erstellt wurde
    für ST-/FBS-Debugging
    Integrierte SPS

    Anwendung debuggen (BETA)
    Alternative: Selektieren Sie das Projekt im Projektexplorer oder selektieren Sie das Projekt, die Konfiguration, die Ressource oder die Programminstanz in der Sicht Instanzen. Dann klicken Sie auf  in der Symbolleiste. Beim ersten Start der Debugging-Sitzung (pro Arbeitsbereich) erscheint ein Dialog. Wählen Sie darin Arbeitsbereicheinstellungen überschreiben und aus der Liste der Startprogramme GDB (DSF) Create Process Startprogramm, danach drücken Sie OK

    Falls Warnungen mit Enablement expression im Fehlerprotokoll angezeigt werden, ignorieren Sie diese. Siehe "Warnungen 'Enablement expression' beim Debuggen einer Anwendung" für Details.

  2. Bestätigen Sie den Wechsel zur →Perspektive Debuggen (drücken Sie Ja).
    Diese Perspektive erlaubt Ihnen Einblicke in die Ausführung Ihrer auf die SPS geladenen Anwendung (z.B. aufgrund der Sicht Variablen). Falls Sie Sichten der Perspektive nicht sehen, aber benötigen, setzen Sie die Perspektive auf ihr ursprüngliches Layout zurück oder öffnen Sie die Sichten wie unter "Sichten/Editoren öffnen" beschrieben.
  3. Abhängig davon, welchen Code Sie für die Debugging-Sitzung verwenden, müssen Sie einen der folgenden Schritte ausführen:
    1. Für C-Debugging: Im Menü Ausführen wählen Sie Wieder aufnehmen. Alternative: Klicken Sie auf  in der Symbolleiste.
      Ergebnis: Die Anwendung wird bis zum gesetzten →Unterbrechungspunkt ausgeführt und dort angehalten.
    2. Für ST-/FBS-Debugging: Die Anwendung hat bereits beim gesetzten →Unterbrechungspunkt angehalten. In der Sicht Debuggen selektieren Sie das Element der Aufrufhierarchie, beim dem die Ausführung angehalten wurde.
      Beispiel: Bei dem Element handelt sich hier um: ST_lcpu___COUNTER() at program.iecst
  4. In der Sicht Variablen kontrollieren Sie die aktuellen Werte der Variablen. Beispiel für Anzeige:

    Bei Bedarf können Sie den Wert einer Variable ändern: Doppelklicken Sie auf den Wert, geben Sie den neuen Wert ein und drücken Sie die Eingabe-Taste.
  5. Bei Bedarf setzen Sie neue Unterbrechungspunkte im Code oder deaktivieren/überspringen Sie Unterbrechungspunkte – wie unter "Unterbrechungspunkt im Code setzen" beschrieben.
    In der Sicht Unterbrechungspunkte sind übrigens alle gesetzten Unterbrechungspunkte sichtbar. Beispiel für die Anzeige:

    Beide Unterbrechungspunkte sind aktiviert:

    Ein Unterbrechungspunkte ist aktiviert, der andere ist deaktiviert:

    Beide Unterbrechungspunkte werden übersprungen:

    Falls Unterbrechungspunkte auch von anderen Projekten angezeigt werden, können Sie den Inhalt der Sicht Unterbrechungspunkte filtern, indem Sie auf  (Vom ausgewählten Ziel unterstützte Unterbrechungspunkte anzeigen) klicken.

  6. Um die angehaltene Debugging-Sitzung wiederaufzunehmen, wählen Sie im Menü Ausführen wieder Wieder aufnehmen und kontrollieren Sie in der Sicht Variablen wieder die aktuellen Werte der Variablen.
Gut zu wissen

(grey lightbulb) Falls Sie eine eigene Anwendung mit zusätzlichen Deklarationen von →POE debuggen wollen, könnten die folgenden Befehle für die Schrittausführung relevant für Sie sein (ebenfalls im Menü Ausführen und in der Symbolleiste verfügbar):

Befehl
Ergebnis
Schritt hinein
Die Ausführung wechselt in den nächsten C-Funktionsaufruf oder Aufruf der POE hinein, der in der geraden ausgeführten Codezeile vorhanden ist.
Schritt über
Die Ausführung geht über den nächsten C-Funktionsaufruf oder Aufruf der POE hinweg (ohne hinein zu wechseln), der in der geraden ausgeführten Codezeile vorhanden ist.
Falls die Ausführung bei der letzten Codezeile angekommen ist, wird die Ausführung bis zum ersten Unterbrechungspunkt fortgesetzt.
Schritt zurück

Die Ausführung kehrt aus der C-Funktion oder POE zurück, in die hinein gewechselt wurde – und zwar zum ersten Unterbrechungspunkt.

Falls ein Unterbrechungspunkt während der Schrittausführung entdeckt wird, wird die Ausführung bei diesem Unterbrechungspunkt angehalten und die Schrittausführung beendet. In diesem Fall wird am Rand des Codes oder für das FBS-Element angezeigt.

Die Ausführung wird beim Debuggen möglichweise nicht bei jedem Unterbrechungspunkt angehalten, der für ein FBS-Element gesetzt wurde. Dieses Verhalten wird durch die Optimierung des C-Codes verursacht, der erst beim Speicherns der FBS-Logik erzeugt wird.

Beispiele für solche Unterbrechungspunkte, bei denen die Ausführung nicht angehalten wird:

  • Unterbrechungspunkt für ein Wertfeld, das dem Aufruf einer String-Funktion nachfolgt (z.B. dem Aufruf eines FIND-Bausteins)
  • Unterbrechungspunkt für ein Wertfeld, das dem Aufruf eines Systembausteins nachfolgt, bei dem Arrays mit 2 Dimensionen berechnet werden (z.B. dem Aufruf des SUB_2D_ARRAY-Bausteins)

(warning) Falls Sie die entsprechenden Tastenkombinationen für die Schrittausführung verwenden, halten Sie die Tasten nicht kontinuierlich oder für längere Zeit gedrückt. Falls doch, kann die Abarbeitung der Unterbrechungspunkte nicht korrekt visualisiert werden.


Weiter mit: Debugging beenden

  • No labels