• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Подключение WS2812

Const

Member
Привет! Подключаю адресную светодиодную ленту WS2812 5050 RGB, 5V к esp8266. В сети много советов как ее подключить.
Например:

esp_ws2812b_NSQa4ouOYw[1].jpg
Но говорят может работать с глюками от наводок и тд...
Есть еще такая:
esp-ws2812[1].png
Пишут что эта схема правильная.
Я "первый" раз разбираюсь с подобными схемами. Прошу понять мои вопросы по этому поводу...
Я не могу понять от куда на DI подается +5V. Возможно на этой схеме что то не хватает?
Вот аналогичная с другим транзистором(с подачей +5V что нет на предыдущей):
pnp_e-follower[1].jpg
Правильно ли я понял что +5V подключается на предыдущей так же?
 

Const

Member
Имеет ли значение транзистор? И как я понимаю сигнал будет инвертирован при таком подключении? Если да то получается в прошивке нужно будет что то менять?
 

CodeNameHawk

Moderator
Команда форума
И как я понимаю сигнал будет инвертирован при таком подключении?
Неправильно понимаете. В этой схеме эммитер там, где обычно бывает коллектор.
Правильно ли я понял что +5V подключается на предыдущей так же?
Правильно.
 

Const

Member
Я не мгу понять как в такой схеме при подаче 3.3В от пина ESP будет подаваться 5В на DI диодной ленты. Можете коротко объяснить как работает схема?
 

CodeNameHawk

Moderator
Команда форума
Когда транзистор закрыт, на DI будет подаваться 5в, через верхний резистор, когда транзистор откроется, он замкнет эту ногу на корпус.
Если интересуетесь, как работает сема, может стоит почитать о транзисторах и схемах подключения?
Некоторые используют один диод из ленты, питая его от 3.3в, а остальные диоды от 5в.
 
Последнее редактирование:

enjoynering

Well-known member
Схема с транзистором - это level shifter (гугл в помощь). Он нужен чтоб из 3.3в сделать 5в.

Если провода от esp8266 до первого светодиода в ленте короткие, то преобразователь уровней можно не ставить.

А вот резистор очень советую. Если по какой то причине на ленте пропадет +5В, первый WS2811 начинает питаться фантомным напряжением с GPIO и дальше как повезет — сгорит GPIO или WS2811. Резистор ограничивает ток и спасает гирлянду с ESP8266. У меня так сгорел первый по счету WS2811 в гирлянде.
 

Const

Member
Спасибо за ответы. Этот вопрос отложу не надолго... Пока не найду подходящий транзистор.
Возник вопрос по библиотеке Adafruit_NeoPixel Которую использую для прошивки ESP.
C++:
#include <Adafruit_NeoPixel.h>
#define PIN 0
#define NUMPIXELS 300
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  pixels.begin();
    // pixels.setBrightness(255);
    for(int i=0; i<NUMPIXELS; i++) {
        pixels.setPixelColor(i, pixels.Color(255, 255, 255));
        pixels.show();
  }
}

void loop() {}
По мере заполнения ленты цвет становится с оттенком, а к концу вообще полностью переходит в цвет оттенка. Не важно каким цветом заливать. С уменьшением яркости эффект становится менее заметным.
Использую блок питания на 100W. Лента 5 метров (60 пикселей на метр). Может дело в питании ленты? Кто то сталкивался с таким "эффектом"?
Видео как это работает залил на диск - https://disk.yandex.ru/i/PEDLxKONeTFtqQ
 

Const

Member
Пробуйте запитать ленту с двух сторон.
Все правильно. Так это явление наблюдается меньше, но все равно есть. Заметил еще что от прикосновения к проводам слегка меряется тональность. Возможно наводит или просто нужно все спаять по нормальному.
 
Сверху Снизу