如题,事实上我想要做到和processing串连,类似按下按钮会呈现某种画面的效果。
而一开始Processing会有初始画面
我有两个按钮A和B。
当A被按下"一次"时,会传送Serial.write(1),
而processing收到讯号1后,会"一直"停留在画面a;
同理,当B被按下一次时,会传送Serial.write(2),
processing收到讯号2后,才会从原本的画面a改呈现并停留在画面b,
而今天我想要做的是,当A和B按钮都有一段时间没有被按下时,
processing会再回到初始画面。
附上程式原档:
Arduino部分
int buttonPinA =1;
int buttonPinB =2;
void setup(){
pinMode(buttonPinA, INPUT);
pinMode(buttonPinB, INPUT);
Serial.begin(9600);
}
void loop(){
if(digitalRead(buttonPinA)==HIGH && digitalRead(buttonPinB)==LOW){
Serial.write(1);
delay(100);
}
else if(digitalRead(buttonPinB)==HIGH && digitalRead(buttonPinA==LOW){
Serial.write(2);
delay(100);
}
}
Processing部分
import processing.serial.*;
Serial port;
PImage img_a;
PImage img_b;
int val=0;
void setup(){
size(400,400);
img_a=loadImage("a.jpg");
img_b=loadImage("b.jpg");
port= new Serial(this,"/dev/cu.usbmodem1451", 9600);
}
void draw(){
background(255);
if(0<port.available()){
val=port.read();
}
if(val==1){
image(img_a,0,0);
}
else if(val==2){
image(img_b,0,0);
}
}
再麻烦专业人士鞭策我这位苦恼的初学者,尝试用了一些时间的参数还是无解@@
谢谢!