Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /*
  2. ********** Processing **********
  3.  * Laboratorio 09: Línea de 8 LEDs RGB 5050 conectado a un Arduino.
  4.  
  5.  * Descripción:
  6.  *   Controlar desde una interfaz en Processing, una línea de 8 LEDs RGB 5050
  7.  *   conectado a un Arduino. Nota: No alimente los +5V desde el Arduino.
  8. */
  9.  
  10. // Importamos las librerías de ControlP5 y Serial
  11. import controlP5.*;
  12. import processing.serial.*;
  13.  
  14. // Creamos las variables para ControlP5, el Slider y el puerto Serial
  15. ControlP5 cp5;
  16. Slider slider0;
  17. Slider slider1;
  18. Slider slider2;
  19. Serial serial;
  20.  
  21. // Solo se ejecuta una vez, al iniciar el Sketch
  22. void setup() {
  23.   // Tamaño de la Ventana
  24.   size(400, 400);
  25.   // Creamos el objeto de ControlP5
  26.   cp5 = new ControlP5(this);
  27.   // Creamos el objeto Slider  
  28.   //slider0 = cp5.addSlider("R", 0, 255, 128, 40, 100, 300, 40);
  29.   //slider0 = cp5.addSlider("CO", 0, 255, 128, 40, 120, 300, 40);
  30.   slider1 = cp5.addSlider("RGB", 0, 255, 128, 40, 120, 300, 40);
  31.   cp5.addButton("CO",1,40,180,300,40);
  32.   cp5.addButton("MULTI",1,40,240,300,40);
  33.   cp5.addButton("POLICE",1,40,300,300,40);
  34.   //slider2 = cp5.addSlider("B", 0, 255, 128, 40, 200, 300, 40);
  35.   fill(255,0,0);
  36.   textSize(30);
  37.   text(" \nControl CJMCU-2812-8",10,50);
  38.   // Creamos el objeto del puerto Serial
  39.  serial = new Serial(this, Serial.list()[0], 9600);
  40. }
  41.  
  42. // Se ejecuta N frames por segundo
  43. void draw() {
  44.   // En este caso no debe dibujar nada
  45. }
  46.  
  47. // Cuando ocurra un evento, aquí lo procesamos
  48. void controlEvent(ControlEvent evento) {
  49.   // Obtenemos el nombre y el valor del evento
  50.   String nombre = evento.getController().getName();
  51.   int valor = int(evento.getController().getValue());
  52.   // Envíamos el valor al Arduino a través del Serial
  53.   //serial.write(nombre + valor);
  54.   //serial.write(nombre+valor);
  55.   if(evento.getController().getName() == "CO"){
  56.    serial.write('A');
  57.    println('A');
  58.   }
  59.   if(evento.getController().getName() == "MULTI"){
  60.    serial.write('B');  
  61.    println('B');
  62.   }
  63.   if(evento.getController().getName() == "POLICE"){
  64.    serial.write('C');  
  65.    println('C');
  66.   }
  67.   if(evento.getController().getName() == "RGB"){
  68.    serial.write(valor);  
  69.    println(valor);
  70.   }
  71.   //println(nombre + valor);
  72.   delay(100);
  73.   // Imprimimos en la consola, para ver que todo va Ok
  74.   //println(valor);
  75. }