«

»

Apr 24

Stampa Articolo

Easter egg attiny85 neopixel sketch

E’ giunto il momento di programmare l’easter egg attiny85 neopixel sketch con il primo gioco di luce:

che ti permetterà di ottenere un primo effetto infinity mirror:

Easter egg attiny85 neopixel sketch attiny85 power

 

semplicemente collegando una alimentaziuone esterna come nella foto.

Il circuito lo hai realizzato seguendo le istruzioni descritte nel precedente articolo “Easter egg infinity mirror attiny85 neopixel” e per programmarlo puoi collegare il tuo attiny85 mediante 6 pin ad un arduino usato come programmatore ISP:

Attiny85 ProgramMode

ricordandoti del condenzatore da 10uF nella fase di programmazione come desritto in questi articoli:

L’easter egg attiny85 neopixel sketch

Lo sketch puoi realizzarlo partendo da uno degli esempi rilasciati con l’Adafruit NeoPixel library:

#include <Adafruit_NeoPixel.h>

#define PIN            0
#define NUMPIXELS      59

Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

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

  pixels.begin();

  for(int i=0;i<NUMPIXELS;i++){
    pixels.setPixelColor(i, pixels.Color(35,100,255));
    pixels.setBrightness(100);
    pixels.show();
    delay(50);
  }
}

void loop() { }

inizia dalla linea 01: includi la libreria Adafruit Neopixel che trovi nel Library Manager dell’IDE arduino;

linea 03: definisci il pin usato per comunicare con  i neopixel, con l’attiny85 puoi usare il pin 0;

linea 04: definisci il numero di led presenti sulla strip led neopixel, nel mio esempio ne ho utilizzati solo 59 dei 60 presenti, tagliando l’ultimo led per poter sistemare correttamente la strip nel progetto;

linea 06: imposta l’istanza della classe Adafruit_NeoPixel che userai per inviare i comandi ai led, l’istanza la chiami “pixel“;

linee 09-11: controlla che il micro utilizzato sia l’Attiny85, proprio quello che utilizzi in questo progetto, e imposta il prescaler in  modo che la cpu del micro possa funzionare a 16MHz ( 16000000 Hz ) se impostato in questo modo nell’IDE;

linea 13: inizializza l’istanza pixel in modo da poter inviare i comandi alla strip led;

linea 15: crea un ciclo da 0 al numero massimo dei led definito alla linea 04;

linea 16: imposta il colore di ciascun led al valore R=35, G=100, B=255, quello che vedi nella foto dell’easter egg attiny85 neopixel sketch in funzione;

linea 17: imposta la luminosità dei led a 100, il valore va da 0 (spenti) a 255 ( luminosità massima );

linea 18: visualizza le impostazioni delle linee precedenti sul led corrente;

linea 19: attendi 50 millisecondi tra l’accensione di un led ed il successivo;

linea 23: il ciclo loop() deve esistere, come sai, ma in questo sketch è vuoto.

Il risultato finale puoi vederlo nel video in alto ed è simile al seguente:

Easter egg infinity mirror attiny85 neopixel particolare

Permalink link a questo articolo: http://www.mauroalfieri.it/elettronica/easter-egg-attiny85-neopixel-sketch.html

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Puoi usare i seguenti tag ed attributi HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>