« GW明けから早速 | トップページ | ちょっと方針転換 »

2008年5月17日 (土曜日)

USBマウス対応サンプルのソースコードをデバッグしてみたかったが・・・

前回、来週は「時間が取れそう」とか書きながら全然時間が取れませんで、あっという間に週末になってしまいました。
ようやくちょっとだけ時間が取れたので6月号の発売に合わせて公開されたUSBマウス対応サンプルプログラムの続きです。

一通り、処理内容のイメージはつかめたので、今回はじゃぁ、SOFTUNEの練習も兼ねて、デバッグできる状態にして、USBマウスがつながった時の様子を見てみようと思い立ちました。ついでにUSBマウス以外のHID機器をつないだらどーなるんだろう?という素朴な疑問を解消する為にUSBゲームパッドを繋いでみようかなと。

でもその思惑は実現しませんでした。

まず、インターフェース5月号の開発ツールの操作方法を頼りにUSBマウス対応サンプルのプロジェクトに対してデバッグを有効にする設定が必要なはずです。ということで、5月号のサンプルにあるUSE_MODFR60を#defineした際に実行されるコードをそのまま移植してみます。
具体的には

#include "modFR60.h"
extern void mod_uart_init( void ) ;
extern void mod_timer_init( void ) ;
・・・
mod_uart_init();
mod_timer_init();
・・・
__asm( " int #10");

の6行になります。最初の3行はsample_demo.cの冒頭、残りの3行はmain)関数の冒頭にそれぞれ記述してビルドを試すもエラー。まぁ、その辺は大体想像していたのであせらずエラーメッセージを見ると、「modFR60.h」が見つからないとの事。それじゃぁ、とInclude Filesに直接セットするもNG、SOFTUNEの「依存関係の更新」を実行するもNG。

しばらく迷走したあと、今回のサンプルのワークスペースやらCのソースのあるCQFRKFR60_DEMOフォルダでなく、一つ階層が上のApplicationフォルダに配置して[依存関係の更新]を実行すると通った!とかいいながら今度は「_fr.h」が見つからないとの事。

5月号のサンプルのワークスペースと照らし合わせてみると、「_fr.h」はSOFTUNEインストールフォルダの「C:\Softune6\lib\911\include\sample\MB91310」配下のファイルを[依存関係の更新]で参照しているっぽい。どーやったらSOFTUNEのフォルダを参照してくれるんすか?ビルドパスの設定ってどこじゃー!と憤慨しながらしょうがないのでこれもApplicationフォルダにコピー。他のインクルードファイルもこれで無理やりコピーして、ようやく依存関係は解消。

でもビルドが通らない(「外部シンボルが定義されていません」の嵐)。めげずにさらに5月号のサンプルと見比べて、存在していないrelファイルを登録したらとりあえずそのメッセージは消え、新たなメッセージが

*** W1307L: セクション名が重複しています (INTVECT)
*** W1308L: セクション配置が重複しています (INTVECT, INTVECT)
*** W1371L: RAM領域外への配置です (IO_T2DRR)
・・・以後、ひたすら「RAM領域外への配置です」

「#pragma section INTVECT~」あたりの記述が何か悪そうなのは分かるが具体的にどう悪いのかがよく分からん。ググってみると別のモジュールに重複したものがあるとNGっぽいので明らかに重複しているものは排除したが解消しきれない。むりやりコメントにすればとりあえずこのメッセージは出ないがそれで動かなくても困るしなー。これはちょっと保留状態。

「RAM領域外への配置」もググってひっかかったページでは「#pragma section INTVECT~」の記述の仕方がまずいよ~的な感じなんだが、どーもピンとこない。つーことでこっちも保留状態

今回、唯一収穫となったのは上記のページに「C++の行コメントをC言語のソースでも有効にする方法」が載っていたということ。具体的な手順は

  1. [プロジェクト]→[プロジェクトの設定]を選択
  2. [C/C++コンパイラ]タブの[カテゴリ]から[言語仕様]を選択
  3. [言語仕様]の一覧の[C言語ソースで//以降をコメントとする]にチェックをつける

となっている。Javaにどっぷりはまっちゃってるんでこれは結構大事だよ、うん。

ということでまだデバッグ実行は出来ていません。実現するにも先が長そう・・・。デバッグでなくてコンソールに直接出力でお茶を濁そうかね・・・。前にも書きましたがインターフェースさん、誌面でなくてブログ上でもいいのでもうちょっとSOFTUNE関係の内容、あるいはポインタを充実させてください。「フレッシャーズ特別企画」とは言うもののこれじゃぁあんまりです。USB関係の記事は確かに役に立つんですが・・・。別冊ムックでもいいですよ~買いますよ~。

|

« GW明けから早速 | トップページ | ちょっと方針転換 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/2790/41239048

この記事へのトラックバック一覧です: USBマウス対応サンプルのソースコードをデバッグしてみたかったが・・・:

« GW明けから早速 | トップページ | ちょっと方針転換 »