update: 2015/04/18
reference:
1. Connecting Arduino to Processing
A. 說明:
在 Arduino 上, 設定當 9600 port 收到字元 'A' 時, 送出字元 'L',
而收到字元 'B' 時, 送出字元 'H'. 底下為 Mac 上 Processing 的處理方式.
-----------------------------------------------------------------------------------------------
B. 實作:
1. 開啟 Processing, 新增 Sketch 專案: arduino_hello2
2. 在 arduino_hello2 Sketch 專案編輯區, 寫入以下程式碼:
import processing.serial.*;
Serial port;
int lf = 10; // ASCII linefeed
char inChar;
boolean writeA = true;
void setup() {
//println(Serial.list());
size(400,200);
String arduinoPort = Serial.list()[2];
port = new Serial(this, arduinoPort, 9600);
port.bufferUntil(lf);
writeChar(writeA);
}
void draw() {
if(port.available()>0) {
// A ~ Z: http://www.asciitable.com/
if(inChar >= 65 && inChar <= 90) {
println("===> get char:\'"+inChar+"\' from port \n");
}
}
}
void serialEvent(Serial p) {
inChar = p.readChar();
writeA = !writeA;
writeChar(writeA);
}
void writeChar(boolean writeA) {
if(writeA)
{
port.write('A');
println("write char:\'A\' to port ....");
writeA = false;
}
else {
port.write('B');
println("write char:\'B\' to port ....");
writeA = true;
}
}
-----------------------------------------------------------------------------------------------
C. 執行結果:
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。