|

在Mac中接收Arduino經SerialCOM傳來資訊轉發到socket給flash接收
MAC範例下載: link (在config設定檔中設定的tty應改成cu,例如serial_device1=/dev/cu.usbserial-A9007KyX)
Windows 範例教學連結:link
Sample Config file for MAC:
# Config file for serproxy
# See serproxy's README file for documentation
# Transform newlines coming from the serial port into nils
# true (e.g. if using Flash) or false
newlines_to_nils=false
# on a mac you will need to add this 更換你的arduino裝置在mac中的路徑
# on a mac you will need to add this
#serial_device1=/dev/tty.BT-GPS-3475FF-BT-GPSCOM
#serial_device2=/dev/tty.G-Rays2-SPPslave
serial_device1=/dev/cu.usbserial-A9007KyX
#注意 是cu不是tty
# Comm ports used
comm_ports=1,2,3,4
#comm_ports=tty.BT-GPS-3475FF-BT-GPSCOM
# Default settings
comm_baud=9600
comm_databits=8
comm_stopbits=1
comm_parity=none
# Idle time out in seconds
timeout=300
# Port 1 settings (ttyS0)
net_port1=5331
# Port 2 settings (ttyS1)
net_port2=5332
# Port 3 settings (ttyS2)
net_port3=5333
# Port 4 settings (ttyS3)
net_port4=5334
AS3:
var sensorData:String = "";
var arduino:SerialPort = new SerialPort();
arduino.addEventListener(DataEvent.DATA, onArduinoData );
arduino.connect( "127.0.0.1", 5331 );
function onArduinoData( event:DataEvent ):void
{
trace( "onArduinoData", event.data );
sensorData = sensorData + event.data;
if (sensorData.indexOf("\n") > 0 ) {
// process sensor data
}
}
AS2:
var processData = function(datain:Object) {
var str:String = datain.data
var sensors:Array = str.split(",");
trace("sensor 3 = " + sensors[3]);
quad1._x = sensors[3];
quad1._y = sensors[4];
}
var processRFID = function(datain:Object) {
var str:String = datain.data
trace("Tag id = " + str);
}
var arduino:SerialPort = new SerialPort(5331);
arduino.addEventListener("onReceiveData",processData); //gets called every time data is received
var rfid:SerialPort = new SerialPort(5332);
rfid.addEventListener("onReceiveData",processRFID); //gets called every time data is received
Reference: http://www.arduino.cc/playground/Interfacing/Flash
|