INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Ws2812 Farbwechsel
28.10.2020, 20:18
Beitrag #1
Ws2812 Farbwechsel
Ich bin neu hier und würde mich über eine Antwort freuen.
Ich habe mir aus Beispiele was gebastelt.
Im Moment will ich alle LEDs langsam mit Farbe durchlaufen lassen.
Aber immer wenn Grün anfangt kommt einmal Rot und dann geht es erst weiter.
Kann mir jemand Hefen?
#include <FastLED.h>


#if defined(FASTLED_VERSION) && (FASTLED_VERSION < 3001000)
#warning "Requires FastLED 3.1 or later; check github for latest code."
#endif

#define DATA_PIN 6
//#define CLK_PIN 4
#define LED_TYPE WS2811
#define COLOR_ORDER GRB
#define NUM_LEDS 65
CRGB leds[NUM_LEDS];

#define BRIGHTNESS 96
#define FRAMES_PER_SECOND 120

void setup() {
delay(3000); // 3 second delay for recovery

// tell FastLED about the LED strip configuration
FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS); //.setCorrection(TypicalLEDStrip);
// set master brightness control
FastLED.setBrightness(BRIGHTNESS);
}


// List of patterns to cycle through. Each is defined as a separate function below.
typedef void (*SimplePatternList[])();
SimplePatternList gPatterns = { rainbow }; //start,, sinelon, rainbow,rainbowWithGlitter,juggle, sinelon, rainbowWithGlitter, confetti, rainbowWithGlitter, bpm

uint8_t gCurrentPatternNumber = 0; // Index number of which pattern is current
uint8_t gHue = 0; // rotating "base color" used by many of the patterns

void loop()
{
// Call the current pattern function once, updating the 'leds' array
gPatterns[gCurrentPatternNumber]();
// do some periodic updates
EVERY_N_MILLISECONDS( 400 ) { gHue++; } // slowly cycle the "base color" through the rainbow
EVERY_N_SECONDS( 600 ) { nextPattern(); } // change patterns periodically
}

#define ARRAY_SIZE(A) (sizeof(A) / sizeof((A)[0]))

void nextPattern()
{
// add one to the current pattern number, and wrap around at the end
gCurrentPatternNumber = (gCurrentPatternNumber + 1) % ARRAY_SIZE( gPatterns);
}
void start() {
// einzelne LED durschlauf

for(int j = 0; j < 2; j++) {
for(int i = 0 ; i < NUM_LEDS; i++ ) {
memset(leds, 0, NUM_LEDS * 3);
switch(j) {
case 0: leds[i].b = 255; leds[i].r = 155; leds[i].g = 255; break;
case 1: leds[i].b = 255; leds[i].r = 155; leds[i].g = 255; break;
case 2: leds[i].b = 255; leds[i].r = 155; leds[i].g = 255; break;
case 3: leds[i].b = 255; leds[i].r = 155; leds[i].g = 255; break;
case 4: leds[i].b = 255; leds[i].r = 155; leds[i].g = 255; break;
case 5: leds[i].b = 255; leds[i].r = 155; leds[i].g = 255; break;
}
FastLED.show();
delay(30);
}
}


// Farbe voll

memset(leds, 0, NUM_LEDS * 3);
for(int i = 0 ; i < NUM_LEDS; i++ ) {
leds[i].b = 0; leds[i].r = 255; leds[i].g = 0;

FastLED.show();
delay(30);
}

nextPattern();

}

void rainbow()
{
// FastLED's built-in rainbow generator
fill_rainbow( leds, NUM_LEDS, gHue, 0);
FastLED.show();
// insert a delay to keep the framerate modest
FastLED.delay(100/FRAMES_PER_SECOND);
}

void rainbowWithGlitter()
{
// built-in FastLED rainbow, plus some random sparkly glitter
rainbow();
addGlitter(80);
// send the 'leds' array out to the actual LED strip
FastLED.show();
// insert a delay to keep the framerate modest
FastLED.delay(1000/FRAMES_PER_SECOND);

}

void addGlitter( fract8 chanceOfGlitter)
{
if( random8() < chanceOfGlitter) {
leds[ random16(NUM_LEDS) ] += CRGB::White;
}
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.10.2020, 20:35
Beitrag #2
RE: Ws2812 Farbwechsel
Setze deinen Sketch bitte in Code-Tags, dann ist dieser von allen besser lesbar.
Wie das geht, steht hier.

Hast du dir die Beispiele der Library mal genauer angesehen, da ist sicher das dabei, was du suchst.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.10.2020, 20:44
Beitrag #3
RE: Ws2812 Farbwechsel
Ja habe ich. Dort habe ich sie ja her. Die Farben laufen original nur viel schneller durch, da fällt das nicht auf das da einmal Rot drin ist.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.10.2020, 21:41
Beitrag #4
RE: Ws2812 Farbwechsel
Servus!

Code:
#define COLOR_ORDER GRB

Wegen rot/grün liegt es sicherlich an dem #define.

Schau dir mal diese Seite & die Beispiele an.

Gruß aus Wiener Neustadt
Toni

=================================================================
Seit die Mathematiker über die Relativitätstheorie hergefallen sind, verstehe ich sie selbst nicht mehr.

Wer Rechtschreibfehler findet darf sie behalten Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.10.2020, 21:48
Beitrag #5
RE: Ws2812 Farbwechsel
Es läuft ja wunderbar. Es fängt bei rot an und wechselt ganz langsam die Farben. Bis es am Ende von gelb ist. Dann kommt ein mal alles rot und geht dann zu grün weiter. Alle Farben sind wunderbar bis auf ein Zyklus rot.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Lauftext mit WS2812, der über Seriellen Monitor eingegeben wird Bastian 3 732 12.05.2020 16:47
Letzter Beitrag: Tommy56
  Sketch für WS2812 klappt nicht ThorstenP 9 1.225 02.04.2020 14:50
Letzter Beitrag: ThorstenP
  Sketch Beispiel für WS2812 ThorstenP 5 732 23.03.2020 14:22
Letzter Beitrag: Tommy56
  Helligkeit drosseln bei WS2812 LED`s senseman 3 1.054 05.12.2019 09:11
Letzter Beitrag: senseman
  WS2812 Helligkeit Mannu 6 2.752 21.10.2018 22:34
Letzter Beitrag: Mannu
  900 WS2812 ansteuern b_mertke 6 2.174 31.08.2018 12:45
Letzter Beitrag: Hilgi
  Neuling kommt nicht weiter, ws2812 If abfragen Tabata 8 3.455 19.04.2018 14:07
Letzter Beitrag: Tommy56
  ws2812 lecker16 19 5.086 25.01.2017 08:13
Letzter Beitrag: renid55
  WS2812 Helligkeit einzelner LEDs steuern mavericklp 3 3.994 11.03.2016 09:32
Letzter Beitrag: torsten_156

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste