document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /********** Proyecto **********
  2.  * Universidad Santiago de Cali
  3.  *
  4.  * Laboratorio 03: 8 LEDs en linea controlados mediante Processing
  5.  * Autor: Daniel López Huertas
  6.  * Descripcion:
  7.  * Mover un LED encendido de Izquierda a Derecha y viceversa controlando el tiempo de apagado y encendido con slider en processing.
  8.  * Conexiones:
  9.  * 8 LEDs + 8 resistencias a los pines 2 a 9
  10.  * Version: 2
  11.  */
  12.  
  13. /********** Constantes **********/
  14. #define TOTLED   8 // Se definene 8 LEDs en Total.
  15.  
  16. // Conectamos los LED´s mediante un arreglo.
  17. int led[TOTLED] = {2, 3, 4, 5, 6, 7, 8, 9};
  18. // Se inicializan  en cero las variales que guardan los valores que se reciben via serial desde la interfaz de Processing
  19. int valor1 = 0;
  20. int valor2 = 0;
  21.  
  22. // Solo se ejecuta una vez, al iniciar o resetear el Arduino
  23. void setup() {
  24.   // La comunicacion serial sera a 9600 baudios
  25.   Serial.begin(9600);
  26.   // El pin 9 será el pin de salida. se asigna un ciclo para inicializar cada uno de los LED´s en modo OUTPUT.
  27.   for (int i=0;i<TOTLED;i++)
  28.     pinMode(led[i], OUTPUT);
  29. }
  30.  
  31. // Ciclo infinito de ejecucion
  32. void loop() {
  33.   for (int i=0;i<TOTLED;i++){
  34.     // Si hay datos disponibles en el puerto serial, se asignan a las variables "valor1" y "valor2" respectivamente.
  35.     if (Serial.available() > 0) {
  36.       // Leer el valor
  37.       valor1 = Serial.read();
  38.       valor2 = Serial.read();
  39.     }
  40.     // Cambiar la intensidad de iluminacion del LED y el tiempo de desplazamiento.
  41.     digitalWrite(led[i], HIGH);
  42.     delay(valor1);
  43.     digitalWrite(led[i], LOW);
  44.     delay(valor2);
  45.    
  46.     // para presentar en la consola los resultados que se toman de las variables.
  47.     Serial.print(valor1);
  48.     Serial.print(" ");
  49.     Serial.println(valor2);
  50.  
  51.   }  
  52. }
  53.  
  54. /************Funciones*************/
');