Buenos días y lo primero muchas gracias por vuestro tiempo al leer esto.
Estoy haciendo una cosilla en casa para reyes y los peques de la casa, con arduino y proccesing, la verdad esque es la primera vez que me meto con estos temas y soy bastante novato
Lo que quiero hacer es lo siguiente, que al pulsar un botón desde arduino mande el dato a procesing y este según las veces que se haya pulsado el botón, reproduzca una canción u otra hasta un limite de 3.
El codigo en processing de momento solo tiene la opción de 2 canciones, si lo ejecuto solo funciona correctamente me reproduce una u otra, pero en el momento de meter arduino de por medio me las reproduce las 2 a la vez independientemente de que pulse el botón o no.
Dejo el codigo de procesing que uso, para arduino he mirado tutoriales y cargo el standartfirmdata, ¿Puede estar ahí el problema?
//Primero importamos standartfirmdata en arduino, en teoria deberia funcionar con el standartfirmdata que viene con la libreria de arduino para procesing.
//Importación de los modulos, modulo de arduino y modulo de sonidoimport processing.serial.;
import cc.arduino.;
import ddf.minim.*;//Definimos el arduino
Arduino arduini;//Definimos la reproducción de audio y la clase para contener las pistas
AudioPlayer player;
Minim minim;//Definimos pistas de audio
AudioPlayer pistaBote1A;
AudioPlayer pistaBote2A;// Constantes no cambian:
int bote1Pin = 2; // Pin donde esta el pulsador conectado
// Variables que se modifican:
// Contadores para las veces que se pulsa cada boton
int pulsador1contador = 0;
// Estado actual del boton
int pulsador1Estado = 0;
// Estado anterior del boton
int ultimoEstadoPulsador1 = 0;void setup() {
size(200, 200);
arduini = new Arduino(this, Arduino.list()[0], 57600);
arduini.pinMode(bote1Pin, Arduino.INPUT);
minim = new Minim(this);
pistaBote1A = minim.loadFile("recuerdo1_mezcla.mp3");
pistaBote2A = minim.loadFile("recuerdo2B_mezcla.mp3");;
}void draw()
{
//Comparamos el estado con el anterior para ver si a cambiado
pulsador1Estado = arduini.digitalRead(bote1Pin);
if (pulsador1Estado != ultimoEstadoPulsador1)
{
pulsador1contador++;
}
//Segun cuantas veces se ha pulsado el boton reproduce una cancion u otra hay que revisar el contador, puede ser que sea solo con impares 1/3/5 de hecho es bastante probable
if (pulsador1contador == 1)
{
pistaBote1A.play();
}
if (pulsador1contador == 2){
pistaBote2A.play();
}
// if pulsador1contador == 3{
//pistaBote1C.play();
//}}
La verdad que como ya he dicho soy bastante novato y no tengo mucha idea de por donde puede estar el error y seguro que es una tonteria ...
Muchas gracias por adelantado por cualquier consejo u ayuda y felices fiestas