デバッグ

リアルタイムで変数をサンプリングしてデバッグする方法

<span id="hs_cos_wrapper_name" class="hs_cos_wrapper hs_cos_wrapper_meta_field hs_cos_wrapper_type_text" style="" data-hs-cos-general-type="meta_field" data-hs-cos-type="text" >リアルタイムで変数をサンプリングしてデバッグする方法</span>
 

通常、デバッグ時に必要なのは、変数の経時的変化を観察してグラフ化することです。このためには、A/DコンバータやUSARTのように、常に変化するソースから得られた値を観察するのが有効です。

Sampled Graphを使用すれば、プログラムの実行を一時停止せずに、変数の経時的変化を観察しグラフ化することができます。エミュレータメニューから、Data Sample、Data Sample Setup、Sampled Graphsの3つのウィンドウを使用できます。

watch_and_graph_variables_1.png

特定の変数をサンプリングするには、その変数をソースファイルからData Sample Setupウィンドウへドラッグ&ドロップします。

 

Data Sampleウィンドウ内を右クリックしてEnableをクリックすると、データサンプルの収集が開始されます。次にSampled Graphsウィンドウのデータサンプルセクションを右クリックしてEnableをクリックすると、グラフ表示が開始されます。さらにデバッガのGoをクリックすると、リアルタイムでキャプチャされたデータが以下のように表示されます。

watch_and_graph_variables_2.pngwatch_and_graph_variables_3.png

ここに示したData Sample Setupウィンドウには、式または変数の名前、変数のアドレス、変数のサイズ(単位:バイト)、およびサンプリング間隔が表示されます。この図の場合、サンプリング間隔は約10msに固定されています。

Data Sampleウィンドウに表示されたデータをログファイルに保存するには、Data Sampleウィンドウ内を右クリックして"Save to log file ..."を選択し、希望の保存場所を表示してSaveをクリックします。ログファイルに保存したデータは、Microsoft Excelへインポートして処理することができます。

Sampled graphsは、IAR Embedded Workbenchを使用してさまざまなターゲットデバイスに使用できます。本稿に示した画像はIAR Embedded Workbench for RXから取ったものです。IAR Embedded Workbench for ARMを使用する場合は、Timelineウィンドウで同様の機能を使用できます。