Бегущая строка на ардуино и ws2812b

Необходимые компоненты:

* Arduino UNO или аналогичный
* Светодиодная лента WS2812B
* Блок питания 5 В
* Соединительные провода

Схема подключения:

Подключите светодиодную ленту к выводу 6 Arduino, а питание — к выводу 5В и землю — к выводу GND.

Код для плавного сдвига:

«`c++
include

define NUM_PIXELS 30 // Количество светодиодов на ленте
define LED_PIN 6 // Вывод Arduino, к которому подключена лента

Adafruit_NeoPixel strip(NUM_PIXELS, LED_PIN, NEO_GRB + NEO_KHZ800);

int position = 0; // Текущая позиция текста на ленте

void setup() {
strip.begin(); // Инициализировать светодиодную ленту
strip.setBrightness(100); // Установить яркость
}

void loop() {
// Заполнить светодиодную ленту черным цветом
strip.fill(strip.Color(0, 0, 0));

// Написать текст на ленте
strip.setText(«Привет, Ардуино!»);
strip.setTextColor(strip.Color(255, 255, 255));
strip.setTextPosition(position);
strip.show();

// Переместить текст влево
position—;
if (position < -strip.textWidth()) { position = NUM_PIXELS - 1; } // Задержка перед повторением цикла delay(10); } ``` Как это работает: 1. Импортируйте библиотеку Adafruit NeoPixel, необходимую для управления светодиодной лентой WS2812B. 2. Определите количество светодиодов на ленте, вывод Arduino, к которому она подключена, и используемый тип пикселей (в этом случае NEO_GRB + NEO_KHZ800). 3. Инициализируйте объект светодиодной ленты и установите начальную яркость. 4. В цикле `loop()`: - Очистите светодиодную ленту от всех цветов. - Выведите текст на ленту с помощью метода `setText()` и установите его позицию с помощью `setTextPosition()`. - Отобразите измененную ленту с помощью `show()`. - Переместите текст влево и проверьте, не вышел ли он за пределы ленты. Если это так, сбросьте его в начало ленты. - Сделайте паузу перед повторением цикла. Настройка: * Загрузите код в Arduino. * Подключите светодиодную ленту к Arduino и блоку питания. * Установите желаемое количество светодиодов и вывод Arduino в соответствии с вашей настройкой.

Оцените статью