İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Bu projeyi 12 LED Pixel'in çalıştığını görmek için yaptım. Bunu 16 ile burada buldum. Ve bu entegre bilekliği gördüm ama farklı yüzüklerin, farklı ebatların birbirinden bağımsız nasıl çalıştığını görmek istedim.
Dolayısıyla, ikinci resimde gösterildiği gibi, bir panodan Dijital Çıkışı diğer panodaki Dijital Girişe bağlamak yerine, amacım her bir panoda özel bir DI'ye sahip olmaktı.
Adım 1: Malzeme
2. Adım: Kodlayın
Başlangıç için neon.ino'm vardı, bu çok basitti, internetten buldum ve bağlantı noktasını ve halkanın boyutunu ayarlayarak işe yaradı.
Değişkenleri kopyalama ihtiyacı olacağı fikrine sahiptim, ancak hangilerinin gerekli olduğundan ve hangilerinin tüm NeoPixel halkaları için olduğu gibi kalabileceğinden emin değildim.
ORİJİNAL
#Dahil etmek
#define PIN 2 // Neopixel giriş pinine takılır
#define NUMPIXELS 12 // Ring'deki neopiksel sayısı
Adafruit_NeoPixel piksel = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
YENİ
#include #define PIN1 6 //12 Neopiksel şeridi Dijital PIN6'ya bağlayın
#define PIN2 13 //6 Neopiksel şeridi Dijital PIN7'ye bağlayın
#define PIN3 2 // 24 Neopiksel halkayı Dijital PIN8'e bağlayın
#define PIN4 10 // 16 Neopiksel halkayı Dijital PIN9'a bağlayın
#define PIN5 9 //
#define NUMPIXELS1 24
#define NUMPIXELS2 16
#define NUMPIXELS3 12
#define NUMPIXELS4 6
#define 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
bulduğum başka bir koddu, ancak hız için ayarlama düğmelerine dayanarak… Her iki kodu da birleştirmem gerekiyordu.
ilk defa kullandım
boşluk döngüsü () {
halka1();
halka2();
halka3();
ring4();
halka5();
Bu nedenle, orijinal Neon.ino'dan "dört çoğaltmak" için ihtiyaç duyduğum tüm kodu ve değişkenleri görmek kolaydı.
Tüm ışıklar rastgele değişebildiğinden, setcolor1, setcolor2…
void setColor(){ redColor = rastgele(0, 255); yeşilRenk = rastgele(0, 255); blueColor = rastgele(0, 255); Serial.print("kırmızı:"); Serial.println(kırmızıRenk); Serial.print("yeşil:"); Serial.println(greenColor); Serial.print("mavi:"); Serial.println(blueColor); }
kullandığım son kodun adı multiple_rings1.ino
3. Adım: Sonuç
şimdilik sadece thinkercad'de simüle edebilir
www.tinkercad.com/things/0wTu8lCQSkQ-multiple-rings/editel?sharecode=0vbsPyNB7n9it870QBXkyNBV0DyDmmzPCLtHva5fRXk=