Skip to main content

プログラムの段階的な処理(ステップ)

コード内を移動しながら、アプリケーションを段階的に実行できます。これは、実行時にコードの状態を判断するのに役立ちます。コールフローを調べたり、変数値をトレースしたり、エラーを特定したりできます。

これはあなたがメニューに持っているものです デバッグ 使用可能なステップコマンド。オンライン中にブレークポイントを設定し、ブレークポイントで実行を停止すると、コマンドが使用可能になります。アプリケーションは状態にあります。 血圧を下げる (デバッグモード)。デバッグ中、現在の停止位置は黄色で強調表示され、テキストエディタでは記号で強調表示されます symbol_step_arrow.png マークされた。

手順. デバッグモードに切り替えます
  1. アプリケーションをコントローラーにロードします。

    アプリケーションは緑色でマークされています。 CODESYS プログラミングブロックのエディタはオンラインモードです。

    _cds_online_mode.png
  2. 調べたいコードの場所にあるプログラミングブロックにブレークポイントを設定します。

    ビューで ブレークポイント すべてリストされています。

  3. アプリケーションを起動します。

    アプリケーションが起動し、コードは最初のブレークポイントまで処理されます。

    これで、アプリケーションはデバッグモードになります。アプリケーションはデバイスツリーにあります [ブレークポイントで停止] マークされた。ステータス行には、動作ステータスに関する情報が表示されます。

    _cds_debug_mode.png

    現在の停止位置のエディタが開かれました。プログラムの実行が停止されたアクティブなブレークポイントのあるコード行は、背景が黄色で、アイコンでマークされています symbol_step_arrow.png マークされた。黄色でマークされたこのステートメントはまだ実行されていません。

    _cds_pou_in_debug_mode.png

    これで、さまざまなステップコマンドを選択したり、コールツリーを表示したりできます。

ヒント

または、最初にアプリケーションを起動してから、ブレークポイントを設定することもできます。

デバッグメニューのステップコマンドの動作

. デバッグメニューのステップコマンドの動作
  • 指図 icon_step_over.png 手順ステップ (「ステップオーバー」)

    ホールド位置のステートメントが実行されます。プログラミングブロックの次のステートメントの前に停止があります。

    ステートメントに(プログラム、関数ブロックインスタンス、関数、メソッド、またはアクションからの)呼び出しがある場合、従属プログラミングブロックは1つのステップで完全に実行されます。

  • 指図 icon_step_into.png 単一段階 (「ステップイン」)

    ホールド位置のステートメントが実行されます。次のステートメントの前に停止します。

    ステートメントに(プログラム、関数ブロックインスタンス、関数、メソッド、またはアクションからの)呼び出しがある場合、この従属プログラミングブロックにジャンプします。そこで最初の命令が実行され、次の命令の前に停止されます。新しい現在の停止位置は、呼び出されたプログラミングブロックにあります。

  • 指図 icon_step_out.png 実行して戻る ("踏みでる")

    このコマンドは、プログラミングブロックを現在の停止位置からブロックの終わりまで実行してから、呼び出し元のプログラミングブロックにジャンプして戻ります。通話のポイントで停止します(通話に沿って)。

    現在の停止位置がメインプログラムにある場合、プログラミングブロックは最後まで実行されます。次に、最初にジャンプして(プログラミングブロックのコードの最初の行にあるプログラムの最初に)、そこで停止します。

  • 指図 icon_run_to_cursor.png カーソルまで実行 (「カーソルまで実行」)

    最初にカーソルをコードの任意の行に置き、次にコマンドを選択します。プログラムは現在のブレークポイントから実行され、その行のコードを実行せずに現在のカーソル位置で停止します。

  • 指図 icon_set_next_statement.png 次のステートメントを設定 (「次のステートメントを設定」)

    最初に(現在の停止位置の前であっても)コードの任意の行にカーソルを置き、次にコマンドを選択します。次に、カーソルでマークされたステートメントが実行されます。間にあるすべてのステートメントは無視され、スキップされます。

  • 指図 icon_show_current_statement.png 次のステートメントを表示 (「次のステートメントを表示」)

    現在のホールド位置が表示されない場合は、コマンドを選択してください。次に、現在の停止位置のウィンドウがアクティブになり、停止位置が表示されます。

コマンドを選択します 表示→コールスタック、プログラム処理で現在到達している停止位置の以前の呼び出しツリーを完全に表示します。

ヒント

景色 コールスタック 常に表示されます。つまり、アプリケーションがコンパイル(コンパイル)される前に、ブロックはプログラムの呼び出し構造内にあります。