Egyszerű, Arduino alapú Knight Rider futófény

Amikor először találkoztam a mikrovezérlőkkel vagy 20 éve, mi más lehetett volna az első projekt, mint egy Knight Rider futófény? Most ez persze már piti költségen, sokkal kisebb tudással és méretben megoldható, szal’ miért ne kezdjük ezzel ismét?

Felhasznált eszközök:

A teljes alkatrész költség, szállítással együtt kb. 600Ft 🙂

Összerelés:

A P0 lábat kell az RGB LED csík DATA bemenetére kötni, az 5V-ot és a GND-t pedig ellophatjuk a DigiSpark erre kialakított csatlakozóiról 🙂

Program:

#include 
#ifdef __AVR__
  #include <avr/power.h>
#endif

#define PIN 0

int cnt = 0;
int direction = 1;

Adafruit_NeoPixel strip = Adafruit_NeoPixel(8, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  #if defined (__AVR_ATtiny85__)
    if (F_CPU == 16000000) clock_prescale_set(clock_div_1);
  #endif

  strip.begin();
  strip.setBrightness(20);
  strip.show(); // Initialize all pixels to 'off'
}

void loop() {

  colorWipe(strip.Color(0, 0, 0),0);
  strip.setPixelColor(cnt, strip.Color(255, 0, 0));
  strip.show();
  delay(100);    

  if ( cnt == 7 ) {
    direction = 1;
  }

  if ( cnt == 0 ) {
    direction = 0;
  }

  if ( direction == 0 ) {
    cnt++;
  }
  else {
    cnt--;
  }

}

void colorWipe(uint32_t c, uint8_t wait) {
  for(uint16_t i=0; i<strip.numPixels(); i++) {
    strip.setPixelColor(i, c);
    strip.show();
    delay(wait);
  }
}