Go Down

Topic: ws2813 non funziona correttamente (Read 56 times) previous topic - next topic

sanga

Buongiorno avrei un'altra domanda per quanto riguarda il collegamento della ledstrip ws2813:

Se collego BI in parallelo a DI i primi due led si comportano nello stesso modo,

Se invece collego BI al GND come da manuale il primo led non rispetta assolutamente il codice.

con il tester ho verificato che c'è continuità tra il pin D0 e il punto di saldatura del pin DO del led e quindi con arduino UNO

ps: sto usando la libreria FastLed

Ecco di seguito un esempio del codice scritto:

Code: [Select]
#include "FastLED.h"
#if FASTLED_VERSION < 3001000
#error "Requires FastLED 3.1 or later; check github for latest code."
#endif

#define DATA_PIN    12
#define LED_TYPE    WS2812
#define COLOR_ORDER GRB
#define NUM_LEDS    3
CRGB leds[NUM_LEDS];

#define BRIGHTNESS          96
#define FRAMES_PER_SECOND  120

void setup() {
  delay(3000); // 3 second delay for recovery
  Serial.begin(9600);
  Serial.print("***AVVIO CODICE***\n");
  FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
  FastLED.setBrightness(BRIGHTNESS);
 
}

uint8_t gHue = 0;

void loop()
{
  Serial.print("***SPENGO***\n");
  for( int i = -1; i < NUM_LEDS; i++) {
      leds[i] = CHSV( gHue, 0, 0);
      FastLED.show();
      delay(1000);
  }

  Serial.print("***ACCENDO***\n");
  for( int i = 0; i < NUM_LEDS; i++) {
      leds[i] = CHSV( gHue, 200, 255);
      FastLED.show();
      delay(1000);
  }

  delay(1000);
  Serial.print("***SPENGO***\n");
  for( int i =0; i < NUM_LEDS; i++) {
      leds[i] = CHSV( gHue, 0, 0);
      FastLED.show();
      delay(1000);
  }
  delay(1000);
 
}




Qualcuno può aiutarmi a capire dove sbaglio?
grazie mille anticipatamente

Go Up