Sim's blog

電子工作はじめてみました

FR60付録基板 _fr.hのバージョン

2008-03-31 03:11:28 | その他のマイコン
FR60付録基板の48MHz水晶発振器の続きです。

InterfaceのFR60特設ページに2月号~4月号に連載されたFR60の解説記事がアップロードされています。太っ腹ですね。


FR60付録基板のサンプルを眺めていて気づいたことです。

CPU毎のI/Oの構造体を定義したヘッダファイルは_fr.hです。サンプルプログラムでもincludeしています。今回の無料開発版についてくるのはバージョン1.1です。
スタート → Softune V6 → Sample IO Register Files → FR Family Sample IO Register Files USERS MANUAL → MB91310 series Sample IO Register Files USERS MANUALで見れるioregj.txtにも第1.1版と書かれています。

_fr.hの使い方ですが、サンプルを見ているかぎりでは、(1)関連するファイルを全部コピーしてプロジェクトに追加する、(2)コンパイル済みのrelファイルをプロジェクトに追加する(スケルトンはこちら)、という2通りの方法が使われているようです。いずれにしろ手動でファイルをコピーしたりプロジェクトに追加しないといけません。他のメーカーだとそのあたりは自動でしてくれるのが多いような気もするんですが、そうはなっていないようです。Interface誌でもゼロからプロジェクトを作るみたいなのは書かれていなくて、既にあるスケルトンをコピーして使えみたいなことが書かれています(p.105)。ファイルのコピーやらインクルードパスの設定やら作業が色々あるので設定はたいへんそうです。その手の作業を一気に引き受けてくれるwizardとかあればいいのに、と思いました。

I/O定義ファイルですが、ヘッダとCの両方からできていて、ヘッダの方でunionやビットフィールド、マクロを定義して、Cの方で#pragmaを使って実際の番地を割り当てています。

そうたいしたことじゃないんですが、気づいたことは、サンプルで使用している_fr.hはバージョン1.0のものと1.1のものがまざっているようです。1.0と1.1の違いで大きそうなところは_io_mems.cがあるかないかです。あれば1.0で、なければ1.1です。例えばOSDサンプルのioというフォルダにコピーされている_fr.hは1.0です。ioregj.txtに第1.0版と書かれています。1.0のファイル数は69で1.1は68です。
一つ困るのは_fr.hそのものにバージョン番号が書かれていないことです。

とりあえず_io_mems.cがないとか怒られるときは1.1のio定義っぽいので、プロジェクトから_io_mems.cをはずすか、ダミーの_io_mems.cを作る(空ファイル)ことでエラーを回避できるみたいです。

今のところ、ゼロからプロジェクトを作るのは成功していません。素直にスケルトンをコピーする方がよさそうです。

最新の画像もっと見る

コメントを投稿