ソースコードとシンボル情報でアセンブリ命令と関連する情報を表示。
双方を個別に表示、非表示を選択することができます。逆アセンブリでステップ実行におけるアセンブリ命令レベルでプログラムの実行追跡ができます。
変数の監視に利用されるウォッチウィンドウ。
ローカルウインドウ、現在の関数とローカル変数、パラメータを表示することができます。
グローバルウインドウでは、グローバル変数オートウインドウでは、コンテクストで重要な値を表示することができます。
コールスタックウィンドウでは、アプリケーションが停止時の機能とその呼び出し元が表示されます。各コールをダブルクリックして、コールの正確な位置情報を取得することが可能です。
EmbeddedStudioデバッガには、命令、関数、及びソース行のコードブレイクポイントと、メモリ内変数へアクセス時のデータブレイクポイントがあります。
単純なC言語表現でブレイクポイントを設定できます。例えば(x==4)という記述では、「x」がアクセスされ、その値が「4」の場合にブレイクポイントになります。
演算子として「<, <=, >, >=, ==. !=」が利用できます。また「&」を利用して複合的な要素を持たせることも可能です。さらに配列キャストを使用して、任意のメモリ範囲をブレイクポ イントに指定することも可能です。例として(char[256])(0x1000)という記述では、「0x1000–0x10FF」にアクセスされた際に、ブレイクポイントとなります。また「!」を利用して、逆にメモリ範囲から外れた場合にブレイクをかけるという指定も可能です。
「J-Link Unlimited Flash-BP」拡張機能を使うことで、ユーザはフラッシュメモリでデバッグするとき、無制限のブレークポイントを設定できます。この機能がないデバッガでは、フラッシュに設定できるブレークポイント数は、CPU のデバッグユニットでサポートされているハードウェアブレイクポイントの数に制限されます。(ARM 7/9 では2、Cortex-M では4-6)
プロジェクトでビルドした実行イメージファイルに加え、最大4つまでの実行アプリケーションイメージファイル(ELF/BIN/HEX/MOT)をユーザ指定し、ダウンロードできます。バイナリ形式データの場合は、ターゲットメモリ領域の指定アドレスにロードします。
追加でブートローダ又はハードウェア初期化ハンドラなど、別のプログラムをターゲットボードにダウンロードし、メインアプリケーションと同時にデバッグできます。
Embedded Studioのプロジェクトオプションダイアログから簡単なスクリプトでターゲットボードとのデバッガ接続はボード環境に合わせて設定可能です。
個別にコマンドスクリプト指定可能なイベント:
RTOSのスレッドが可能です。アプリケーションのタスクスレッドを表示できます。スレッドをダブルクリックすることで、利用しているレジスタとコールスタックを表示します。
SEGGER embOSとFreeRTOSをデフォルトサポート、未対応のRTOS情報はJavaScriptを利用して、表示対応することができます。
デバッグモードで利用するソースコードエディタ。アプリケーション停止位置の表示。ブレイクポイントマークをユーザは簡単に設定することができます。アプリケーション終了後はもちろん、デバッグ操作中にもソースコードを編集、修正が可能です。
デバッグ中にアプリケーションソースコードファイルのシンボルの上にマウスを移動すると、アプリケーション内のシンボルに関する情報を直接取得できます。右クリックのコンテキストメニューで多くの利便性の高いコマンドを実行できます。
デバッグターミナルに、printf()やRTTで出力されたアプリケーション結果が出力されます。ANSIエスケープシーケンスを使用し、出力されるテキストや背景色などを変更することができます。
Arm標準SWO, DCC及びセミホスティングに加えてEmbedded Studioは高速I/Oターミナル用RTTチャネルをサポートします。
■ RTTテクノロジー
J-Linkだけが実現する高速転送技術
高速・マイコン負荷の少ない独自データ取得・送信インターフェース
J-Link Debugger OZONE(オゾン)はSEGGER社製J-Link/J-Trace専用スタンドアロンデバッグソフトウェアです。
IDEの「Debug → Debug with Ozone (Alt + F5)」コマンドでOZONE(別ウインドウプログラム)を起動して、Embedded Studio でビルドしたプロジェクトをより詳しくデバッグ・トレース・診断可能です。ソースコードビューワ、逆アセンブリ表示ウインドウ、ブレイクポイント、シンボル監視ウィンドウ、CPUレジスタ、メモリウインドウ、RTOS認識デバッグ、高速I/Oターミナルなどの標準的な機能に加えて、より便利なデバッグ機能が備わっています。