1.内容
秋月電子通商で販売されている,ネットワークの利用が可能な「AKI-H8/3069F」とMacromediaFlashを使って,FLASHでH8を操作してみようという企画です.で,核となるのはやはりネットワークを用いるという部分です.「AKI-H8/3069F」は,みついわゆきお氏が開発を進めているH8/OSやMESといったH8上で動作するOSを利用することで,簡単にネットワークプログラミングが可能となっています.H8に載せるプログラムによってUDP・TCP通信はもちろん,webサーバやDHCPサーバのプログラミングができるようになっています.
ところで,なぜFlashを用いるのか?,VBなどを使ってプログラミングしてもよいのでは?という疑問が出てきます.これは,Flashの特徴も生かした上で実現しようという試みだからです.Flashは,ブラウザ(もちろんFlashPlayerプラグイン導入済みのもの)があれば実行が可能であるという汎用性の高さと,簡単にインタラクティブ・ダイナミックなインタフェースを作ることができるという特徴があります.加えて,webで主に利用されているFlashがハードウェアであるH8を,ネットワークを介して簡単に操作できる…という点で,今までにあまり無かった試みではないかという考えも含まれているからです.
まぁ,個人的には楽しめるかなぁという位置づけになっているので,展望としては一般家電を簡易的なネットワーク家電製品化,家でできるインタラクティブなユーザインタフェースでハードウェア操作などなどがあります.
2.必要なもの
この内容を進めるには,「AKI-H8/3069F」相当品とMacromediaFlashが必要です.これが無いと,何もできません.ですが,FlashではなくVBやVC++などでも,H8に信号は送ることができるのでH8側のプログラミングで参考になるかもしれません.
3.Flashプログラミング
H8と通信するためには,何らかの方法でFlashコンテンツとH8を接続する必要があります.この接続を実現するために,XMLSocketクラスを利用しSocketを利用したプログラミングを行います.
では,フレームアクションとして次のコードを入力し,XMLSocketオブジェクトを作成します.なお,_globalは省略しても構いません.
_level0.sock = new XMLSocket();
つづいて,XMLSocketオブジェクトのイベントハンドラを作成します.
sock.onConnect = _onSockConnect;
sock.onClose = _onSockClose;
sock.onData = _onSockData;
//切断された時の処理
function _onSockClose() {
_level0.app.frmH8_screen.SendMessage("プライマリH8によって切断されました。");
_global.connection_flag = 0;
}
//H8に接続できた時の処理
function _onSockConnect(success) {
trace("接続処理関数");
if (success) {
trace("接続処理成功");
_level0.app.frmH8_screen.SendMessage("プライマリH8に接続できました。");
System.useCodepage = true;
FMES = "test";
//テキストを送信
sock.send(FMES);
_global.connection_flag = 1;
}
else {
trace("接続処理失敗");
_level0.app.frmH8_screen.SendMessage("プライマリH8に接続できませんでした。");
}
}
//H8からデータを受信した時の処理
function _onSockData(strData){
trace("受信しました---"+strData);
}
続く・・・
[ b a c k ]