From 96ff73e04c7b70ded06666471196c8f1f459ba91 Mon Sep 17 00:00:00 2001 From: Mike Barela Date: Wed, 2 Jan 2019 09:50:05 -0500 Subject: [PATCH] create arduino code for ring This project may be coded in _either_: CircuitPythoin, Arduino, or Microsoft MakeCode Maker. This is the Arduino code. It uses the Adafruit_NeoPixel library. --- Gemma_Nano_Ring/NanoRing.ino | 65 ++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Gemma_Nano_Ring/NanoRing.ino diff --git a/Gemma_Nano_Ring/NanoRing.ino b/Gemma_Nano_Ring/NanoRing.ino new file mode 100644 index 00000000..f3dd6c94 --- /dev/null +++ b/Gemma_Nano_Ring/NanoRing.ino @@ -0,0 +1,65 @@ +#include +#define PIN 1 +#define NUM_LEDS 3 + +Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800); + +// R G B +uint8_t myColors[][5] = { + {30, 144, 255}, // dodger blue + {232, 100, 255}, // purple + {204, 0, 204}, // + {200, 200, 20}, // yellow + {30, 200, 200}, // blue + }; + +// don't edit the line below +#define FAVCOLORS sizeof(myColors) / 5 + +void setup() { + strip.begin(); + strip.setBrightness(20); + strip.show(); // Initialize all pixels to 'off' +} + +void loop() { + flashRandom(10, 1); // first number is 'wait' delay, shorter num == shorter twinkle + flashRandom(10, 3); // second number is how many neopixels to simultaneously light up + flashRandom(10, 2); +} + +void flashRandom(int wait, uint8_t howmany) { + + for(uint16_t i=0; i= 0; x--) { + int r = red * x; r /= 5; + int g = green * x; g /= 5; + int b = blue * x; b /= 5; + + strip.setPixelColor(j, strip.Color(r, g, b)); + strip.show(); + delay(wait); + } + } + // LEDs will be off when done (they are faded to 0) +}