ターゲットFlashへ既にオブジェクトファイルがロードされている状態で、μVisionデバッガをターゲットへ接続しデバッグしたい場合、MDK-ARMは、μVisionデバッガ起動時に ターゲットへオブジェクトファイルをロードせずに 、デバッガへオブジェクトファイルをロードすることができます。
µVision は指定されたファイルの内容を解析してファイルタイプを判断します(ファイルタイプを判断できない場合は、エラーメッセージが表示されます)。 以下のファイルタイプがサポートされています。
- アブソリュートオブジェクトファイル または ELF/DWARF ファイル :
リンカ/ロケータにより作成されます。デバッグ情報で変換されている場合、これらのファイルには、完全なシンボルのデバッグ情報、タイプ情報、および行番号が含まれます。 - Intel HEX ファイル :
オブジェクトから Hex へのコンバータプログラムにより作成されます。これらのファイルには、シンボルのデバッグ情報、タイプ情報、および行番号情報が含まれていません。プログラムテストは、CPU 命令レベルでのみサポートされます。ソースレベルとシンボルのデバッグはサポートされません。
LOAD コマンドには、使用しているターゲットに応じて変わるいくつかの オプション があります。
- INCREMENTAL は、既存のシンボルテーブルにデバッグ情報を追加します。これにより複数アプリケーションのデバッグが可能になります。
- NOCODE では、シンボル情報のみをロードし、コードレコードを無視します。NOCODE を指定すると既存のプログラムコードの上書きを防止できます。このオプションを指定する場合は、モニタ(MON51、MON251、または MON166)の CPU ドライバをあらかじめロードしておく必要があります。
- NORESET (一部のターゲットのみに対して使用可能)を指定すると、プログラムのロード後に RESET シグナルの生成を防止できます。このオプションのないターゲットには、代わりに実質的に同じ処理を実行する INCREMENTAL オプションを使用します。
以下に、デバッガへHEXファイルをロードする例を示します:
[1] まず、オブジェクトファイルをロードせず、uVisionデバッガをターゲットボードへ接続します
- お客様の使用環境に合わせて、ターゲットとデバッガを接続してください。
- uVisionを起動し、Options for Target - Debugタブ上で、使用するアダプタを選択し、[Setting]ボタンをクリックしてください。
- Cortex-M Target Driver Setup を開き、Debugタブ上で、ターゲットとの接続が見えていることを確認してください。
- 以下のチェックを外してください:
- Options for Target - Debugタブ上で、 Load Application at Startup のチェックを外す。 - これにより、デバッガ接続時にデバッガへアプリケーションをロードしません。
- Options for Target - Utilityesタブ上で、 Update Target before Debugging のチェックを外す。 - これにより、デバッグ前にターゲット(Flash)へ.axfファイルをロードしません。
[2] 続いて、デバッガへ任意のHEXファイルをロードします。
- uVisionデバッガとターゲットの接続ができたら、デバッガ上のCommand Window で Loadコマンド を実行します。
LOAD C:my pathfilename.hex
LOADコマンドのオプションについては、以下ドキュメントをご確認ください:
https://developer.arm.com/documentation/101407/0540/Debug-Commands/LOAD
LOAD command has several options