Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Så jeg bygde dette prosjektet for å se 12 LED Pixel arbeide. Jeg fant denne med 16 her. Og jeg så dette integrerte armbåndet, men jeg ønsket å se hvordan forskjellige ringer, forskjellige størrelser ville fungere uavhengig av hverandre.
Så i stedet for å koble digital utgang fra det ene kortet til den digitale inngangen på det andre kortet som det andre bildet antyder, var målet mitt å ha en dedikert DI på hvert brett.
Trinn 1: Materiale
Trinn 2: Kode
Jeg hadde neon.ino til å begynne med, denne var veldig rett frem, jeg fant på nettet og justerte porten og størrelsen på ringen, det fungerte.
Jeg hadde ideen om at det ville være behov for å replikere variablene, men var ikke sikker på hvilke som var nødvendige og hvilke som kunne forbli som for alle NeoPixel -ringene.
OPPRINNELIG
#inkludere
#define PIN 2 // input pin Neopixel er festet til
#define NUMPIXELS 12 // antall neopiksler i Ring
Adafruit_NeoPixel piksler = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
NY
#include #define PIN1 6 // koble 12 Neopixel -stripe til Digital PIN6
#define PIN2 13 // koble 6 Neopixel -stripe til Digital PIN7
#define PIN3 2 // koble 24 Neopixel -ring til Digital PIN8
#define PIN4 10 // koble 16 Neopixel -ring til Digital PIN9
#define PIN5 9 //
#define NUMPIXELS1 24
#define NUMPIXELS2 16
#define NUMPIXELS3 12
#define NUMPIXELS4 6
#define NUMPIXELS5 1
Adafruit_NeoPixel pixels1 = Adafruit_NeoPixel (NUMPIXELS1, PIN1, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixels2 = Adafruit_NeoPixel (NUMPIXELS2, PIN2, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixels3 = Adafruit_NeoPixel (NUMPIXELS3, PIN3, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixels4 = Adafruit_NeoPixel (NUMPIXELS4, PIN4, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixels5 = Adafruit_NeoPixel (NUMPIXELS5, PIN5, NEO_GRB + NEO_KHZ800);
neonmultiple.txt
var en annen kode jeg har funnet, men basert på justering av knappene for hastigheten … måtte jeg slå sammen begge kodene.
for første gang jeg brukte
void loop () {
ring1 ();
ring2 ();
ring3 ();
ring4 ();
ring5 ();
Så det var lett å se all koden og variablene jeg trengte for å "firedoble" fra den opprinnelige Neon.ino
Den angitte fargedelen beholdt jeg bare én gang, siden alle lysene kan skifte tilfeldig, så du trenger ikke å settecolor1, setcolor2 … etc
void setColor () {redColor = tilfeldig (0, 255); greenColor = tilfeldig (0, 255); blueColor = tilfeldig (0, 255); Serial.print ("rød:"); Serial.println (redColor); Serial.print ("grønt:"); Serial.println (greenColor); Serial.print ("blå:"); Serial.println (blueColor); }
den siste koden jeg brukte kalles multiple_rings1.ino
Trinn 3: Resultat
kan bare simulere i thinkercad foreløpig
www.tinkercad.com/things/0wTu8lCQSkQ-multiple-rings/editel?sharecode=0vbsPyNB7n9it870QBXkyNBV0DyDmmzPCLtHva5fRXk=