P4:TimerW アクセスルーチンの ROM 化
昨日に引き続いて TimerW アクセスルーチンを ROM化。測定した周期の読み出しは
func_tbl[GetPeriodW](0)
なのだが、print の引数に
func_tbl[GetPeriodW]
と書いてしまって、アドレスが返ってきてしまい一瞬あせる。すぐにアドレスが返っていると気づいて事なきを得たが、気がつかなければかなりハマるところだった。
-----
「関数のポインタの配列へのポインタ」の値を読み出す部分だが、気になったので見直しをかけて、結局以下の形にした。
#define func_tbl_ptr (*(int (***)(int))0x5800)
もう何がなんだか...。ちなみに、
#define func_tbl_ptr (*(int (**[])(int))0x5800)
は、読み出した値を代入するところで形が合わないとワーニングになった。
-----
今日はここで時間切れ。明日は LCD アクセスルーチンの ROM化だ。
func_tbl[GetPeriodW](0)
なのだが、print の引数に
func_tbl[GetPeriodW]
と書いてしまって、アドレスが返ってきてしまい一瞬あせる。すぐにアドレスが返っていると気づいて事なきを得たが、気がつかなければかなりハマるところだった。
-----
「関数のポインタの配列へのポインタ」の値を読み出す部分だが、気になったので見直しをかけて、結局以下の形にした。
#define func_tbl_ptr (*(int (***)(int))0x5800)
もう何がなんだか...。ちなみに、
#define func_tbl_ptr (*(int (**[])(int))0x5800)
は、読み出した値を代入するところで形が合わないとワーニングになった。
-----
今日はここで時間切れ。明日は LCD アクセスルーチンの ROM化だ。
トラックバック(0)
このブログ記事を参照しているブログ一覧: P4:TimerW アクセスルーチンの ROM 化
このブログ記事に対するトラックバックURL: http://www.co-mind.info/cgi-bin/mt/mt-tb.cgi/1128