Skocz do zawartości

Błąd wyświetlania na diodach WS2812B arduino nano rp2040 connect


sp2013

Pomocna odpowiedź

Witam.

Tak jak w tytule.

Kod:

#include <Adafruit_NeoPixel.h>

// Which pin on the Arduino is connected to the NeoPixels?
#define PIN        A7
#define NUMPIXELS 8
Adafruit_NeoPixel strip(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  strip.begin();

}



void loop() {
  rainbow(5);
}

void rainbow(int wait) {
  // Hue of first pixel runs 3 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 3*65536. Adding 256 to firstPixelHue each time
  // means we'll make 3*65536/256 = 768 passes through this outer loop:
  for(long firstPixelHue = 0; firstPixelHue < 3*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):
      int 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 single-argument hue variant. The result
      // is passed through strip.gamma32() to provide 'truer' colors
      // before assigning to each pixel:
      strip.setPixelColor(i, strip.gamma32(strip.ColorHSV(pixelHue)));
    }
    strip.show(); // Update strip with new contents
    delay(wait);  // Pause for a moment
  }
}

 

Błąd:

In function 'void __static_initialization_and_destruction_0(int, int)',
    inlined from '(static initializers for C:\Users\Inny\AppData\Local\Temp\.arduinoIDE-unsaved2024416-17840-51obxe.5cz4h\sketch_may16a\sketch_may16a.ino)' at C:\Users\Inny\AppData\Local\Temp\.arduinoIDE-unsaved2024416-17840-51obxe.5cz4h\sketch_may16a\sketch_may16a.ino:38:1:
C:\Users\Inny\AppData\Local\Temp\.arduinoIDE-unsaved2024416-17840-51obxe.5cz4h\sketch_may16a\sketch_may16a.ino:6:61: error: call to 'NinaPin::operator int' declared with attribute error: Change me to a #define
 Adafruit_NeoPixel strip(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
                                                             ^

exit status 1

Compilation error: call to 'NinaPin::operator int' declared with attribute error: Change me to a #define

  • Lubię! 1
Link do komentarza
Share on other sites

@sp2013 dla jakiej konkretnie płytki kompilujesz kod? Sprawdziłem dla Arduino UNO i tytułowego Arduino Nano i program kompiluje się bez żadnych błędów.

Link do komentarza
Share on other sites

Gość

@sp2013 Sprawdziłem przy okazji (akurat tez jestem w temacie) Twój kod na swoim Arduino nano i okrągłej linijce WS2812. Działa elegancko. Jest pływająca tęcza.  

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Gość

@ethanak Pisałem, że przetestowałem w realu sam kod czy działa. (z ciekawości) Natomiast jaki jest to typ urządzenia, to przecież autor sam  to określił  w tytule tematu.  

Edytowano przez rafal220
Link do komentarza
Share on other sites

(edytowany)
10 godzin temu, ethanak napisał:

@Treker Kompilowałeś na Nano czy Nano rp2040? Bo to całkowicie różne platformy...

Nano RP2040 kupione ze sklepu botland, chyba że przesłali mi zwykłe nano… ale na opakowaniu było RP2040 CONNECT. Edit: przesyłam jeszcze zdjęcia opakowania dla pewności, bo widzę, możecie mi nie uwierzyć.

photo_2024-05-17_07-05-33.jpg

photo_2024-05-17_07-05-43.jpg

Edytowano przez sp2013
Link do komentarza
Share on other sites

To nawet po procku na zdjęciu widać że to 2040. Te biblioteki nie muszą z tym działać - spróbuj NeoPixelBus albo ogólnie czegoś co działa z RPi Pico.

Link do komentarza
Share on other sites

8 minut temu, ethanak napisał:

To nawet po procku na zdjęciu widać że to 2040. Te biblioteki nie muszą z tym działać - spróbuj NeoPixelBus albo ogólnie czegoś co działa z RPi Pico.

Ok za 20 minut spróbuję.

Link do komentarza
Share on other sites

Spróbowałem i nie działa. Dla wersji z przykładów rp2040 wyrzuca błąd a dla wersji ogólnej nie wyrzuca błędu ale dalej się nie świeci. Mam zasilanie bateryjne bo trzaba wlutować zworkę aby bez baterii było 5v.

  • Lubię! 1
Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.