Close

Led ws2812b pomoc

Úvodní stránka Fórum Vaše projekty Arduino Led ws2812b pomoc

Aktuálně je na stránce zobrazeno 7 příspěvků - 46. až 52. (celkem z 52)
  • Autor
    Příspěvky
  • #8138
    keksik334
    Účastník

    tak zapojeno znova a nameri to kolem 800

    #8139
    Vojtěch Vosáhlo
    Účastník

    tak připojte oba děliče na A0 a A1 a nahrajte tento kód. Musíte si ještě dovyplnit nějaké definice. Vstup z levého blinkru jsem dal na A0, z pravého na A1.

    #include <Adafruit_NeoPixel.h>
     
     
     
    ////// NASTAVENI LEVEHO PASKU
    #define PIN_L_PASEK pin l pasku
    #define NUM_LEDS_L_PASEK pocet led l pasku
    Adafruit_NeoPixel l_pasek = Adafruit_NeoPixel(NUM_LEDS_L, PIN_L_PASEK, NEO_GRB + NEO_KHZ800);
     
    ////// NASTAVENI PRAVEHO PASKU
    #define PIN_P_PASEK pin p pasku
    #define NUM_LEDS_P_PASEK pocet led p pasku
    Adafruit_NeoPixel p_pasek = Adafruit_NeoPixel(NUM_LEDS_P, PIN_P_PASEK, NEO_GRB + NEO_KHZ800);
     
     
    ////////////POCET LED JEDNOHO Z PASKU
    #define NUM_LEDS NUM_LEDS_L_PASEK
     
     
    ////// NASTAVENI VSTUPNICH PINU
    #define L_BLINKR_PIN A0
    #define P_BLINKR_PIN A1
     
    void setup() {
    /// Nastaveni pinu na ktere pujdou vstupy/ blinkry
      pinMode(L_BLINKR_PIN, INPUT);
      pinMode(R_BLINKR_PIN, INPUT);
     
    ///Nastaveni pasku
      l_pasek.begin();
      l_pasek.show();
     
      p_pasek.begin();
      p_pasek.show();
    }
     
    void loop() {
        if(analogRead(P_BLINKR_PIN) > 500 && analogRead(L_BLINKR_PIN) < 500)
        {
          colorWipe(0xff,0xa2,0x00, 40, 1);
          colorWipe(0x00,0x00,0x00, 5, 1);
        }
     
        if(analogRead(L_BLINKR_PIN) > 500 && analogRead(P_BLINKR_PIN) < 500)
        {
          colorWipe(0xff,0xa2,0x00, 40, 0);
          colorWipe(0x00,0x00,0x00, 5, 0);
        }
     
     
         if(analogRead(L_BLINKR_PIN) > 500 && analogRead(P_BLINKR_PIN) > 500)
        {
          colorWipe(0xff,0xa2,0x00, 40, 2);
          colorWipe(0x00,0x00,0x00, 5, 2);
        }
     
    }
     
    void colorWipe(byte red, byte green, byte blue, int SpeedDelay, int pasek) {
      if(pasek == 0){
        for(uint16_t i=0; i<NUM_LEDS_L_PASEK; i++) {
          setPixelL_PASEK(i, red, green, blue);
          showL_PASEK();
          delay(SpeedDelay);
         }
        }
     
      if(pasek == 1){
         for(uint16_t i=0; i<NUM_LEDS_P_PASEK; i++) {
          setPixelP_PASEK(i, red, green, blue);
          showP_PASEK();
          delay(SpeedDelay);
         }
        }
     
     
        if(pasek == 2){
        for(uint16_t i=0; i<NUM_LEDS; i++) {
          setPixelL_PASEK(i, red, green, blue);
          setPixelP_PASEK(i, red, green, blue);
          showL_PASEK();
          showP_PASEK();
          delay(SpeedDelay);
         }
        }
     
     
    }
     
     
    void showL_PASEK() {
     #ifdef ADAFRUIT_NEOPIXEL_H
       // NeoPixel
        l_pasek.show();
     #endif
     #ifndef ADAFRUIT_NEOPIXEL_H
       // FastLED
       FastLED.show();
     #endif
    }
     
    void setPixel_L_PASEK(int Pixel, byte red, byte green, byte blue) {
     #ifdef ADAFRUIT_NEOPIXEL_H
       // NeoPixel
       l_pasek.setPixelColor(Pixel, l_pasek.Color(red, green, blue));
     #endif
     #ifndef ADAFRUIT_NEOPIXEL_H
       // FastLED
       leds[Pixel].r = red;
       leds[Pixel].g = green;
       leds[Pixel].b = blue;
     #endif
    }
     
    void showP_PASEK() {
     #ifdef ADAFRUIT_NEOPIXEL_H
       // NeoPixel
       p_pasek.show();
     #endif
     #ifndef ADAFRUIT_NEOPIXEL_H
       // FastLED
       p_pasek.show();
     #endif
    }
     
    void setPixel_P_PASEK(int Pixel, byte red, byte green, byte blue) {
     #ifdef ADAFRUIT_NEOPIXEL_H
       // NeoPixel
       p_pasek.setPixelColor(Pixel, p_pasek.Color(red, green, blue));
     #endif
     #ifndef ADAFRUIT_NEOPIXEL_H
       // FastLED
       leds[Pixel].r = red;
       leds[Pixel].g = green;
       leds[Pixel].b = blue;
     #endif
    }
    #8140
    keksik334
    Účastník

    tak bude problem v tom delici

    jelikou uz jsem docela unavenej sedim tady na zemi tak jsem vzal 7805 napojil na blinkt a svete div se arduino se sepne animace bezi.. vydrzi to ta 7805 kdyz ji bude takhle neustale zapinat? ze bych tu udelal i na druhou stranu

    #8141
    Vojtěch Vosáhlo
    Účastník

    Myslim že by měla, můžete to kdykoliv vyměnit když to odejde a dát tam něco lepšího…
    Až na to bude zas síla tak to můžete vylepšit.

    #8142
    keksik334
    Účastník

    dneska uz to nedam 😀 chtel jsem zkusit ten Vas posledni kod ale ne to nedam dneska dodelam to takhle dam tam 7805 a az bude chut pustim se do toho znova 🙂 kazdopadne Vam parti velke diky za vas cas a pomoc DEkUJI

    #8143
    Vojtěch Vosáhlo
    Účastník

    Neni vůbec za co. Je hezký že se tu alespoň jednou za měsíc někdo objeví a já můžu pomoct. Je to jako takovej vedlejší projekt ?
    Hodně štěstí do budoucna

    #8156
    keksik334
    Účastník
Aktuálně je na stránce zobrazeno 7 příspěvků - 46. až 52. (celkem z 52)
  • Pro reakci na toto téma se musíte přihlásit.