Keil Logo

Technical Support

On-Line Manuals

µVision4 User's Guide (Japanese)

µVision4 の概要 ユーザインタフェース アプリケーションの作成 ユーティリティ デバッグ デバッガの使用 シミュレーション デバッグの開始 アプリケーションプログラムの実行 デバッグのウィンドウおよびダイアログ [ブレークポイント](Breakpoints) [コードカバレッジ](Code Coverage) [レジスタ](Registers) [逆アセンブリ](Disassembly)ウィンドウ [ロジックアナライザ](Logic Analyzer) 設定 設定の詳細 制約 [メモリ](Memory)ウィンドウ [メモリマップ](Memory Map) [コマンド](Command)ウィンドウ デバッグコマンド 変数とレジスタ デバッグ関数 実行プロファイラ [パフォーマンスアナライザ](Performance Analyzer) シリアルウィンドウ [シンボル](Symbols)ウィンドウ [ツールボックス](Toolbox) [ウォッチ](Watch)ウィンドウ [コールスタック](Call Stack) [命令トレース](Instruction Trace)ウィンドウ システムビューア 定数 システム変数 ペリフェラル変数 I/O ポート シリアルポート プログラム変数(シンボル) 行番号 ビットアドレス 型指定子 演算子 µVision4 と C の相違点 式の例 ヒントとテクニック ペリフェラルと CPU 設定の確認 I/O ポートのシミュレート 割り込みとクロック入力のシミュレート 外部 I/O デバイスのシミュレート PC COM ポートへのシリアル I/O の割り当て 不正なメモリアクセスの確認 ファイルからのコマンド入力 事前設定 I/O ポートまたはメモリコンテンツ ファイルへのデバッグ出力の書き込み キーボードショートカット デバッグコマンド デバッグ関数 シミュレーション フラッシュプログラミング ダイアログ サンプルプログラム コマンドライン 付録

I/O ポート

µVision4 は、各 I/O ポートの VTREG を定義します(PORTA など)。これらの VTREG を各ポートのペリフェラルレジスタと混同しないで下さい(PIOA_OSR など)。ペリフェラルレジスタには、CPU メモリ空間内でアクセスできます。VTREG はピン上に存在するシグナルです。

µVision4 を使用すると、外部ハードウェアからの入力を簡単にシミュレートできます。ポートピンに流れるパルストレインがある場合、シグナル関数を使用してシグナルをシミュレートできます。例えば、次のシグナル関数は、1000Hz の周波数で PORTA ピン 0 上に方形波を入力します。

signal void one_thou_hz (void) {
  while (1) {                      /* repeat forever       */
    PORTA |= 1;                    /* set PORTA bit 0      */
    swatch (0.0005);               /* delay for .0005 secs */
    PORTA &= ~1;                   /* clear PORTA bit 0    */
    swatch (0.0005);               /* delay for .0005 secs */
  }                                /* repeat               */
}

次のコマンドによって、このシグナル関数が開始されます。

one_thou_hz ()

ユーザ関数とシグナル関数の詳細については、「デバッグ関数」を参照して下さい。

ポートピンからの出力に応答する外部ハードウェアのシミュレートが、若干難しくなりました。次の 2 つの手順が必要です。まず、µVision4 のユーザ関数またはシグナル関数を書き込み、目的の操作を実行します。次に、ユーザ関数を呼び出すブレークポイントを作成します。

出力ピン(PORTA ビット 0)を使用して LED を有効または無効にするとします。次のシグナル関数では、PORT2 VTREG を使用して CPU からの出力を確認し、[コマンド](Command)ウィンドウにメッセージを表示します。

signal void check_pA0 (void) {
  if (PORTA & 1)) {                            /* Test PORTA bit 0 */
    printf ("LED is ON\n"); }                  /* 1? LED is ON */
  else { /* 0? LED is OFF */
    printf ("LED is OFF\n"):
  }
}

ポート 1 に書き出すにはブレークポイントを追加する必要があります。次のコマンドラインは、PORT2 へのすべての書き出しのためのブレークポイントを追加します。

BS WRITE PORT2, 1, "check_p20 ()"

ターゲットプログラムが PORT2 に書き出すたびに、check_P20 関数が LED の現在のステータスを出力します。ブレークポイントの設定方法の詳細については、「ブレークポイント」を参照して下さい。

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.