シリアル通信でProcessingからArduinoに信号を送る
Processingでマウスのx座標を取得して,その値をシリアル通信でArduinoに送り,LEDの明るさとして表示する. ArduinoのGRDとD13にLEDを接続する.
Processing
import processing.serial.*;
Serial serial;
void setup(){
size(500,200);
stroke(128);
strokeWeight(1);
serial = new Serial(this, "/dev/tty.usbmodem1411", 9600);
}
void draw(){
background(255);
line(mouseX, 0, mouseX, height);
serial.write(int(map(mouseX, 0, width, 0, 255)));
}
Arduino
int v = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if(Serial.available() > 0){
v = Serial.read();
}
int ms = map(v, 0, 255, 0, 10);
digitalWrite(13, HIGH);
delay(10 - ms);
digitalWrite(13, LOW);
delay(ms);
}
Arduino/signal_from_processing_to_arduino at master · aa-debdeb/Arduino