Съдържание:

Как да управляваме WS2812 RGB LED (NeoPixel) W/ Arduino [Урок]: 10 стъпки
Как да управляваме WS2812 RGB LED (NeoPixel) W/ Arduino [Урок]: 10 стъпки

Видео: Как да управляваме WS2812 RGB LED (NeoPixel) W/ Arduino [Урок]: 10 стъпки

Видео: Как да управляваме WS2812 RGB LED (NeoPixel) W/ Arduino [Урок]: 10 стъпки
Видео: TuxCon 2015: ESP8266 IoT Firmware, Петър Вълков 2024, Юли
Anonim

От ElectropeakElectroPeak Официален уебсайт Следвайте още от автора:

Първи стъпки с ултразвуков модул и Arduino
Първи стъпки с ултразвуков модул и Arduino
Първи стъпки с ултразвуков модул и Arduino
Първи стъпки с ултразвуков модул и Arduino
Създайте WiFi топлинна карта с помощта на ESP8266 и Arduino
Създайте WiFi топлинна карта с помощта на ESP8266 и Arduino
Създайте WiFi топлинна карта с помощта на ESP8266 и Arduino
Създайте WiFi топлинна карта с помощта на ESP8266 и Arduino
Сензор за разпознаване на цвят W/ TCS230 и Arduino [Включен код за калибриране]
Сензор за разпознаване на цвят W/ TCS230 и Arduino [Включен код за калибриране]
Сензор за разпознаване на цвят W/ TCS230 и Arduino [Калибриращият код е включен]
Сензор за разпознаване на цвят W/ TCS230 и Arduino [Калибриращият код е включен]

За: ElectroPeak е вашето едно гише, където да научите електроника и да реализирате идеите си. Ние предлагаме първокласни ръководства, за да ви покажем как можете да правите вашите проекти. Ние също така предлагаме висококачествени продукти, за да имате … Повече за Electropeak »

Общ преглед

Светодиодите NeoPixel са широко използвани в наши дни в електронни проекти, поради атрактивните си визуални ефекти. Тези светодиоди се предлагат в различни размери и форми и под формата на ленти. В този урок ще научите за светодиодите NeoPixel и как да ги контролирате с Arduino.

Какво ще научите

  • Какво е NeoPixel
  • Защо NeoPixel
  • свързване на NeoPixel с Arduino

Консумативи

Хардуерни компоненти

WS2812 RGB LED пръстен модул *1

Arduino Uno R3 *1

Софтуерни приложения

Arduino IDE

Стъпка 1: Какво е NeoPixel?

Какво е NeoPixel?
Какво е NeoPixel?
Какво е NeoPixel?
Какво е NeoPixel?

След 1962 г., когато беше направен и тестван първият светодиод, това ценно парче се превърна в неразделна част от живота ни. В повечето електронни проекти можете да намерите поне един единствен светодиод. Използването на светодиоди в различни цветове беше толкова привлекателно, че предизвика производството на многоцветни светодиоди или RGB светодиоди.

RGB LED създава всички цветове въз основа на трите цвята червено, зелено и синьо. например комбинация от червено и синьо създава пурпурен цвят. В този модел всеки цвят има стойност между 0 и 255 за всеки червен, зелен и син цвят. Например тези стойности са 255 0 255 (максимална червена, максимална синя и минимална зелена стойност) за Магента. Тази цифрова стойност се изразява с шестнадесетичния код (2550255 = # FF00FF). RGB светодиодите правят различни цветове въз основа на този модел.

За да управлявате всеки RGB LED, имате нужда от три цифрови пина на микроконтролер (или платки за разработка като Arduino). Например, ако искате да управлявате RGB LED низ, съдържащ 60 светодиода, за да контролирате цвета на всеки светодиод поотделно, имате нужда от 180 цифрови пина! Така че трябва да забравите да управлявате всеки светодиод поотделно или да използвате адресируеми светодиоди. Адресируемите светодиоди са ново поколение светодиоди, включително IC контролер, в допълнение към RGB светодиодите. Този контролер IC, обикновено WS2812, ви позволява достъп до множество светодиоди с един цифров извод, като присвоите адрес на всеки светодиод и осигурите една жична комуникация. Но за разлика от обикновените светодиоди, тези видове светодиоди не се включват само чрез прилагане на напрежение, те също изискват микроконтролер. NeoPixel е марката Adafruit за адресируеми светодиоди.

Стъпка 2: Защо NeoPixel?

Защо NeoPixel?
Защо NeoPixel?

Възможността за управление на всеки светодиод в LED лента ще създаде страхотни визуални ефекти във вашите проекти. Но трябва да се отбележи, че в много бързите процеси като POV, използването на NeoPixels не се препоръчва. Другото важно предимство на NeoPixels е тяхната по -ниска цена в сравнение с други адресируеми светодиоди. NeoPixels се предлагат и в моделите с пръстен, лента, квадрат и кръг и можете да изберете подходящия модел според вашия проект.

Neopoxes също могат да бъдат веригирани, така че можете да контролирате множество NeoPixels само с един команден ред и един захранващ.

Забележка Увеличаването на броя на светодиодите NeoPixel ще изисква повече RAM, повече мощност и повече време за обработка, така че изберете най -оптималния NeoPixel според вашия тип микроконтролер.

Стъпка 3: Необходими материали

Необходими материали
Необходими материали

Стъпка 4: Взаимодействие на NeoPixel и Arduino

Взаимодействие на NeoPixel и Arduino
Взаимодействие на NeoPixel и Arduino
Взаимодействие на NeoPixel и Arduino
Взаимодействие на NeoPixel и Arduino

Забележка Резисторът трябва да се използва за предотвратяване на повреда на NeoPixel и за правилно предаване на данни.

Забележка Ако използвате лентов светодиод, който съдържа голям брой светодиоди, препоръчваме ви да поставите голям кондензатор (например 1000uf) успоредно с + и - на захранващото напрежение.

Забележка Най -доброто разстояние за свързване на първия модул NeoPixel е на около 1 до 2 метра от платката на контролера.

Стъпка 5: Пример 1: Настройка на NeoPixel с Arduino

В този пример ще включите NeoPixels и ще контролирате цвета и интензитета на всеки светодиод поотделно с помощта на Arduino UNO. Използвайте библиотеката NeoPixel Adafruit, за да настроите NeoPixel с Arduino.

Код Обяснение

Adafruit_NeoPixel пиксели (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

Горната функция определя броя на светодиодите и щифтовете на Arduino.

pixels.begin ();

Тази функция извършва инициализациите.

pixel.setBrightness (b);

Горната функция задава интензитета на светлината. (Минималният брой е 1, а максималният е 255.)

pixels.setPixelColor (Wich LED, Wich цвят (Red, Green, Blue));

Определя цвета на светодиодите с RGB системата, след като посочва номера на светодиода (от 0 до NUMPIXELS-1).

pixels.show ();

Показва приложените стойности.

Стъпка 6: Пример 2: Режим на мигане на NeoPixel с Arduino

В този пример ние настройваме NeoPixels в мигащ режим. За да направите мигача, всички светодиоди трябва да се включват и изключват едновременно и могат да имат различни цветове, когато са включени.

Стъпка 7: Пример 3: Режим на затихване на NeoPixel с Arduino

Избледняването е един от завладяващите ефекти на NeoPixels. Колкото по -бавно избледнява, толкова по -добър ще бъде ефектът.

Стъпка 8: Пример 4: Неопикселов случаен режим с Arduino

В този пример използваме функцията random (num1, num2) за генериране и показване на произволно число между num1 и num2 за избор на цвят и светодиод.

Стъпка 9: Пример 4: NeoPixel Rainbow Mode с Arduino

Пример 4: Режим на дъгата NeoPixel с Arduino
Пример 4: Режим на дъгата NeoPixel с Arduino
Пример 4: Режим на дъгата NeoPixel с Arduino
Пример 4: Режим на дъгата NeoPixel с Arduino
Пример 4: Режим на дъгата NeoPixel с Arduino
Пример 4: Режим на дъгата NeoPixel с Arduino

Един от най -интересните инструменти в мрежата за създаване на ефекти върху NeoPixels е NeoPixel Effects Generator, който ви позволява да посочите броя на светодиодите и щифтовете на Arduino, а след като създадете ефектите и необходимите настройки, можете да кликнете върху генериращия код на Arduino и копирайте генерирания код в IDE. За да направите това, направете следните стъпки:

  1. Кликнете върху Добавяне на LED лента, след като влезете в уебсайта.
  2. Кликнете върху добавената лента NeoPixel и посочете броя на светодиодите и щифтовете на Arduino.
  3. Щракнете върху Добавяне на ефект в частта на цикъла и изберете ефект.
  4. Приложете предпочитанията си в секциите „Анимация“и „Цвят“.
  5. Кликнете върху генериране на Arduino код и копирайте генерирания код в Arduino IDE.

Стъпка 10: Какво следва?

  • Тествайте другите ефекти върху вашия NeoPixel.
  • Опитайте се да управлявате вашия NeoPixel безжично. (WiFi, Bluetooth, …)

Подобни уроци

Играйте с огън през WIFI! ESP8266 и NeoPixels (включително приложението за Android)

Препоръчано: