Arduino kontrolleras elektrisk ljus (3 / 6 steg)
Steg 3: Ljuseffekt
För belysning köpte jag några NeoPixel ringar, där varje lampa är individuellt adresserbara och färg kan ändras. Jag grävde fram en billig Arduino Nano som jag fick från ebay för ca £4 och anslutit den tillsammans.
För att tråd det upp, ansluta 5V och jord från NeoPixel ring till 5V och GND av Arduino. Anslut DIN från NeoPixel ring till D6 av Arduino. Slutligen, Anslut VIN och GND från Arduino 9V batteri.
Sedan hämta Arduino IDE och programmera följande kod till Arduino Nano med den inbyggda USB-kontakten. Koden bygger på Adafruit NeoPixel bibliotek, så se till att du ladda ner det också.
#include < Adafruit_NeoPixel.h >
#define DELAY_MULTIPLER 100
#define stift 6
Adafruit_NeoPixel strip = Adafruit_NeoPixel (16, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
Strip.BEGIN();
Strip.show();
}
void loop()
{
Fire(1,Random(50,500));
}
void brand (uint8_t vänta, uint8_t gånger)
{
för (uint16_t t = 0; t < gånger; t ++)
{
uint32_t cBaseYellow = remsa. Färg (255, 100, 10);
uint32_t redFilcker = remsa. Färg (255, 40, 0);
uint32_t blueFilcker = remsa. Färg (255, 100, 100);
för (uint16_t jag = 0; jag < strip.numPixels(); i ++)
{
strip.setPixelColor (i, cBaseYellow);
}
uint8_t blå;
för (uint16_t jag = 0; jag < 1; i ++)
{
blå = random(1,strip.numPixels());
strip.setPixelColor (blå, blueFilcker);
}
uint8_t röda;
för (uint16_t jag = 0; jag < 4; i ++)
{
röd = random(1,strip.numPixels());
strip.setPixelColor (röd, redFilcker);
}
Strip.show();
Delay(Wait*DELAY_MULTIPLER);
}
}