INHOUDSOPGAWE:

Veelvuldige onafhanklike NeoPixel -ringe: 3 stappe
Veelvuldige onafhanklike NeoPixel -ringe: 3 stappe

Video: Veelvuldige onafhanklike NeoPixel -ringe: 3 stappe

Video: Veelvuldige onafhanklike NeoPixel -ringe: 3 stappe
Video: ESP32 Tutorial 12 - WS2812 RGB Srip 4 Project with SunFounder's ESP32 IoT Learnig kit 2024, November
Anonim
Verskeie onafhanklike NeoPixel -ringe
Verskeie onafhanklike NeoPixel -ringe
Verskeie onafhanklike NeoPixel -ringe
Verskeie onafhanklike NeoPixel -ringe

Daarom het ek hierdie projek gebou om te sien hoe die 12 LED Pixel werk. Ek het hierdie een met 16 hier gevind. En ek het hierdie geïntegreerde armband gesien, maar ek wou sien hoe verskillende ringe, verskillende groottes onafhanklik van mekaar werk.

Dus, in plaas van om die digitale uitvoer van een bord aan te sluit op die digitale ingang op die ander bord, soos die tweede prentjie suggereer, was my doel om een toegewyde DI op elke bord te hê.

Stap 1: materiaal

Materiaal
Materiaal

Stap 2: Kode

Ek het die neon.ino gehad om mee te begin; hierdie een was baie eenvoudig, ek het aanlyn gevind en die poort en die grootte van die ring aangepas, dit het gewerk.

Ek het die idee gehad dat dit nodig sou wees om die veranderlikes te herhaal, maar ek was nie seker watter nodig is nie en watter kan bly soos vir alle NeoPixel -ringe.

OORSPRONKLIK

#insluit

#definieer PIN 2 // invoerpen waaraan Neopixel geheg is

#define NUMPIXELS 12 // aantal neopixels in Ring

Adafruit_NeoPixel pixels = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

NUUT

#sluit #definieer PIN1 6 // verbind 12 Neopixel -strook met digitale PIN6

#definieer PIN2 13 // verbind 6 Neopixel -strook met digitale PIN7

#definieer PIN3 2 // verbind 24 Neopixel -ring met digitale PIN8

#definieer PIN4 10 // verbind 16 Neopixel -ring met digitale PIN9

#definieer PIN5 9 //

#definieer NUMPIXELS1 24

#definieer NUMPIXELS2 16

#definieer NUMPIXELS3 12

#definieer NUMPIXELS4 6

#definieer 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

Ek het 'n ander kode gevind, maar gebaseer op die aanpassing van die knoppies vir die snelheid … ek moes albei kodes saamsmelt.

vir die eerste keer wat ek gebruik het

leemte -lus () {

ring1 ();

ring2 ();

ring3 ();

ring4 ();

ring5 ();

Dit was dus maklik om al die kode en veranderlikes te sien wat ek nodig het om te "viervoudig" van die oorspronklike Neon.ino

Ek het slegs een keer die vaste kleur gehou, aangesien al die ligte lukraak kan verander, dus hoef u nie color1, setcolor2, ens te stel nie

void setColor () {redColor = random (0, 255); greenColor = random (0, 255); blouKleur = ewekansig (0, 255); Serial.print ("rooi:"); Serial.println (redColor); Serial.print ("groen:"); Serial.println (greenColor); Serial.print ("blou:"); Serial.println (blueColor); }

die finale kode wat ek gebruik het, word multiple_rings1.ino genoem

Stap 3: Resultaat

Uitslag
Uitslag
Uitslag
Uitslag

kan vir eers slegs in denkercad simuleer

www.tinkercad.com/things/0wTu8lCQSkQ-multiple-rings/editel?sharecode=0vbsPyNB7n9it870QBXkyNBV0DyDmmzPCLtHva5fRXk=

Aanbeveel: