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 mit UNO WiFi R3 ATmega328P ESP8266 Modul
12.04.2019, 15:08 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2019 15:09 von exGeebot.)
Beitrag #1
WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
Hey,

ich habe mir vor kurzem eine 8x8 64 LED Matrix WS2812 LED 5050 RGB Tafel besorgt sowie ein UNO WiFi R3 ATmega328P ESP8266 Modul.

Nachdem ich Ground - DataPin - 5V auf dem ESP sowie an die Matrix angeschlossen habe, habe ich mir im Arduino IDE das passende Board sowie Adafruit heruntergeladen....

In einem Neopixel Sketch habe ich dann bei den Variablen einmal meine PIN (in meinem Falle 6) und die Anzahl der LEDs (in meinem Falle 64) angegeben...

Jedoch leuchtet die LED Matrix nicht und ich bin echt langsam am Verzweifeln... Ich habe daraufhin überprüft ob die Spannung am OUT der Matrix erkennbar ist und der zeigte mir die 5V an...

Woran könnte es liegen?

Vielen Dank!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 15:29
Beitrag #2
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
64 RGB-LED brauchen an 5V: 64*3*20 mA = 3,84 A.
Da brauchst Du ein entsprechendes leistungsfähiges externes Netzteil.
Außerdem ist 3,3V unterhalb der Spezifikation für den HIGH-Pegel der LED. Das kann funktionieren, muss es aber nicht.
Im Normalfall brauchst Du dazu einen Levelshifter, z.B. ein Gatter vom SN74LS245.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 16:59
Beitrag #3
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
(12.04.2019 15:29)Tommy56 schrieb:  64 RGB-LED brauchen an 5V: 64*3*20 mA = 3,84 A.
Da brauchst Du ein entsprechendes leistungsfähiges externes Netzteil.
Außerdem ist 3,3V unterhalb der Spezifikation für den HIGH-Pegel der LED. Das kann funktionieren, muss es aber nicht.
Im Normalfall brauchst Du dazu einen Levelshifter, z.B. ein Gatter vom SN74LS245.

Gruß Tommy

Kann ich das Netzteil am ESP selbst anschließen?

Weil auf diesem Video hat der liebe Herr irgendwie auch nur das via USB verbunden oder sehe ich das falsch?
VIDEOLINK
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 17:06
Beitrag #4
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
Nicht alles, was in irgendwelchen Videos gezeigt wird, muss der Realität entsprechen.

Auf Deinem Modul sind ja ein UNO und ein ESP8266 drauf. Mit welchem von beiden willst Du die LED ansteuern?

Das 5V-Netzteil kannst Du für die Versorgung des Arduino nutzen.
Aber Achtung: Gleichzeitiger Anschluss von 5V und USB-5V führt in der Regel zu Rauch.
Möglichkeiten zur Abhilfe:

1. Aufpassen und immer nur 1 Spannung anschließen
2. Ein Spannungskabel vom Netzteil mit passendem USB-Stecker bauen und damit den Arduino versorgen - dann kann nur 1 Kabel stecken
3. Ein speziell präpariertes USB-Kabel vom PC benutzen, bei dem die +5V-Ader durchtrennt ist.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 18:34 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2019 18:34 von exGeebot.)
Beitrag #5
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
(12.04.2019 17:06)Tommy56 schrieb:  Nicht alles, was in irgendwelchen Videos gezeigt wird, muss der Realität entsprechen.

Auf Deinem Modul sind ja ein UNO und ein ESP8266 drauf. Mit welchem von beiden willst Du die LED ansteuern?

Das 5V-Netzteil kannst Du für die Versorgung des Arduino nutzen.
Aber Achtung: Gleichzeitiger Anschluss von 5V und USB-5V führt in der Regel zu Rauch.
Möglichkeiten zur Abhilfe:

1. Aufpassen und immer nur 1 Spannung anschließen
2. Ein Spannungskabel vom Netzteil mit passendem USB-Stecker bauen und damit den Arduino versorgen - dann kann nur 1 Kabel stecken
3. Ein speziell präpariertes USB-Kabel vom PC benutzen, bei dem die +5V-Ader durchtrennt ist.

Gruß Tommy

Ich wollte den ESP8266 verwenden um die Matrix anzusteuern... Habe dazu auch die Switches passend eingestellt: ( https://prnt.sc/nb53b6 )

Habe jetzt ein 5V - Netzteil am ESP in den DC Stecker verbunden, PIN 6 - 5V sowie Ground an der Matrix und es leuchtet immer noch nichts Sad
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 18:43
Beitrag #6
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
Die Matrix hat 3 Anschlüsse:

GND --> Arduino-GND und GND vom Netzteil
5V an Netzteil 5V

Dateneingang an ESP-Pin (ggf. über Levelshifter).

Gib uns mal einen Link zum Netzteil. Kann das auch den Strom liefern?

Stelle mal eine Serielle Ausgabe ins Setup an den Anfang und schaue, ob und wie oft die im Serieleen Monitor kommt.
Wenn die laufend kommt, bricht Deine Spannung zusammen und der ESP bootet neu.
Zeige uns auch mal den Sketch, den Du aufgespielt hast.
Setze den bitte in Codetags.
Wie das geht, steht hier.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 18:56 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2019 18:56 von exGeebot.)
Beitrag #7
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
Ich benutze das Netzteil Netzteil-LINK

Jedoch habe ich das Netzteil ja direkt über den DC Anschluss am ESP angeschlossen, wie soll ich nun getrennt die Anschlüsse an die Matrix sowie am ESP vergeben? Siehe Bild : http://prntscr.com/nb5eh7

Da ich recht neu bin in der Arduino Welt, weiß ich nicht ganz genau, wie das mit der seriellen Ausgabe funktioniert Huh

Code:
// NeoPixel test program showing use of the WHITE channel for RGBW
// pixels only (won't look correct on regular RGB NeoPixel strips).

#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
#include <avr/power.h> // Required for 16 MHz Adafruit Trinket
#endif

// Which pin on the Arduino is connected to the NeoPixels?
// On a Trinket or Gemma we suggest changing this to 1:
#define LED_PIN     6

// How many NeoPixels are attached to the Arduino?
#define LED_COUNT  64

// NeoPixel brightness, 0 (min) to 255 (max)
#define BRIGHTNESS 50

// Declare our NeoPixel strip object:
Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRBW + NEO_KHZ800);
// Argument 1 = Number of pixels in NeoPixel strip
// Argument 2 = Arduino pin number (most are valid)
// Argument 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)
//   NEO_RGBW    Pixels are wired for RGBW bitstream (NeoPixel RGBW products)

void setup() {
  // These lines are specifically to support the Adafruit Trinket 5V 16 MHz.
  // Any other board, you can remove this part (but no harm leaving it):
#if defined(__AVR_ATtiny85__) && (F_CPU == 16000000)
  clock_prescale_set(clock_div_1);
#endif
  // END of Trinket-specific code.

  strip.begin();           // INITIALIZE NeoPixel strip object (REQUIRED)
  strip.show();            // Turn OFF all pixels ASAP
  strip.setBrightness(50); // Set BRIGHTNESS to about 1/5 (max = 255)
}

void loop() {
  // Fill along the length of the strip in various colors...
  colorWipe(strip.Color(255,   0,   0)     , 50); // Red
  colorWipe(strip.Color(  0, 255,   0)     , 50); // Green
  colorWipe(strip.Color(  0,   0, 255)     , 50); // Blue
  colorWipe(strip.Color(  0,   0,   0, 255), 50); // True white (not RGB white)

  whiteOverRainbow(75, 5);

  pulseWhite(5);

  rainbowFade2White(3, 3, 1);
}

// Fill strip pixels one after another with a color. Strip is NOT cleared
// first; anything there will be covered pixel by pixel. Pass in color
// (as a single 'packed' 32-bit value, which you can get by calling
// strip.Color(red, green, blue) as shown in the loop() function above),
// and a delay time (in milliseconds) between pixels.
void colorWipe(uint32_t color, int wait) {
  for(int i=0; i<strip.numPixels(); i++) { // For each pixel in strip...
    strip.setPixelColor(i, color);         //  Set pixel's color (in RAM)
    strip.show();                          //  Update strip to match
    delay(wait);                           //  Pause for a moment
  }
}

void whiteOverRainbow(int whiteSpeed, int whiteLength) {

  if(whiteLength >= strip.numPixels()) whiteLength = strip.numPixels() - 1;

  int      head          = whiteLength - 1;
  int      tail          = 0;
  int      loops         = 3;
  int      loopNum       = 0;
  uint32_t lastTime      = millis();
  uint32_t firstPixelHue = 0;

  for(;;) { // Repeat forever (or until a 'break' or 'return')
    for(int i=0; i<strip.numPixels(); i++) {  // For each pixel in strip...
      if(((i >= tail) && (i <= head)) ||      //  If between head & tail...
         ((tail > head) && ((i >= tail) || (i <= head)))) {
        strip.setPixelColor(i, strip.Color(0, 0, 0, 255)); // Set white
      } else {                                             // else set rainbow
        int pixelHue = firstPixelHue + (i * 65536L / strip.numPixels());
        strip.setPixelColor(i, strip.gamma32(strip.ColorHSV(pixelHue)));
      }
    }

    strip.show(); // Update strip with new contents
    // There's no delay here, it just runs full-tilt until the timer and
    // counter combination below runs out.

    firstPixelHue += 40; // Advance just a little along the color wheel

    if((millis() - lastTime) > whiteSpeed) { // Time to update head/tail?
      if(++head >= strip.numPixels()) {      // Advance head, wrap around
        head = 0;
        if(++loopNum >= loops) return;
      }
      if(++tail >= strip.numPixels()) {      // Advance tail, wrap around
        tail = 0;
      }
      lastTime = millis();                   // Save time of last movement
    }
  }
}

void pulseWhite(uint8_t wait) {
  for(int j=0; j<256; j++) { // Ramp up from 0 to 255
    // Fill entire strip with white at gamma-corrected brightness level 'j':
    strip.fill(strip.Color(0, 0, 0, strip.gamma8(j)));
    strip.show();
    delay(wait);
  }

  for(int j=255; j>=0; j--) { // Ramp down from 255 to 0
    strip.fill(strip.Color(0, 0, 0, strip.gamma8(j)));
    strip.show();
    delay(wait);
  }
}

void rainbowFade2White(int wait, int rainbowLoops, int whiteLoops) {
  int fadeVal=0, fadeMax=100;

  // Hue of first pixel runs 'rainbowLoops' complete loops through the color
  // wheel. Color wheel has a range of 65536 but it's OK if we roll over, so
  // just count from 0 to rainbowLoops*65536, using steps of 256 so we
  // advance around the wheel at a decent clip.
  for(uint32_t firstPixelHue = 0; firstPixelHue < rainbowLoops*65536;
    firstPixelHue += 256) {

    for(int i=0; i<strip.numPixels(); i++) { // For each pixel in strip...

      // Offset pixel hue by an amount to make one full revolution of the
      // color wheel (range of 65536) along the length of the strip
      // (strip.numPixels() steps):
      uint32_t pixelHue = firstPixelHue + (i * 65536L / strip.numPixels());

      // strip.ColorHSV() can take 1 or 3 arguments: a hue (0 to 65535) or
      // optionally add saturation and value (brightness) (each 0 to 255).
      // Here we're using just the three-argument variant, though the
      // second value (saturation) is a constant 255.
      strip.setPixelColor(i, strip.gamma32(strip.ColorHSV(pixelHue, 255,
        255 * fadeVal / fadeMax)));
    }

    strip.show();
    delay(wait);

    if(firstPixelHue < 65536) {                              // First loop,
      if(fadeVal < fadeMax) fadeVal++;                       // fade in
    } else if(firstPixelHue >= ((rainbowLoops-1) * 65536)) { // Last loop,
      if(fadeVal > 0) fadeVal--;                             // fade out
    } else {
      fadeVal = fadeMax; // Interim loop, make sure fade is at max
    }
  }

  for(int k=0; k<whiteLoops; k++) {
    for(int j=0; j<256; j++) { // Ramp up 0 to 255
      // Fill entire strip with white at gamma-corrected brightness level 'j':
      strip.fill(strip.Color(0, 0, 0, strip.gamma8(j)));
      strip.show();
    }
    delay(1000); // Pause 1 second
    for(int j=255; j>=0; j--) { // Ramp down 255 to 0
      strip.fill(strip.Color(0, 0, 0, strip.gamma8(j)));
      strip.show();
    }
  }

  delay(500); // Pause 1/2 second
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.04.2019, 19:07
Beitrag #8
RE: WS2812 mit UNO WiFi R3 ATmega328P ESP8266 Modul
Das Netzteil kann 1A (von 3,84A). Du hast es nicht am 5V-Anschluss, sondern an Vin angeschlossen. Das funktioniert nicht.

Setze Bilder bitte direkt als Attachment an Deinen Beitrag. Auf den Uploadservern werden sie irgendwann gelöscht und dann fehlen im Forum die Informationen.

Wie Du das Anschließen sollst? Hast Du kein Breadboard? Ansonsten löten.

Serielle Ausgabe:

im Setup:
Code:
void setup() {
  Serial.begin(115200);
  Serial.println("im Setup");
  ...
}

In der IDE den seriellen Monitor aufrufen (oben rechts) und dann die Baudrate auf 115200 einstellen.

Deine Fragen zeigen, dass da kaum Grundlagenwissen vorhanden ist. Evtl. ist das Projekt für den Moment auch zu komplex für Dich.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Apple II Projekt Umzug von uno -> ESP32 / ESP8266 stevie72 22 1.375 30.05.2019 08:30
Letzter Beitrag: amithlon
  ESP8266 Programm richtig zusammen fassen sams2018 6 567 27.05.2019 11:39
Letzter Beitrag: Tommy56
  Esp8266 Arduino Core Version 2.5.1 Fips 1 430 12.05.2019 18:29
Letzter Beitrag: amithlon
  ESP8266 - SD-Kartenleser und FTP-Server ohne Funktion I-Azubi 6 680 09.05.2019 10:09
Letzter Beitrag: Fips
Question ESP8266 mit Stromsensor MisterE 2 539 06.05.2019 15:17
Letzter Beitrag: MisterE
  Problem mit Login bei ESP8266 mit ESP-Easy Koenig 2 513 05.05.2019 20:11
Letzter Beitrag: Tommy56
  ESP8266 Zeitschaltung variabel 40 4.005 07.04.2019 20:18
Letzter Beitrag: Hilgi
  ESP8266 D1 Mini verliert die Daten nach Spannungsausfall. Manny 10 1.461 01.04.2019 16:00
Letzter Beitrag: amithlon
Question ESP8266 Versionen... valbuz 25 3.307 26.03.2019 12:43
Letzter Beitrag: Tommy56
  ESP8266 / ESP32 und TCP Grave 2 884 21.03.2019 10:57
Letzter Beitrag: biologist

Gehe zu:


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