2007年06月05日

Arduino

Flashとセンサーをつなぐ(windows)

センサーといっても、扱いやすい可変抵抗でやってみる。
sens.jpg

ソースのダウンロード

必要なの物
arduino
ブレッドボード
ブレットボード用ジャンプワイヤー(自作でもよい)
・可変抵抗(適当なものでよい)

回路は、5VとGndを可変抵抗の端につないで、
入力用のAnalog in2ポートを、可変抵抗の真ん中の端子に接続するだけでよい。

arduinoソース

int potPin = 2;

void setup() {
  Serial.begin(9600);
}

void loop() {
  int val = analogRead(potPin);
  sendNumToFlash(val);
  delay(50);
}

// Flashに対して、数値を送信する
void sendNumToFlash (int n) {
  Serial.print(n);
  printByte(0);
}

アナログをデジタルに変換するのに、
analogRead()関数をつかう
その後、sendNumToFlash()でFlashに数値を送る。
sendNumToFlash()では、xmlSocket送信なので、数値の後に

printByte(0);

をつける必要がある。

Flash上では、onReceiveDataで数値を受け取ればよいだけ。
以下Flashのソース

import Arduino;

// 環境に合わせて、ポートを設定する。
// COM1:5331、COM2:5332、COM3:5333、COM4:5334、COM5:5335、COM6:5336
var port:Number = 5334;

var arduino:Arduino = new Arduino(port);

listenObj = new Object();

// データを受信
listenObj.onReceiveData = function(evtObj:Object){
	var msg = evtObj.data
	trace(msg)
}

// リスナー登録
arduino.addEventListener("onReceiveData", listenObj);

可変抵抗を回せば、Flashで値の変化が読み取れる。