Skip to content

Asuksen Emolevyyn ledit arduinolla Helsingin Uskalla Yrittää finaalia varten.

License

Notifications You must be signed in to change notification settings

mazkdevf/ArduinoUno-Emolevy-leds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ArduinoUno-Emolevy-leds

#include <Adafruit_NeoPixel.h>
#ifdef AVR
#include <avr/power.h>
#endif

#define PIN 2
#define NUMPIXELS 10
Adafruit_NeoPixel pikselit(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

void setup()
{
#if defined(AVR_ATtiny85) && (F_CPU == 16000000)
  clock_prescale_set(clock_div_1);
#endif
  pikselit.begin();
}

#define SIIRTYMISAIKA 1200

void loop()
{
  static unsigned long siirtymisenAlkuaika = 0;
  static int nykyinenPikseli = 0;
  static bool onkoSiirtymassa = false;

  if (!onkoSiirtymassa)
  {
    pikselit.clear();
    for (int i = 0; i < NUMPIXELS; i++)
    {
      pikselit.setPixelColor(i, pikselit.Color(255, 255, 255));
    }
    pikselit.show();

    if (millis() - siirtymisenAlkuaika >= SIIRTYMISAIKA)
    {
      siirtymisenAlkuaika = millis();
      nykyinenPikseli = 2;
      onkoSiirtymassa = true;
    }
  }
  else
  {
    int punainen = 255;
    int vihreä = map(millis() - siirtymisenAlkuaika, 255, SIIRTYMISAIKA, 255, 0);
    int sininen = 0;

    pikselit.setPixelColor(nykyinenPikseli, pikselit.Color(punainen, vihreä, sininen));
    pikselit.show();

    if (millis() - siirtymisenAlkuaika >= SIIRTYMISAIKA)
    {
      nykyinenPikseli++;
      if (nykyinenPikseli >= NUMPIXELS)
      {
        onkoSiirtymassa = false;
      }
      else
      {
        siirtymisenAlkuaika = millis();
      }
    }
  }
}

image

About

Asuksen Emolevyyn ledit arduinolla Helsingin Uskalla Yrittää finaalia varten.

Topics

Resources

License

Stars

Watchers

Forks

Languages