我完成了arduino和处理的网络。
我在arduino中使用超声波传感器。
当我在arduino超声波传感器中保持足够接近时,处理从arduino获取信息。并处理加载音频文件。
这是一个大问题。处理加载速度不是很晚。
现在还不是很晚。但它并不像是在互动。
我想加速仅0.5秒。
有没有解决方案?这是我的代码。
ETC。我正在尝试许多不同的方式。例如,我试图按下按钮而不是超声波。但还是有问题。并尝试改变延迟。但它不能很好地运作
<arduino>
int led2=5;
int trigPin2 = 6;
int echoPin2 = 8;
int state;
int val,old_val;
int b=2;
int rate;
void setup()
{
Serial.begin(9600);
pinMode(trigPin2,OUTPUT);
pinMode(echoPin2,INPUT);
pinMode(led2, OUTPUT);
state,val,old_val=0;
}
void loop()
{
long duration, cm;
digitalWrite(trigPin2,HIGH);
delayMicroseconds(10);
digitalWrite(trigPin2,LOW);
duration = pulseIn(echoPin2,HIGH);
cm = microsecondsToCentimeters(duration);
rate=map(cm,5,200,0,30);
rate=constrain(rate,0,1);
val=rate;
if ((val == 1) && (old_val == 0)){
state = 1 - state;
Serial.println(b);///////////////////////////////////////////////////sound load
old_val = 1;
delay(10);
}
old_val = val;
if (state == 1){
digitalWrite(led2,LOW);
} else {
digitalWrite(led2, HIGH);
}
}
long microsecondsToInches(long microseconds)
{
return microseconds / 74 / 2;
}
long microsecondsToCentimeters(long microseconds)
{
return microseconds / 29 / 2;
}
<processing>
import ddf.minim.*;
import ddf.minim.signals.*;
import ddf.minim.analysis.*;
import ddf.minim.effects.*;
import processing.serial.*;
import ddf.minim.*;
Minim minim;
AudioPlayer a1;
AudioPlayer a2;
AudioPlayer a3;
AudioPlayer a4;
AudioPlayer mpcard;
//int dia = 0;
int val=0;
int red=0;
int green=0;
int blue=0;
Serial port;
//Serial port2;
color c;
String buffer = "";
String buffer2 = "";
void setup()
{
minim = new Minim(this);
a1=minim.loadFile("1.mp3");
a2=minim.loadFile("dd.mp3");
a3=minim.loadFile("3.mp3");
a4=minim.loadFile("4.mp3");
mpcard=minim.loadFile("card.mp3");
// a1.loop();
size(500, 500);
frameRate(200);
fill(255);
println(Serial.list());
String arduinoPort = Serial.list()[0];
port = new Serial(this, arduinoPort, 9600);
}
void draw()
{
int b;
background(red,green,blue);
// ellipse(255, 255, dia, dia);
b = port.read();
println(b);
if(b == 50) {
println(b);
a2.play(0);
}
else if(b != 2) {
println(1);
}
}
&#13;