2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Preto som postavil tento projekt, aby videl 12 LED Pixel fungovať. Tu som našiel tento so 16. A videl som tento integrovaný náramok, ale chcel som vidieť, ako rôzne prstene, rôzne veľkosti budú fungovať nezávisle na sebe.
Takže namiesto pripojenia digitálneho výstupu z jednej dosky k digitálnemu vstupu na druhej doske, ako naznačuje druhý obrázok, mojim cieľom bolo mať na každej doske jedno vyhradené DI.
Krok 1: Materiál
Krok 2: Kód
Na začiatok som mal neon.ino, tento bol veľmi jednoduchý, našiel som online a upravenie portu a veľkosti prsteňa, fungovalo to.
Mal som predstavu, že bude potrebné replikovať premenné, ale nebol som si istý, ktoré z nich sú potrebné a ktoré môžu zostať tak, ako sú všetky prstence NeoPixel.
ORIGINÁL
#zahrnúť
#define PIN 2 // vstupný pin Neopixel je pripojený k
#define NUMPIXELS 12 // počet neopixelov v Ringu
Pixely Adafruit_NeoPixel = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
NOVÝ
#include #define PIN1 6 // pripojenie 12 neopixelových pásikov k digitálnemu PIN6
#define PIN2 13 // pripojte 6 neopixelových pásikov k digitálnemu PIN7
#define PIN3 2 // pripojte 24 neopixelových prstencov k digitálnemu PIN8
#define PIN4 10 // pripojenie 16 neopixelových prstencov k digitálnemu PIN9
#define PIN5 9 //
#define NUMPIXELS1 24
#define NUMPIXELS2 16
#define NUMPIXELS3 12
#define NUMPIXELS4 6
#define NUMPIXELS5 1
Adafruit_NeoPixel pixely1 = Adafruit_NeoPixel (NUMPIXELS1, PIN1, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixely2 = Adafruit_NeoPixel (NUMPIXELS2, PIN2, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixely3 = Adafruit_NeoPixel (NUMPIXELS3, PIN3, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixely4 = Adafruit_NeoPixel (NUMPIXELS4, PIN4, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixely5 = Adafruit_NeoPixel (NUMPIXELS5, PIN5, NEO_GRB + NEO_KHZ800);
neonmultiple.txt
bol ďalší kód, ktorý som našiel, ale na základe nastavenia tlačidiel rýchlosti … Potreboval som zlúčiť oba kódy.
prvýkrát som použil
prázdna slučka () {
ring1 ();
ring2 ();
ring3 ();
ring4 ();
ring5 ();
Preto bolo ľahké vidieť všetok kód a premenné, ktoré som potreboval na „štvornásobné kopírovanie“z pôvodného Neon.ino
Časť nastavenej farby som ponechal iba raz, pretože všetky svetlá sa môžu náhodne meniť, takže nie je potrebné nastavovať farbu1, setcolor2 … atď.
void setColor () {redColor = random (0, 255); greenColor = náhodný (0, 255); blueColor = náhodný (0, 255); Serial.print ("red:"); Serial.println (redColor); Serial.print ("zelený:"); Serial.println (greenColor); Serial.print ("modrý:"); Serial.println (blueColor); }
konečný kód, ktorý som použil, sa nazýva multiple_rings1.ino
Krok 3: Výsledok
môže zatiaľ iba simulovať v thinkercad
www.tinkercad.com/things/0wTu8lCQSkQ-multiple-rings/editel?sharecode=0vbsPyNB7n9it870QBXkyNBV0DyDmmzPCLtHva5fRXk=