パソコンに入力したメッセージを小型ファンに表示する装置の製作 ―― XPortとリレーを使って簡単に製作できる

小野泰正

tag: 組み込み 電子回路

エレキ系DIY 2007年8月14日

コラム プログラムをXPortに書く

 プログラムはここからダウンロードしてください.

●パソコン側の準備としてtftpサーバを稼働させる

 まず,任意のフォルダにbootrom.romとxportfan.binを置きます.「Poor TFTPサーバ」を展開して任意のフォルダに置きます.pttp32.exeをダブル・クリックして[Select]ボタンを押し,bootrom.binとxportfan.binを置いたフォルダを指定します.これでパソコンからXPortのプログラムをダウンロードできます.tftpサーバの準備は以上で完了です.DeviceInstallerもインストールしておきます.

●プログラム書き込み

1,シリアル・ケーブルを介してブート用プログラムを書く

 作成した基板にメンテナンス用ケーブルとクロス・ケーブルを装着し,パソコンのシリアル・ポートと接続します(写真A)

p21.jpg
[写真A] メンテナンス用ケーブルを製作した基板に装着したようす

 XPortの保守ソフトウェアであるDeviceInstallerを起動して図Aの画面が出たら,図Bの「ファームウェアの修復」を呼び出します.図Cの画面にて使用するシリアル・ポート,XPort-03(X5/Higher),先ほど任意のフォルダに置いたbootrom.rom を指定して[OK]を押します.

 図DのようにDeviceInstallerの下部にPlease reset or power... と表示されます.ここで基板の電源を入れると,図Eのように書き込みが開始され,図Fのように終了します.開始されない場合は結線を確認します.書き込みが終わたら基板の電源を切ります.

z21.jpg
[図A] DeviceInstallerの起動画面

z22.jpg
[図B] ファームウェア修復の呼び出し

z23.jpg
[図C] 修復の設定

z24.jpg
[図D] 修復の開始

z25.jpg
[図E] 修復の途中

z26.jpg
[図F] 修復完了の画面

2,Ethernet経由でプログラムをダウンロードする

 Tera Term Proを起動して,シリアル・ポートを「9600bps/data8/no parity/stopbit1/no flow control」と設定します.また,写真BのようにEthernet接続の準備も済ませてから,製作した基板の電源を入れます.写真BではEthernetケーブルにクロス・ケーブルを使っていますが,HUBを使った接続でも構いません.「Press any key to interrupt autoboot ...」と表示されれば,8秒以内に[Enter]を押します.

[boot]: とプロンプトが出てくるので設定コマンドc を入力し,下記の各パラメータを設定します.

[boot]: c
Target IP Address [192.168.173.2/24] 192.168.1.200/24:
Gateway Address [0.0.0.0] :
Server IP Address [192.168.173.254] : 192.168.1.10
File Name [main.bin] : xportfan.bin
File Type (0:binary 1:srec) [0] :
Offset Address [0x200] :
Start Address [0x200] :
Auto Boot (0:disable 1:enable) [8] : 3
[boot]:

p22.jpg
[写真B] さらにEthernetに接続

1)パラメータ説明

 XPortのIPが192.168.1.200,パソコンのIPが192.168.1.10,サブネット・マスクは255.255.255.0だとします.サブネット・マスクが255.255.255.0 ならば24,サブネット・マスクが255.255.0.0ならば16と指定します.File Name にはxportfan.bin を指定します.Auto Bootの数は8なら8秒待ちを示します.今回は3秒待ちに変更しています.

 パラメータ入力が終わったら,いったん電源を切断します.電源を再投入するとEthernet経由でプログラムがダウンロードされます.

3,プログラムの起動確認

 下記のメッセージが出たら正常に起動しています.

Attaching network ... done
Loading `xportfan.bin` from 192.168.1.10 ... done
Starting at 0x200 ...

 DeviceInstallerで検索をかけて,XPortが認識されるかを確認できます.確認できたら本文の「●XPortの操作テスト」を実施します.

4,プログラムをXPortのフラッシュROMに書く

 XPortが各リレーを動かしているのが確認できたら,プログラムをXPortに保存します.基板の電源を切断し再投入します.コマンド「l」(小文字のエル)にてプログラムの読み込みを,「w」にて書き込みを行います.

[boot]: l
Attaching network ... doneLoading `xportfan.bin` from 192.168.1.10 ... done
[boot]: w
Writing ...
.......

.......
done
[boot]:

5,単独起動設定を行う

 File Nameに@flashと設定すると,フラッシュROMからの起動となります.

[boot]: c
Target IP Address [192.168.1.200/24] :
Gateway Address [0.0.0.0] :
Server IP Address [192.168.1.10] :
File Name [xportfan.bin] : @flash
File Type (0:binary 1:srec) [0] :
Offset Address [0x200] :
Start Address [0x200] :
Auto Boot (0:disable 1:enable) [3] :
[boot]:

 基板の電源を切ってパソコンのtftpサーバを終了させます.基板の電源を入れて起動を確認してください.

Loading `@flash` ... done
Starting at 0x200 ...

●余談

 このプログラムは,WebブラウザからXPort設定画面に入れます.ブラウザのアドレス欄にXPortのIPアドレスを入れると,ログイン画面が表示されます.IDに「XPortFAN」,Passwordなしと入力し,設定画面に入ってください.

●余談2

 実は,最初この装置を最初作った時,文字化けが発生しました.写真Cは本来,KUMIKOMI-NETと入力したのですが,稼働中,KUMIKMMI-NETと勝手に変わってしまいました.5V電源波形の問題と考え,図1のC6と図1および写真5のC7,C8のバイパス・コンデンサを追加したところ,文字化けが発生しなくなりました.

 また,回転部の土台となる部分には給電用のスプリングが入っています,この部分の押し込みが甘いと,やはり文字化けが確認されます.かといって押し込み過ぎると,スムーズに回転しなくなります.このあたりはファンのロットや固体で違う可能性がありますので,あくまで参考程度にしてください.

p23.jpg
[写真C] 文字化け発生!「KUMIKMMI-NET」になっている

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日