Keil Logo

rwatch

概要
void rwatch (
  unsigned long address);   /* address to watch */
説明

rwatch デバッガ関数は、指定アドレスが読み出されるまでデバッガシグナル関数を遅延させます。この関数が遅延する間、ターゲットプログラムは実行を継続します。この関数は、外部ハードウェアをシミュレーションするシグナル関数を作成するときに便利です。

rwatch デバッガ関数は、ターゲットプログラムによってアドレスが実際に読み出される前に戻ります。これにより、シグナル関数は読み出し要求を中断し、実際に読み出される前にメモリの内容を変更できます。

  • アドレスが特殊機能レジスタ(SFR)またはペリフェラルレジスタを参照する場合、反復読み出しが発生することがあります。シグナル関数がこれを無視するようあらかじめ設定しておく必要があります。
  • rwatch デバッガ関数は、シグナル関数内部からのみ呼び出されます。rwatch 関数をシグナル関数外部から呼び出すことはできず、呼び出した場合、エラーメッセージが表示されます。
戻り値

なし。

関連項目

wwatch

signal void read_trigger (unsigned long adr) {
  unsigned char val;

  printf ("Track read accesses to address 0x%X\n", adr);

  while (1) {
    rwatch (adr);
    val = getint ("Input Value for Read Trigger");
    _WBYTE (adr, val);       //  update value
  }
}

次の呼び出しは、上のシグナル関数を開始します。この関数は var が読み出されるたびに値を入力するよう求めます。

> read_trigger (&var);
  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.