import controlP5.*; // utilizar la libreria controlp5
import processing.serial.*; // utilizar la liberia processing.serial
ControlP5 cp5; // definir la variable cp5 del tipo ControlP5
Slider slider1; // definir la variable slider1 del tipo Slider
Slider slider2; // definir la variable slider2 del tipo Slider
Serial serial; // definir la variable serial del tipo Serial
Textlabel texto1, texto2, texto3, texto4; // definir las variables texto del tipo Textlabel
Textlabel texto5, texto6;
// configuraciĆ³n inicial
void setup()
{
serial = new Serial(this, Serial.list()[0],9600); // inicializamos el puerto serial a 9600 baudios
String puerto = Serial.list()[0]; //definimos la variable puerto de tipo cadena
size(750,330); // tamaƱo de la ventana
cp5 = new ControlP5(this); // crear el objeto ControlP5
// crear el Slider para el tiempo encendido
slider1 = cp5.addSlider("O",0,1000,500,40,150,300,40);
slider1.setColor(new CColor(0xFF00FF00,0xFF555555,0xFF009F00,0xFFFFFFFF,0xFFFFFFFF));
slider1.setLabelVisible(false);
// crear el Slider para el tiempo apagado
slider2 = cp5.addSlider("F",0,1000,500,400,150,300,40);
slider2.setColor(new CColor(0xFF00FF00,0xFF555555,0xFF009F00,0xFFFFFFFF,0xFFFFFFFF));
slider2.setLabelVisible(false);
// crear texto
texto1 = cp5.addTextlabel("label")
.setText("CONTROL DE LEDS")
.setPosition(210,50)
.setColorValue(0xffffffFF)
.setFont(createFont("Comic Sans MS",30))
;
// crear texto
texto2 = cp5.addTextlabel("label1")
.setText("TIEMPO ENCENDIDO (ms)")
.setPosition(90,120)
.setColorValue(0xffffffFF)
.setFont(createFont("Comic Sans MS",15))
;
// crear texto
texto3 = cp5.addTextlabel("label2")
.setText("TIEMPO APAGADO (ms)")
.setPosition(460,120)
.setColorValue(0xffffffFF)
.setFont(createFont("Comic Sans MS",15))
;
// otra forma de crear texto
texto4 = new Textlabel(cp5,"Estudiante: Andres Felipe Sinisterra",40,230,600,200);
texto4.setFont(createFont("MV Boli",15));
texto5 = new Textlabel(cp5,"Ingenieria Electronica",40,250,600,200);
texto5.setFont(createFont("MV Boli",15));
texto6 = new Textlabel(cp5,"Decimo semestre",40,270,600,200);
texto6.setFont(createFont("MV Boli",15));
}
void draw()
{
background(50,30,100); // color de fondo de la ventana
texto4.draw(this); // introduce el texto en la ventana
texto5.draw(this);
texto6.draw(this);
}
void controlEvent (ControlEvent evento) // se activa cuando ocurra un evento con los botones
{
String nombre = evento.getController().getName(); // recoje el nombre del slider y lo convierte en cadena
int valor = int(evento.getController().getValue()); // recoje el valor del slider y lo convierte en entero
serial.write(nombre + ":" + valor); // envia por el puerto serial el nombre y el valor
println(nombre + ":" + valor); // imprime por pantalla el nombre y el valor
}