/********** Proyecto **********
* Universidad Santiago de Cali
*
* Laboratorio 03: 8 LEDs en linea controlados mediante Processing
* Autor: Daniel López Huertas
* Descripcion:
* Mover un LED encendido de Izquierda a Derecha y viceversa controlando el tiempo de apagado y encendido con slider en processing.
* Conexiones:
* 8 LEDs + 8 resistencias a los pines 2 a 9
* Version: 2
*/
// Importamos las librerías de ControlP5 y Serial
import controlP5.*;
import processing.serial.*;
// Creamos las variables para ControlP5, el Slider y el puerto Serial
ControlP5 cp5; //se crea para ser utilizada en el resto del código.
Slider slider1; //se crea el primer slider.
int valor1; //se crea la variable valor1.
Slider slider2; //se crea el segundo slider.
int valor2; //se crea la variable valor2
Serial serial; //se crea el puerto serial.
// Solo se ejecuta una vez, al iniciar el Sketch
void setup() {
// Tamaño de la Ventana en pixiles, ancho y alto.
size(600, 240);
// Creamos el objeto de ControlP5
cp5 = new ControlP5(this);
// Creamos los dos objetos Slider1 y slider2
slider1 = cp5.addSlider("val1", 0, 255, 128, 40, 40, 300, 60);
//nombre,minimo,maximo,inicial,(40,40 esquina superior izquierda), (300,60 indica el ancho y alto respectivamente)
slider2 = cp5.addSlider("val2", 0, 255, 128, 40, 140, 300, 60);
// Creamos el objeto del puerto Serial
serial = new Serial(this, Serial.list()[0], 9600);
//[0]COM1
//[1]COM2. Se analiza el que puerto serial
//en el que esta conectado el arduino, luego
//se verifica el número de puerto al cual fue
//asignado y se coloca el número correspondiente.
}
// Se ejecuta N frames por segundo
void draw() {
// En este caso no debe dibujar nada
}
// Cuando ocurra un evento, aquí lo procesamos
void controlEvent(ControlEvent evento) {
// Obtenemos el nombre y el valor del evento1
if (evento.getController().getName() == "val1")
valor1 = int(evento.getController().getValue());
else // Obtenemos el nombre y el valor del evento2
valor2 = int(evento.getController().getValue());
// Envíamos valor1 y valor2 al Arduino a través del Serial
serial.write(valor1);
serial.write(valor2);
// Se Imprime en la consola, para ver que todo funcina bien.
println(valor1 + " " + valor2);
}