簡単ファイルシステム評価ボード ALFATを使ってみよう! 其の七 [ALFAT]
※注意!
これからこのブログを書きながら最終的なハードウエアデバック、アプリケーションソフトウエアの構築に入ります。なので、写真や文章と実際の製品では異なる部分が出る可能性が有ります。その点をご了承下さい。
動作確認編4
前回まではシリアル通信のプログラミングを行い、ALFATのコマンドラインインタフェースへアクセスする野望への第一歩を踏み出しました。
今回はH8のI2C機能を有効とし、ALFATとの簡単な通信を行って、ALFATチップにファームウエアのインストールまでを行ってみたいと思います。
ALFATはH8に外付けされる周辺機能デバイスなので、H8とALFAT間で幾つかの信号線を接続する必要が有ります。具体的には
ルネサスにはH8のI2Cの使い方のアプリケーションノートが公開されていますので、これを参考にしてください。
IOポート等の初期化完了後、I2Cバスを有効にする初期化を行い、H8をI2CバスマスタにしてALFATに対してアクセスして行きます。この時、ALFATのデバイスIDは0xA4となります。
初期状態のALFATチップにはブートローダーのみ書かれておりファームウエアは書かれていないので、まず初期化済みのSD/MMCカードに、ルートディレクトリにファームウエアのファイルだけを入れた状態で用意しておきます。 ALFATチップのファームウエアはGHI社のサイトからダウンロードしてください。
電源を落とした状態で上記SD/MMCカードをソケットに挿し、電源を投入し、デバックモニタにALFATのコマンドラインインタフェースを中継するのみのプログラムを転送し、GOコマンドで実行させます。以下がその時のログです。途中は省いています。
L Top Address=E800 End Address=F881 : G BL ←ブートローダーの起動。実際には表示されていない LQUA ←HTERMのコンソールからタイプしたファームウエアをロードするコマンド W00 ←読み込み開始 W01 ・ ・ ・ W92 W93 ER 00 ←正常終了 R ←HTERMのコンソールからタイプしたファームウエアの実行コマンド GHI Electronics, LLC ---------------------- ALFAT(TM) 3.18 ←ファームウエアバージョンの表示 Z:>A: ←HTERMのコンソールからタイプしたドライブの切り替え A:>LF ←DIRコマンドと同じ(List Fileの略?) ALFATFWR.GHI 0x00012630 75312 ←ファームウエアファイル A:SD/MMCカードのドライブ番号はAドライブとなります。ユーザーインタフェースは、省略形式のDOSコマンドイメージです。簡単なコマンドだけなので、すぐに使えるようになります。
今回使用したmainプログラムの一部
/*SCI3の初期化 38400bpsに設定する。*/ SCI3Init( 15 ); /*I2Cの初期化*/ I2CInit(); /*ALFATのリセット*/ cmd_w( alfat_reset ); /*BOOT LOADERの起動待ち*/ do { I2CMasterGetc( ALFAT_ADR, &rcv_data );} while( rcv_data != 'B' ); do { I2CMasterGetc( ALFAT_ADR, &rcv_data );} while( rcv_data != 'L' ); while( 1 ) { if( (c = SCI3Getc()) != EOF ) { if( c == '\r' ) SCI3Puts( "\r\n" ); else SCI3Putc( c ); I2CMasterPutc( ALFAT_ADR, c ); } if( DATA_RDY == 0 ) { while( DATA_RDY == 0 ) { I2CMasterGetc( ALFAT_ADR, &rcv_data ); SCI3Putc( rcv_data ); if( rcv_data == '\r' ) SCI3Putc( '\n' ); } I2CMasterGetc( ALFAT_ADR, &rcv_data ); SCI3Putc( rcv_data ); } }
2006-10-04 14:08
nice!(0)
コメント(0)
トラックバック(0)
コメント 0