Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /** Estudiante: Edwin Lobo Hernandez
  2.   * Profesor: Diego Marin
  3.   * Laboratorio 9
  4.   * Descripción del laboratorio: Crear una interfaz con proccessing que controle un modulo de 8 LED's RGB
  5. */
  6.  
  7. // Librería ControlP5
  8.  
  9. import controlP5.*;
  10. import processing.serial.*;
  11.  
  12. // Se Definen las variables necesarias
  13.  
  14. ControlP5 cp5;
  15. Serial serial;
  16.  
  17. // define las variables del texto, tipo Textlabel
  18.  
  19. Textlabel texto1, texto2;
  20. Textlabel texto5, texto6;
  21.  
  22. //****** Objetos ********//
  23.  
  24. // Areglos para las variables de cada color: rojo, verde, azul.
  25.  
  26. int[] red = new int[] {0, 0, 0, 0, 0, 0, 0, 0};  
  27. int[] green= new int[] {0, 0, 0, 0, 0, 0, 0, 0};
  28. int[] blue= new int[] {0, 0, 0, 0, 0, 0, 0, 0};
  29.  
  30. //**** variables*****//
  31.  
  32. int colorDeFondo = color (200,200,000);  
  33.  
  34. //***********configuracion*********************//
  35.  
  36. // Solo se ejecuta una vez, al iniciar el Sketch//
  37.  
  38. void setup() {
  39.  
  40.   size(800, 300); // tamaño de la ventana
  41.  
  42.    // crear el objeto ControlP5
  43.   cp5 = new ControlP5(this);
  44.  
  45.   // crear un botón para encender/apagar cada LED
  46.   // para el color rojo
  47.  
  48.   for (int i=0; i<red.length; i++)
  49.     cp5.addToggle("r"+i, 80+i*80, 80, 70, 40);
  50.  
  51.  // para el color verde
  52.  
  53.   for (int j=0; j<green.length; j++)
  54.     cp5.addToggle("g"+j, 80+j*80, 150, 70, 40);
  55.  
  56.  
  57.    // para el color azul
  58.  
  59.   for (int k=0; k<blue.length; k++)
  60.     cp5.addToggle("b"+k, 80+k*80, 220, 70, 40);
  61.    
  62.   // Creamos el objeto del puerto Serial
  63.    serial = new Serial(this, Serial.list()[0], 9600);
  64.    
  65.    // Se crea el texto principal
  66.    
  67. texto1 = cp5.addTextlabel("label")
  68.  
  69.  
  70.                     .setText("INTERRUPTORES DE LED's RGB")
  71.                     .setPosition(180,30)
  72.                     .setColorValue(0xfffffFFF)
  73.                     .setFont(createFont("Times new roman",20))
  74.                     ;
  75.  
  76. // crea texto indicativo
  77.  
  78. texto2 = cp5.addTextlabel("label1")
  79.  
  80.                     .setText("Pulsa los botones para encender o apagar")
  81.                     .setPosition(200,50)
  82.                     .setColorValue(0xffffffFF)
  83.                     .setFont(createFont("Times new roman",15))
  84.                     ;              
  85.  
  86. }
  87.  
  88. // se dibujar cada frame y se asigna el color de fondo
  89.  
  90. void draw()  
  91. {
  92.  {background(colorDeFondo);}
  93. }
  94.  
  95. // actua cuando ocurra un evento con los botones
  96.  
  97. void controlEvent(ControlEvent theEvent)
  98. {
  99.   // guardar el nombre y valor del evento
  100.   String nombre = theEvent.getController().getName();
  101.   int valor = int(theEvent.getController().getValue());
  102.  
  103.   println("evento: " + nombre + " / valor: "+valor);
  104.   //serial.write(nombre+valor);
  105.   println(nombre+valor);
  106.   serial.write(nombre+valor);
  107.  
  108.  
  109. }
  110.  
  111.  
  112.     // ****** Fin ***** //