« USB-IO2.0再び | トップページ | ファイルの検索 »

2012年3月 2日 (金)

usbio2.exe完成

さて、昨日作ったコンソールアプリに、USB-IO2.0を制御するコードを追加していこう。
こんな仕様でどうだろう。

usbio2 <-switch[hex]>
switch
 -t : USB-IOが接続されているかを調査して値を返す。0=未接続,1=接続
 -p : USB-IOのPORTへの出力(hex=0x0000~0x0fff)
 -w : 指定された秒数だけ待つ

簡単なところで、時間待ちから取り掛かった。定番のやり方がありそうなものだが、VisiualBasicは初めてなので、よくわからない。
secLimit = hour*3600 + min*60 + sec + 待ち時間
として、本日の経過時間(秒)がsecLimitに達するまでループすることにした。
24:00をまたぐ時にバグるが、そんな時間に私の仕事はないので気にしない。

PORTへのデータ出力は、二つのPORTで分けようと思ったが、面倒だったので、p2=値の上位、p1=値の下位バイトとした。

USB-IOのP1の0-3PINにLEDを接続し、3秒間隔でLEDを順に点灯させるバッチファイルを記述するとこんな感じになる。
┌────────────
│@echo off
│usbio2 -t
│if errorlevel 1 goto ok
│:ng
│echo USB-IOを接続してから実行してね
│goto end

│:ok
│usbio2 -p0001
│usbio2 -t3
│usbio2 -p0002
│usbio2 -t3
│usbio2 -p0004
│usbio2 -t3
│usbio2 -p0008
│usbio2 -t3
│goto ok

│:end

いったんusbio2.exeを作ってしまえば、C言語からusbio2.exeを起動することでUSB-IOを制御できる。
USB-IO2.0に扇風機を接続すれば、パソコンから扇風機を回すことができる。電飾を点灯させることも、エアコンをONにするのも同じようにできる。

「usbio2.exe version 0.91」をダウンロード

入力はUSBゲームコントローラのスイッチ部分を引き出して作ればいいと思っているので、今のところ入力機能はない。
VisualBasicなんて使ったことがないし、USB-IO2.0を制御する部分はメーカーのソースをパクったのでソースなし。Releaseモードでコンパイルする方法もよくわからなかったし、もしかしたら実行にはランタイムが必要かもしれない。

« USB-IO2.0再び | トップページ | ファイルの検索 »

お仕事」カテゴリの記事

コメント

USB IO 2.0のカスタムアプリの開発を依頼したいのですが、お願いできるでしょうか?

お問い合わせありがとうございます。
ブラックな職場で働いているのですが、今ちょうど立て続けに三人倒れたところなので無理そうです。
くも膜下出血と、糖尿と、あと一人なんだっけ…。
ちなみに来年2月まで仕事が入っています。
今月24日の伊勢ギークフェアに来られるほどの地元企業様でしたら、お手伝いできるかもしれません。
可能であれば現地でお問い合わせください。

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: usbio2.exe完成:

« USB-IO2.0再び | トップページ | ファイルの検索 »

最近のトラックバック