CRIANDO CODIGO PARA LEITORA DE 2 SENSORES NAS PORTAS ANALOGICAS 0 e 1
void setup(){
Serial.begin(9600);
}
void loop(){
int luz = analogRead(0); // faz a leitura da porta analogica 0
int luz2 = analogRead(1);
Serial.print(luz); //imprime o valor do sensor de luz
Serial.println(","); //imprime a virgula final e pula uma linha
}
ADAPTAÇÃO DO CODIGO ANTIGO (VIA TECLADO) PARA O PROCESSING
import processing.serial.*; //importa a biblioteca de comunicao serial
Serial pArduino; //cria uma nova porta serial chamada pArduino
import ddf.minim.*;
Minim minim;
AudioSample som1;
AudioSample som2;
AudioSample nosound; // definindo uma variavel para uma pausa
float luz;
float luz2;
void setup() {
size(800,600,P2D); //cria uma janela de 500 x 500
noStroke(); //desenhos sem contornos
minim = new Minim(this);
som1 = minim.loadSample("som1.mp3", 2048);
som2 = minim.loadSample("som5.mp3", 2048);
nosound = minim.loadSample("nosound.mp3", 2048);
println(Serial.list()); //imprime no console output do processing as portas disponíveis
String nomePorta = Serial.list()[1]; //pega a porta numero 0 em nomePorta
pArduino = new Serial(this, nomePorta,9600); //cria uma conexao serial a 19200, mesma velocidade configurada no arduino, no pArduino criado la em cima
pArduino.bufferUntil('\n'); // define quando uma mensagem é nova, no caso quando é pula linha
}
void draw() {
background(0); //limpa o background
//rect(width/2, height/2, luz*20, luz*20); // desenha uma quadrado na posicao definida pelo sensor de luz, e o tamanho do quadrado definido pelo sensor IR
//rect(width/2, height/2, luz2/25, luz2/25);
}
void serialEvent(Serial pArduino) {
String myString = pArduino.readStringUntil('\n'); // le a mensagem na porta serial ate chegar o fim de linha definido com pula linha \n
myString = trim(myString);
int sensors[] = int(split(myString, ',')); //quebra a mensagem lida na porta serial nas virgulas!!!!!!
for (int sensorNum = 0;
sensorNum < sensors.length;
sensorNum++) {
print("Sensor " + sensorNum + ": " + sensors[sensorNum] + "\t");
}
if (luz == 0) {
som1.trigger();
} else {
nosound.trigger();
// som2.trigger();
}
if (luz2 == 0) {
som2.trigger();
} else {
nosound.trigger();
// som2.trigger();
}
luz = sensors[0]; //atualiza a variavel luz com valores lidos na porta serial
luz2 = sensors[1];
}
Publicado por Alessandro de Paula e Fabiane Roberta Siqueira
Nenhum comentário:
Postar um comentário