Mundarija:

Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ringni qanday ishlatish kerak: 4 qadam
Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ringni qanday ishlatish kerak: 4 qadam

Video: Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ringni qanday ishlatish kerak: 4 qadam

Video: Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ringni qanday ishlatish kerak: 4 qadam
Video: Как использовать светодиод RGB с кодом Arduino для расчета значения резистора 2024, Noyabr
Anonim
Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ring -dan qanday foydalanish kerak
Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ring -dan qanday foydalanish kerak

Salom bolalar, chunki Neopixel LED chizig'i juda mashhur va u ws2812 LED chizig'i deb ham ataladi. Ular juda mashhur, chunki bu chiziqli lentada biz har bir LEDga alohida -alohida murojaat qilishimiz mumkin, demak, agar siz bir nechta LEDlar bitta rangda, ozlari boshqa rangda va bir nechta boshqa rangda porlashini xohlasangiz, u buni qila oladi. Hatto siz har bir LEDni bir vaqtning o'zida xohlagan rangda yoritishingiz mumkin. Bu ularning mashhurligining sababidir.

Shunday qilib, biz ushbu ws2812 yoki neopixel chiziqli arduino bilan qanday ishlatishni o'rgatamiz.

1 -qadam: Sizga kerak bo'lgan narsalar

Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar

Buning uchun sizga quyidagi narsalar kerak bo'ladi:

Arduino

Adafruit NeoPixel chiziqlar

Rezistor 10k ohm

Non paneli (umumiy)

Jumper simlari (umumiy)

2 -qadam: ulanishlar

Ulanishlar
Ulanishlar
Ulanishlar
Ulanishlar

Ulanish uchun iltimos, ko'rsatilgan rasmga rioya qiling va hamma narsani ko'rsatilgan sxemalarga muvofiq ulang.

3 -qadam: kod

Kod
Kod

Adafruit NeoPixel kutubxonasini yuklab oling:

github.com/adafruit/Adafruit_NeoPixel

boshlash uchun. Siz zudlik bilan.zip faylini kutubxonaga yuklab olishingiz, uni kompyuteringizda ochishingiz va Arduino kutubxonalari papkasiga yuklashingiz mumkin. ("Kutubxonalar" papkasi odatda eskizlaringizni saqlaydigan "Arduino" papkasida yaratiladi. Agar sizda hali yo'q bo'lsa, davom eting va uni yarating.) Agar sizda Arduino IDE ochilgan bo'lsa, uni qayta ishga tushiring..

Qayta ishga tushgach, sizda yangi namunali eskizlar bo'ladi. Keling, ko'rib chiqaylik!

Fayl> Misollar> Adafruit NeoPixel> oddiy

Bu odam sizning LED -laringizni birma -bir yashil rangda yondiradi.

Yoki siz quyidagi kodni nusxalashingiz va uni sinab ko'rishingiz mumkin.

// NeoPixel Ring oddiy eskiz (c) 2013 Shae Erisson // AdaFruit NeoPixel kutubxonasining qolgan qismiga mos kelish uchun GPLv3 litsenziyasi ostida chiqarilgan.

#"Adafruit_NeoPixel.h" ni qo'shing #ifdef _AVR_ #"avr/power.h" ni qo'shing #endif

// Arduino -dagi qaysi pin NeoPixel -ga ulangan? // Trinket yoki Gemma -da biz buni 1 ta aniqlangan PIN 6 ga o'zgartirishni taklif qilamiz

// Arduino -ga nechta NeoPixel biriktirilgan? #NUMPIXELS 16 ni aniqlang

// NeoPixel kutubxonasini o'rnatganimizda, biz unga qancha piksel va signal yuborish uchun qaysi pinni ishlatish kerakligini aytamiz. // E'tibor bering, eski NeoPixel chiziqlar uchun uchinchi parametrni o'zgartirish kerak bo'lishi mumkin-mumkin bo'lgan qiymatlar haqida qo'shimcha ma'lumot olish uchun strandtest // misolini ko'ring. Adafruit_NeoPixel piksellari = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

int kechikish vaqti = 500; // yarim soniya kechiktirish

void setup () {// Bu Trinket 5V 16MHz uchun, agar siz Trinket #if (_AVR_ATtiny85_) dan foydalanmasangiz, bu uchta qatorni olib tashlashingiz mumkin, agar (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // Trinketning maxsus kodining oxiri

piksel.begin (); // Bu NeoPixel kutubxonasini ishga tushiradi. }

void loop () {

// NeoPiksellar to'plami uchun birinchi NeoPixel 0, ikkinchisi 1, piksellar soniga qadar minus bitta.

uchun (int i = 0; i

// pixel. Color 0, 0, 0 dan 255, 255, 255 gacha RGB qiymatlarini oladi.setPixelColor (i, piksellar. Color (0, 150, 0)); // O'rtacha och yashil rang.

piksel.show (); // Bu yangilangan piksel rangini uskunaga yuboradi.

kechikish (kechikish); // Bir muddat kechikish (millisekundlarda).

} }

4 -qadam: uni yorug'lik qilish

Yengil qilish
Yengil qilish

Kodni yuklaganingizdan so'ng, sizning neopixel chizig'ingiz meniki kabi yonadi va siz hatto yuqoridagi kodni o'zgartirishingiz mumkin, uni har xil rangda yoqishingiz mumkin va siz yuqoridagi neopixel kutubxonasidagi boshqa misollarni sinab ko'rishingiz va o'zingizning neopikselli chiziqli tasmangiz bilan xursand bo'lishingiz mumkin.

Tavsiya: