Saltar la navegación

Proyectos Neopixel 0 A, B y C (introducción)

Neopixel 0A
Se rellena de golpe. Cambia cada 10 segundos de color. Solo 3 colores básicos.
Tres colores basicos (rojo, verde y azul), colores concretos que luego modificaremos, que van cambiando entre ellos con un tiempo determinados de cambio.
Así mismo cambia de un led a otro con un tiempo concreto.
Va rellenando una sola tira de leds con los tres colores básicos, primero: rojo, después verde y más tarde  azul. 
Se puedes modificar un delay (orden de espera de pasar de un color a otro). Que marca el tiempo entre el tiempo de encendido de leds.

//enciende led a led toda la tira y luego va cambiando de color (R, G y B) todos los leds desde el final hasta el principio. repite el proceso
 
#include <Adafruit_NeoPixel.h>
 
#define PIN 2   // Pin 2 arduino a pin entrada neopíxels
 
#define NUMPIXELS      8 // número de neopixels de la tira
 
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
 
int delaychangecolor= 1500;//delay una vez iluminada la tira 
int redColor = 0;
int greenColor = 0;
int blueColor = 0;
 
void setup() {
  // Inicializa la libreria NeoPixel
  pixels.begin();
}
 
void loop() {
 
  delay(delaychangecolor);
 
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(255, 0, 0));//RED
    // envia el color Rojo a los píxels.
    pixels.show();
    
  }
  
  delay(delaychangecolor);//delay una vez iluminada la tira
 
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0,255,0));//GREEN
    // Manda verde a los leds.
    pixels.show();
    
  }
  
  delay(delaychangecolor);
  
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0,0,255));//BLUE
 
    //  Manda azul a los leds..
    pixels.show();
 
  }
  
}

Neopixel 0B
Se va rellenando la tira conforme el led va avanzando
Ahora vamos a cambiar la aparición de las luces de los leds de forma que lo hagan uno después de otro.
Configurando un segundo delay entre led y led.

//enciende led a led toda la tira y luego va cambiando de color (R, G y B) todos los leds desde el final hasta el principio. repite el proceso
 
#include <Adafruit_NeoPixel.h>
 
#define PIN 2   // Pin 2 arduino a pin entrada neopíxels
 
#define NUMPIXELS      8 // número de neopixels de la tira
 
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
 
int delayval = 500; // delay en milisegundos píxel a píxel
int delaychangecolor= 1500;//delay una vez iluminada la tira 
int redColor = 0;
int greenColor = 0;
int blueColor = 0;
 
void setup() {
  // Inicializa la libreria NeoPixel
  pixels.begin();
}
 
void loop() {
delay(delaychangecolor);
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(255, 0, 0));//RED
    // envia el color Rojo a los píxels.
    pixels.show();
 
    // Delay entre píxels(milisegundos).
    delay(delayval);
  }
  delay(delaychangecolor);//delay una vez iluminada la tira
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0,255,0));//GREEN
    // Manda verde a los leds.
    pixels.show();
 
    // Delay entre píxels (milisegundos).
    delay(delayval);
  }
  delay(delaychangecolor);
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0,0,255));
 
    //  Manda azul a los leds..
    pixels.show();
 
    // Delay entre píxels (milisegundos).
    delay(delayval);
  }
  
}

Neopixel 0C

Tres colores concretos que van cambiando entre ellos con tiempos determinados de cambio y entre los leds.
Va rellenando DOS TIRAS de leds, primero con los tres colores básicos: rojo, después con verde y más tarde con azul. 
Se puedes modificar dos delay. Uno que marca el tiempo entre leds y otro que marca el tiempo de cambio de color.
Así mismo se pueden mofifficar los colores que queremos que aparezcan, cambiando ....

Ojo! Mirar en el esquema como se conectan las dos tiras, no puede ser de cualquier manera!

//enciende led a led toda la tira y luego va cambiando de color (R, G y B) todos los leds desde el final hasta el principio. repite el proceso
 
#include <Adafruit_NeoPixel.h>
 
#define PIN 2   // Pin 2 arduino a pin entrada neopíxels
 
#define NUMPIXELS      16 // número de neopixels de la tira
 
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
 
int delayval = 300; // delay en milisegundos píxel a píxel
int delaychangecolor= 1500;//delay una vez iluminada la tira 
int redColor = 0;
int greenColor = 0;
int blueColor = 0;
 
void setup() {
  // Inicializa la libreria NeoPixel
  pixels.begin();
}
 
void loop() {
delay(delaychangecolor);
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(255, 0, 0));//RED
    // envia el color Rojo a los píxels.
    pixels.show();
 
    // Delay entre píxels(milisegundos).
    delay(delayval);
  }
  delay(delaychangecolor);//delay una vez iluminada la tira
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0,255,0));//GREEN
    // Manda verde a los leds.
    pixels.show();
 
    // Delay entre píxels (milisegundos).
    delay(delayval);
  }
  delay(delaychangecolor);
  for (int i=0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0,0,255));
 
    //  Manda azul a los leds..
    pixels.show();
 
    // Delay entre píxels (milisegundos).
    delay(delayval);
  }
  
}