Costruzione Orologio a led da parete - guida per dummies

Etemenanki:
25Hz e' la frequenza di variazione dei film su pellicola ... non e' che lampeggino molto :wink: (la retina gia a 20Hz, salvo alcune eccezioni, non si accorge dello sfarfallio)

Al cinema non so, ma su un LED si vede benissimo, peggio ancora se sono più LED (o display) uno a fianco all'altro. Basta comandare l'onboard LED della UNO a 25 Hz e 25% duty:

#define OUTPIN 13 // onboard LED
uint8_t  n = 0;
uint32_t looptime = millis();

void setup(){ pinMode(OUTPIN, OUTPUT); }

void loop(){
   if (millis() - looptime  >=  10){
       looptime += 10;
       digitalWrite(OUTPIN, (n) ? 0 : 1); 
       n = (n + 1) & 3;
    } 
}

ghezzia:
Aspetta aspetta! diciamo che la scelta del multiplexing mi sembrava fosse logica dal momento che la uno (o la MCU che la sostituirà) non hanno un numero sufficiente di pin... giusto?

La UNO non ha sufficienti pin per comandare contemporaneamente tutti i segmenti, da cui è nata prima l'idea del multiplex (e allora strettamente parlando per l'orologio i pin sarebbero bastati), ma poi è nata anche quella degli shift register per risparmiare comunque pin. Ora usando gli shift register si può lo stesso tenere in piedi il multiplex, oppure si possono usare più shift register facendo a meno del multiplex (i display di brunello).

ghezzia:
come riconosco positivo da negativo dei transistor bc337 e bc 327?

Interrogando l'oracolo dei componenti ::slight_smile: E anche qui sarebbe bene provare a mano qualche configurazione per vedere come comandare i LED con i transistor (cioè come usare i transistor, sia NPN che PNP come interruttori comandati dalle uscite di Arduino).