Hallo,
ich hätte da mal ein Problem und zwar will ich mit den Arduino Nano RGB LEDs mit WS2812 Chip steuern. Um das Programm kurz zu halten habe ich mir eine Klasse mit der entsprechende Funktion erstellt. Der Compiler selber erkennt bei den Code keinen Fehler und so lässt sich der Code auch ohne Problem auf den Arduino drauf spielen, doch leider passiert denn nichts. Mein alternativer Code ohne Klasse mit derselben Pin-Belegung funktioniert ohne Problem.
Ich hatte vorher auch schon Problem wo ich erst das Array erstellt habe und anschließend befüllen wollte, deshalb ist das als Kommentar ausgegraut.
Wenn einer hier eine Idee hätte wo der Fehler liegt, würde ich mich freuen, da es mir hierbei das Problem an sich geht.
Ich sage schon mal danke und wünsche euch allen hier ein schönes Restwochenende.
Mfg
#include <Adafruit_NeoPixel.h>
#define PIN 6
#define NUMPIXELS 7
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
class farbe
{
private:
int a;
int b;
int c;
public:
farbe (int aa, int bb, int cc) : a(aa), b(bb), c(cc) {}
void setfarbe ( )
{
pixels.begin();
pixels.setPixelColor(0,pixels.Color (a, b, c));
pixels.setPixelColor(1,pixels.Color (a, b, c));
pixels.setPixelColor(2,pixels.Color (a, b, c));
pixels.setPixelColor(3,pixels.Color (a, b, c));
pixels.setPixelColor(4,pixels.Color (a, b, c));
pixels.setPixelColor(5,pixels.Color (a, b, c));
pixels.setPixelColor(6,pixels.Color (a, b, c));
pixels.show();
}
};
void setup() {
int time = 3000;
farbe a[3] = {{255, 0, 0}, {255,165, 0}, {255,255, 0} };
/*
farbe a[7];
a[0] = (255, 0, 0);
a[1] = (255,165, 0);
a[2] = (255,255, 0);
a[3] = (127,255, 0);
a[4] = ( 0,191,255);
a[5] = ( 75, 0,130);
a[6] = (238,130,238);
*/
for (int i = 0; i++ ; i < 7)
{
a*.setfarbe ();*
-
delay (time);*
-
}*
}
void loop() { -
// put your main code here, to run repeatedly:*
}
[/td]
[/tr]
[/table]