atuline / FastLED-Demos

Here's my updated FastLED demos from January, 2017.
GNU General Public License v3.0
611 stars 174 forks source link

Adding two libraries #11

Closed LedArts closed 7 years ago

LedArts commented 7 years ago

Please tell me. Can we merge a program of fast led and adafruit neo pixal in one single program. I try but lost of errors occur. sir can u give me any example.

LedArts commented 7 years ago

i am trying this examples but only one effect is running.

include

include "FastLED.h"

define PIN 6

define NUM_LEDS 50

// Parameter 1 = number of pixels in strip // Parameter 2 = pin number (most are valid) // Parameter 3 = pixel type flags, add together as needed: // NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs) // NEO_KHZ400 400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers) // NEO_GRB Pixels are wired for GRB bitstream (most NeoPixel products) // NEO_RGB Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2) Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ400);

// Define the array of leds CRGB leds[NUM_LEDS];

void setup() { FastLED.addLeds<WS2811, PIN, GRB>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip ); strip.begin(); strip.show(); // Initialize all pixels to 'off'

}

// REPLACE FROM HERE void loop() {

colorWipe(0x00,0xff,0x00, 50); colorWipe(0x00,0x00,0x00, 50); delay(50); Sparkle(0xff, 0xff, 0xff, 0); Sparkle(0xff, 0, 0xff, 0); delay(50); }

void colorWipe(byte red, byte green, byte blue, int SpeedDelay) { for(uint16_t i=0; i<NUM_LEDS; i++) { setPixel(i, red, green, blue); showStrip(); delay(SpeedDelay); } } // REPLACE TO HERE

void Sparkle(byte red, byte green, byte blue, int SpeedDelay) { int Pixel = random(NUM_LEDS); setPixel(Pixel,red,green,blue); showStrip(); delay(SpeedDelay); setPixel(Pixel,0,0,0); }

void showStrip() {

ifdef ADAFRUIT_NEOPIXEL_H

// NeoPixel strip.show();

endif

ifndef ADAFRUIT_NEOPIXEL_H

// FastLED FastLED.show();

endif

}

void setPixel(int Pixel, byte red, byte green, byte blue) {

ifdef ADAFRUIT_NEOPIXEL_H

// NeoPixel strip.setPixelColor(Pixel, strip.Color(red, green, blue));

endif

ifndef ADAFRUIT_NEOPIXEL_H

// FastLED leds[Pixel].r = red; leds[Pixel].g = green; leds[Pixel].b = blue;

endif

}

void setAll(byte red, byte green, byte blue) { for(int i = 0; i < NUM_LEDS; i++ ) { setPixel(i, red, green, blue); } showStrip(); }

atuline commented 7 years ago

I would not recommend attempting to combine Adafruit and FastLED in a single program. They will probably conflict. My recommendation is for you to learn the code and to convert the routines you like to the library of your choice.

LedArts commented 7 years ago

ok thank you sir actually i start my program from adafruit but due to less effects i want to add fast led also now i have to restart from fast led program.