VLCinstruct

Leren van elkaar

NLT

Arduino Neopixel Ring-60-led Clock

Het project:

Toen wij dit project begonnen hadden nog geen idee wat wij wilden gaan doen. Het koste ook wat tijd om de motivatie te vinden voor dit project. Wij zijn op het internet gaan kijken voor goede projecten. De meeste van de projecten waren of veel te ingewikkeld of we hadden de materialen niet. Toen zei meneer Kappé dat hij een 60 led ring kon halen voor een leuk project. na een aantal dagen kwam de 60 led ring binnen en konden wij aan de slag. Na een tijdje van code opzoeken en dingen veranderen, lukte het eindelijk om het aan de praat te krijgen. Nadat dat gelukt was hebben wij wat veranderd aan de codes en alles lukte goed.  Het was een heel leuk project en het ging er goed.

Materialen: Laptop, adruino, usb kabel, drie draadje (man,man) en een 60 led neopixel ring.

Link van de codes en libraries en hoe je ze moet gebruiken:

https://learn.adafruit.com/neopixel-60-ring-clock/code

Code:

#include <Wire.h>
#include <RTClib.h>
#include <Adafruit_NeoPixel.h>
#define PIN 6
#define PIXEL 60
Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIXEL, PIN, NEO_GRB + NEO_KHZ800);
RTC_DS1307 RTC; // Establish clock object
DateTime Clock; // Holds current clock time
byte hourval, minuteval, secondval;
void setup() {
 Serial.begin(9600);
  Wire.begin();        	// Begin I2C
  RTC.begin();   // begin clock
    if (! RTC.isrunning()) {
//	Serial.println("RTC is NOT running!");
	// following line sets the RTC to the date & time this sketch was compiled
  }
//  RTC.adjust(DateTime(__DATE__, __TIME__));
  strip.begin();
  strip.show(); // Initialize all pixels to 'off'
  strip.setBrightness(20);
}
void loop() {
    Clock = RTC.now(); // get the RTC time
    secondval = Clock.second();  // get seconds
    minuteval = Clock.minute();  // get minutes
    hourval = Clock.hour();  	// get hours
    if(hourval > 11) hourval -= 12; // This clock is 12 hour, if 13-23, convert to 0-11
    hourval = (hourval*60 + minuteval) / 12;   
    strip.setPixelColor(hourval, 0x008080);strip.setPixelColor(hourval-1, 0x004040);strip.setPixelColor(hourval+1, 0x004040);
//    strip.setPixelColor(hourval-2, 0x001010);strip.setPixelColor(hourval+2, 0x001010);
    strip.setPixelColor(minuteval, 0x800080);
//    strip.setPixelColor(minuteval-1, 0x200020);strip.setPixelColor(minuteval+1, 0x200020);
    strip.setPixelColor(secondval, 0x808000);//strip.setPixelColor(secondval-1, 0x002F00);strip.setPixelColor(secondval+1, 0x002F00);
    strip.show();
    strip.setPixelColor(hourval, 0x000000);strip.setPixelColor(hourval-1, 0x000000);strip.setPixelColor(hourval+1, 0x000000);
    strip.setPixelColor(hourval-2, 0x000000);strip.setPixelColor(hourval+2, 0x000000); 
    strip.setPixelColor(minuteval, 0x000000);strip.setPixelColor(minuteval-1, 0x000000);strip.setPixelColor(minuteval+1, 0x000000);
    strip.setPixelColor(secondval, 0x000000);//strip.setPixelColor(secondval-1, 0x000000);strip.setPixelColor(secondval+1, 0x000000);
  delay(25);
/*
   Serial.print(hourval, DEC);
   Serial.print(':');
  Serial.print(minuteval, DEC);
   Serial.print(':');
   Serial.println(secondval, DEC);
*/
}

Leave a Reply

Theme by Anders Norén