秋月のRS232Cラインモニタキットを
ワンダースワンに接続


■ はじめに ■
 秋月電子オリジナルのRS232Cラインモニタキットは、AVRワンチップマイコンを搭載したインテリジェントな物で、ホストコンピュータとはシリアルでコマンドのやりとりを行っています。
 付属しているモニタプログラムはVisualBasicで作成されているため、Windows上でしか動作しませんが、コマンドさえ正しく与えれば他のOSやコンピュータ上での動作も可能だろうと考えました。
 そこで目を付けたのがワンダースワンです。
 
 ワンダースワンはバンダイの携帯用ゲーム機ですが、最近発売された「ワンダーウィッチ」のカートリッジを装着することで、ユーザが個人レベルでプログラムを開発できるようになります。
 シリアルポートも装備していて、OSから簡単に使うことができるのでまさにうってつけです。

 ところが実際に接続しようと思って調べてみると、RS232Cラインモニタキットとホスト間の通信速度は115200bps/57600bpsであるのに対し、ワンダースワンのシリアルポートは9600bps/38400bpsしか設定できません。
 当然ながらこのままでは接続できないわけですが、都合の良いことにラインモニタ搭載のワンチップマイコンAT90S2313はフラッシュメモリ内蔵で、ライタを使えばプログラムの書き換えが可能です。
 このワンチップマイコンの内蔵プログラムにちょっと手を加えれば、ホスト間通信速度を115200bps/57600bpsから115200bps/38400bpsに変更することが可能ではないか?と思って試してみたところ、簡単な修正で変更することができました。

 あとはワンダースワン側のモニタプログラムを作成することで、非常に可搬性の高い計測器に仕上げることができました。
 同じ事をやってみようと思う奇特な人がどれだけ存在するかは分かりませんが、自分自身の為の記録という意味も含めて、以下に接続のための手順を記載しておきます。

 尚、これらの内容についてはその一切を保証しません。改造を含む全ての作業は自己責任において行うようにしてください。

■ 必要な物 ■
 以下の機材が必要となります。

■ワンダースワン
■ワンダーウィッチのカートリッジ
■ワンダーウィッチのPC接続ケーブル
■秋月電子通商オリジナルRS232Cラインモニタキット
秋月電子通商オリジナルAVRマイコンプログラマキット

 RS232Cラインモニタキット搭載のAVRを書き換えてしまうと、元に戻したいと思うときに面倒なので、AT90S2313-10を別個に用意したほうが良いと思います。一個400円ですから、キット購入時に一緒に買っておきましょう。

 この改造のためだけにAVRプログラマキットを購入するというのも無駄ですから、プログラム書き込み済みのAVRを配布できれば良いのですが、書き込むプログラムは秋月のオリジナルプログラムを改変したものなので、勝手に配布する事はできません。
 問い合わせて許可が貰えれば、改めて配布を検討することになると思います。

■ 作業手順 ■
■1.ラインモニタキット作製

 RS232Cラインモニタキットを作製します。半田付け箇所はそれほど多くないので、慎重に行えばそれほど難しくはないはずです。
 ホスト間通信速度はジャンパ線で設定するようになっていますが、ここを115200bps固定で配線してしまうとワンダースワンに接続することができなくなるため、オープンにしておくかジャンパピンを立てて選択できるようにしておきましょう。

■2.AVRプログラム修正

 ATMEL社のWebサイトよりAVR開発ツールAVR Studioの最新版をダウンロードしてPCにインストールします。
 RS232Cラインモニタキット付属CD-Rの中に入っているavr232_avr.zipを適当な場所に解凍して、その中のavrs232.aprプロジェクトをAVR Studioで開きます。

 私がやったときは何故かプロジェクトファイルを開いても中身が空の状態になってしまったので、同じような状態になった時はRs232_01.asmとRs232def.asmをAssembler Filesの下に、2313def.incをOther Filesの下にそれぞれAdd Fileしておきます。

 次にRs232_01.asmを右クリックしてメニューを出し、Assembler entry fileにチェックを付けておきます。


 F7を押してアセンブルが正常終了すればOKです。

 次にRs232def.asmを内蔵エディタで開き、325行目の

ldi Tp_main,0x09  ;  ; 57600bps=9
 を
ldi Tp_main,0x0E  ;  ; 38400bps=14
 に修正します。

 再びF7を押してアセンブルが正常終了すればOKです。

■3.AVRマイコンプログラマ作製

 RS232Cラインモニタよりも更に部品点数が少なく、組み立ては簡単に終わると思います。電源部分のコネクタが用意されていないので、ACアダプタを使用する場合はソケットが別個に必要です。買っておきましょう。

■4.AVRプログラム書き込み

 AVRマイコンプログラマに付属する書き込みソフトはAT90S2313未対応なので、アップデータをダウンロードする必要があります。ここからダウンロードしてください。
 アップデートが完了したら、AVR Studioから出力されたRs232_01.hexとRs232_01.eepファイルをAT90S2313に書き込みます。

■5.AVRプログラムのテスト

 RS232CラインモニタキットのAT90S2313を取り外し、新しくプログラムを書き込んだ物と交換します。足を曲げないように注意しましょう。
 PCとRS232CラインモニタキットのJ3端子をストレートケーブルで接続し、通信ソフト(HyperTerminal/TeraTermPro等)を起動します。通信ソフトのボーレート設定を38400bpsに設定して、キーボードの"V"(半角大文字)を押します。


 ←のようにバージョン番号が返ってくればOKです。


■6.ワンダースワンと接続

 ワンダースワンとPCは二本のケーブルを経由して接続しますが、RS232Cラインモニタと接続する場合は、PCに近い側のケーブル(リバースケーブル)は使用しません。
 ラインモニタのJ3端子にストレートケーブルを接続し、そのケーブルにPC接続用ケーブルの残り半分を接続します。接続の様子はこのページの頭にある写真を見てください。

 接続する前に↓にあるモニタプログラムをワンダーウィッチのカートリッジへ転送しておきましょう。
 

実行ファイルのダウンロード
 
 これで準備は全て完了です。ワンダーウィッチのランチャから、ラインモニタを起動してください。内蔵メモリ容量の関係で20480バイト分のデータしかモニタできませんが、正常に動作していれば↓のようにモニタしたデータを表示することができます。

 表示中のキー割り当ては、以下のようになっています。

 ◆UP1   (X1) - 1行スクロールダウン



 ◆DOWN1 (X3) - 1行スクロールアップ



 ◆UP2   (Y1) - 10行スクロールダウン



 ◆RIGHT2(Y2) - ログの最後を表示



 ◆DOWN2 (Y3) - 10行スクロールアップ



 ◆LEFT2 (Y4) - ログの先頭を表示



 ◆A          - 16進/ASCIIコード切替



 ◆B/START    - 表示モード終了



■ おわりに ■
 RS232Cラインモニタをワンダースワンに接続するという、当初の目標はとりあえず達成できたと思いますが、モニタプログラムはまだまだ改良の余地があります。
 なにしろ記録したログをファイルへ書き出すことはできても、それを利用することが今のところできないので、話になりません。
 テキストファイル形式でログを吐けるようにするか、あるいはログビューワなりコンバータなりを作成する事になると思いますが、もう少し先の話になりそうです。誰か作ってくれないかな(笑)。

 プログラムの不具合や、改善点の要望などありましたら↓の掲示板の方へ書き込んでください。確約はできませんが、できるかぎりは対応したいと思っています。
 

ワンダーウィッチ専用掲示板
WorldWideWonderWitchWorkbench


mailto:[tokoya][at][mars.dti.ne.jp]