適用先: ULINK USB-JTAG Debugger
この記事に含まれている情報の適用先:
- ULINK USB-JTAG Adapter
- ULINK2 USB-JTAG Adapter
- uVision V3.10 以降
- Keil Development Suite for ARM V2.00 以降
質問
Phytec phyCORE LPC2294 プロトタイプ ボードを使用して、オフチップ RAM 内のコードをデバッグしています。この RAM の開始領域はアドレス 0x81000000 以降であり、プログラム コードはすべて、この領域に配置されています。
Keil ARM Suite V1.5(以前)では、次のデバッグ初期化ファイル([Project]→[Options]→[Use ULINK]→[Initialization File:] の XRAM.INI で指定)を使用して、正常に処理されていました。
// XRAM.INI: Initialization File for off-chip RAM execution
//*** <<< Use Configuration Wizard in Context Menu >>> ***
FUNC void Setup (void) {
// Program Entry Point
PC = 0x81000000;
// MEMMAP: Interrupt Vector maps to: <0=> Boot Block
// <1=> On-Chip Flash
// <2=> Static RAM
// <3=> External Memory
(LPC2292/2294 only)
_WDWORD(0xE01FC040, 0x00000002); // MEMMAP
_WDWORD(0xFFE00004, 0x20003CE3); // BCFG1: RAM BUS Configuration
_WDWORD(0xE002C014, 0x0E6049E4); // PINSEL2
}
Setup(); // Setup for Running
LOAD XRAMDebug INCREMENTAL // Download
g,main // Run to main
テスト プログラムは正常に起動していましたが、起動に失敗するようになり、手動リセットを発行して、手動で起動する必要があります。
何が原因でしょうか?
回答
µVision V3.10 以降では、[Project]→[Options]→[Use ULINK]→[Settings] に起動設定オプションが追加されました。[Misc Option]→[Use Reset at Startup] が有効になっていることを確認してください。 [Use Reset at Startup] を無効にすると、デバッガを起動して、CPU リセットを伴わずにプログラム実行を停止できます。この機能は、アプリケーションの実行が停止して、その時点までに、何が起こったのかを確認する必要がある場合に便利です。
詳細
- ULINK User's Guide の Debug を参照してください。
- Getting Started User's Guide for ARM
関連項目
- ULINK: RESET BEHAVIOUR ON PHILIPS LPC2000 DEVICES