#include <Adafruit_NeoPixel.h>
#include <EEPROM.h>
Adafruit_NeoPixel led(20, 11, NEO_GRB + NEO_KHZ800);
int amount = 0;
unsigned long ms = 0;
bool sw = true;
void setup() {
Serial.begin(9600);
led.begin();
for (int i = 0; i < 19; i++) {
led.setPixelColor(i, led.Color(0,0,0));
}
Serial.println("Input number between 0 - 4 to light the candles!");
if (EEPROM.read(1) != 255) {
amount = EEPROM.read(1);
}
}
void loop() {
if (Serial.available()) {
amount = Serial.parseInt();
EEPROM.update(1, amount);
Serial.println(amount);
if (Serial.available()) {
Serial.read();
}
ms = millis();
}
if (ms < millis()) {
ms = millis() + 1000;
led.clear();
if (sw) {
sw = !sw;
for (int i = 0; i < 20; i++) {
led.setPixelColor(i, led.Color(0, 0, 0));
}
} else {
sw = !sw;
for (int i = 0; i < 20; i++) {
led.setPixelColor(i, led.Color(0, 255, 0));
}
}
for (int i = 0; i < 4; i++) {
led.setPixelColor(i * 5, led.Color(0, 0, 0));
}
for (int i = 0; i < amount; i++) {
led.setPixelColor(i * 5, led.Color(255, 255, 0));
}
led.show();
}
}