Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Beləliklə, 12 LED Pikselin işlədiyini görmək üçün bu layihəni qurdum. Burada 16 olanı tapdım. Və bu birləşdirilmiş bilərziyi gördüm, amma fərqli üzüklərin, fərqli ölçülərin bir -birindən asılı olmayaraq necə işləyəcəyini görmək istədim.
Beləliklə, ikinci şəkildən göründüyü kimi bir lövhədən Rəqəmsal Çıxışı digər lövhədəki Rəqəmsal Girişə bağlamaq əvəzinə, məqsədim hər bir lövhədə bir xüsusi Dİ -nin olması idi.
Addım 1: Material
Addım 2: Kod
Başlamaq üçün neon.ino var idi, bu çox düz idi, İnternetdə tapdım və limanı və üzük ölçüsünü tənzimlədim, işlədi.
Dəyişənləri təkrarlamağa ehtiyac olacağını düşündüm, amma hansının lazım olduğunu və hansının bütün NeoPixel üzüklərində olduğu kimi qala biləcəyini bilmirdim.
ORİJİNAL
#daxil edin
#PIN 2 təyin edin // Neopixel giriş pininə əlavə olunur
#define NUMPIXELS 12 // Ringdəki neopiksellərin sayı
Adafruit_NeoPixel pikselləri = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
YENİ
#incine #define PIN1 6 // rəqəmsal PIN6 -ya 12 Neopixel şeridi bağlayın
#define PIN2 13 // rəqəmsal PIN7 -ə 6 Neopixel şeridi bağlayın
#define PIN3 2 // 24 Neopixel üzüyü Digital PIN8 -ə qoşun
#define PIN4 10 // rəqəmsal PIN9 -a 16 Neopixel üzük bağlayın
#PIN5 9 təyin edin //
#müəyyən NUMPIXELS1 24
#müəyyən NUMPIXELS2 16
#müəyyən NUMPIXELS3 12
#müəyyən NUMPIXELS4 6
#müəyyən NUMPIXELS5 1
Adafruit_NeoPixel piksel1 = Adafruit_NeoPixel (NUMPIXELS1, PIN1, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel piksel2 = Adafruit_NeoPixel (NUMPIXELS2, PIN2, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel piksel3 = Adafruit_NeoPixel (NUMPIXELS3, PIN3, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel piksel4 = Adafruit_NeoPixel (NUMPIXELS4, PIN4, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel piksel5 = Adafruit_NeoPixel (NUMPIXELS5, PIN5, NEO_GRB + NEO_KHZ800);
neonmultiple.txt
tapdığım başqa bir kod idi, ancaq düymələri sürətə uyğunlaşdırmağa əsaslanaraq… hər iki kodu birləşdirmək lazım idi.
ilk dəfə istifadə etdim
boşluq döngəsi () {
üzük1 ();
üzük2 ();
üzük3 ();
üzük4 ();
üzük 5 ();
Beləliklə, orijinal Neon.inodan "dördqat artırmaq" üçün lazım olan bütün kodu və dəyişənləri görmək asan idi.
Yalnız bir dəfə saxladığım rəng hissəsi, çünki bütün işıqlar təsadüfi olaraq dəyişə bilər, buna görə də setcolor1, setcolor2… və s.
boşluq setColor () {redColor = təsadüfi (0, 255); greenColor = təsadüfi (0, 255); blueColor = təsadüfi (0, 255); Serial.print ("qırmızı:"); Serial.println (redColor); Serial.print ("yaşıl:"); Serial.println (greenColor); Serial.print ("mavi:"); Serial.println (blueColor); }
istifadə etdiyim son koda multi_rings1.ino deyilir
Addım 3: Nəticə
hələlik yalnız düşüncə mərkəzində simulyasiya edə bilər
www.tinkercad.com/things/0wTu8lCQSkQ-multiple-rings/editel?sharecode=0vbsPyNB7n9it870QBXkyNBV0DyDmmzPCLtHva5fRXk=