Нерешаемо Arduino + ws2801

Тема в разделе "Arduino & Shields", создана пользователем EzaHettR, 18 апр 2020.

  1. EzaHettR

    EzaHettR Нуб

    ну да, у вас другой тип светодиодов( у меня так не запускает что то(
     
  2. Ariadna-on-Line

    Ariadna-on-Line Гуру

    да еще, использованы пины 5, 6
    Не пробовали задать другие марки спи диодов ?
    Вполне возможен и брак диода. А коль брак - он сигнал дальше не пустит. Отрежьте последний диод линии, и включите на проводках вместо первого для пробы, чтоб ленту не перемонтировать.
     
    Последнее редактирование: 19 апр 2020
  3. EzaHettR

    EzaHettR Нуб

    пробовал все пины, которые на плате есть для каждого из входов, все ровно. причем, я попробовал еще питание дать в обратую сторону и заметил, что без разницы куда подавать питание, горит всегда один и тот же диод - самый первый, в независимости от направления питания
     
  4. Ariadna-on-Line

    Ariadna-on-Line Гуру

    линии питания идут сквозняком. Без разницы начала и конца. Разные марки SPI светодиодов попробуйте задать. Библы тоже не без ошибок.
     
  5. EzaHettR

    EzaHettR Нуб

    не совсем понял этот совет. где почитать про задавание марок spi?или как их вообще делать?
     
  6. Ariadna-on-Line

    Ariadna-on-Line Гуру

    О-ё
    Код (C++):
    // ## Clocked (SPI) types ##
        // FastLED.addLeds<LPD6803, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);  // GRB ordering is typical
        // FastLED.addLeds<LPD8806, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);  // GRB ordering is typical
         FastLED.addLeds<WS2801, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
        // FastLED.addLeds<WS2803, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
        // FastLED.addLeds<SM16716, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
        // FastLED.addLeds<P9813, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);  // BGR ordering is typical
        // FastLED.addLeds<DOTSTAR, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);  // BGR ordering is typical
        // FastLED.addLeds<APA102, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);  // BGR ordering is typical
        // FastLED.addLeds<SK9822, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);  // BGR ordering is typical
    Здесь. Либо обозначаешь строку как комментарий (ставишь "//"). Либо обозначаешь строку как команду (убираешь "//").
    ПС. SPI (serial protocol interface) - запросто гуглится в интернете.
    А здесь вы указываете программе с каким железом ей придется работать.
     
    Последнее редактирование: 19 апр 2020
  7. EzaHettR

    EzaHettR Нуб


    аа, не, это тоже пробовал. вплоть до закомменчивания и откомменчивания каждой строки (ну вдруг). тоже пытался так делать, но плате походу все ровно.
     
  8. parovoZZ

    parovoZZ Гуру

  9. Error2022

    Error2022 Нуб

    Мда... Только что наткнулся на эту тему. Если не помогло перебирание вариантов выбора ленты (FastLED.addLeds), то нужно бы учесть еще и массив нумерации диодов
    void loop() {
    // Turn the LED on, then pause
    leds[0] = CRGB::Blue;
    FastLED.show();
    delay(500);
    // Now turn the LED off, then pause
    leds[0] = CRGB::Black;
    FastLED.show();
    delay(500);
    leds[1] = CRGB::White;
    FastLED.show();
    delay(500);
    // Now turn the LED off, then pause
    leds[1] = CRGB::Black;
    FastLED.show();
    delay(500);
    leds[2] = CRGB::Green;
    FastLED.show();
    delay(500);
    // Now turn the LED off, then pause
    leds[2] = CRGB::Black;
    FastLED.show();
    delay(500);
    leds[3] = CRGB::Red;
    FastLED.show();
    delay(500);
    // Now turn the LED off, then pause
    leds[3] = CRGB::Black;
    FastLED.show();
    delay(500);
     
  10. b707

    b707 Гуру

    зачем?
     
    parovoZZ нравится это.
  11. parovoZZ

    parovoZZ Гуру

    Ну да, зачем? У диодов адресов нет. Произвольного обращения к диодам нет.