contollo 50 led

ciao a tutti!!
avrei una piccola questione da sottoporvi che non mi è molto chiara...
ho un arduino Mega al quale devo connettere una 50ina di led, ora per agevolarmi il lavoro vorrei poter inizializzarli tutti insieme in un'unica espressione...it's possible?
tipo una cosa del genere:

int ledPin[50] = {2,3,4,5,6,7,8,9,10,.....,50};

e poi..
nel pinMode() se faccio un ciclo" for" tipo:

for (int i=0, i < maxLedPins,i++)
{
pinMode(ledPins*,OUTPUT);*

  • }*

il compilatore mi dice
error: expected initializer before '<' token
???
grazie a tutti in anticipo :wink:

devi usare ";" non ","

for (int i=0; i < maxLedPins; i++)

CIAO ! :wink:

Ciao fat_ciccions

Non so se i LED vuoi pilotare direttamnete o hai messo dei transistori o altro in mezzo.
Considera per favore che la corrente totale che il Atmega puó dare ( la somma di tutte le correnti delle singole uscite) é 200mA percui se vuoi accendere tutti i led Ti restano malappena 4 mA a Led.

Absolute Maximum Ratings: DC Current VCC and GND Pins................................ 200.0 mA
a pagina 367 di http://www.atmel.com/dyn/resources/prod_documents/doc2549.PDF

Ciao Uwe

Ciao a tutti

Se accendi tutti i led insieme rischi di "friggere" il micro, potresti mettere tra le uscite di Arduino ed i led dei buffer cmos 4050

"Considera per favore che la corrente totale che il Atmega puó dare ( la somma di tutte le correnti delle singole uscite) é 200mA percui se vuoi accendere tutti i led Ti restano malappena 4 mA a Led."

scusate ma ogni uscita dell'arduino mega non fornisce 40mA?

@fat_....

Si, ma se per caso accendi contemporaneamente tutti i led: 200 mA / 50 = 4 mA- significa che ci devi mettere in serie una resistenza per limitare la corrente a 4 mA altrimenti bruci il micro.
Ovvero: un'uscita arriva a 40 mA ma la somma di tutte le correnti erogate non deve superare 200 mA

ciao fat_ciccions
Sí, un uscita puó dare fino a 40mA, ma i pin di alimentazione e massa reggono solo 200mA (da qualche parte deve entrare o uscire la corrente che esce/entra dalle uscite).
Ciao Uwe

grazie a tutti degli utili chiarimenti...:wink:
alla fine userò il transistor 2n2222 su ogni canale led come in questo link:

...a proposito nessun consiglio su come inizializzare con un comando veloce tutte ste uscite led?

Salve ragazzi, ma usare gli shift register in cascata per accendere questi led non va bene? Collegarli direttamente così con i transistor si utilizzano tutti i pin del mega ed è davvero uno spreco visto che è un lavoro che potrebbe essere fatto benissimo con 3 pin. Certo, lo script si complica un pochino, ma secondo me vale la pena.

ciao fat_ciccions

Al posto dei transistori puoi usare anche un uln2803. Ne ha 8 transistori.

Ciao Uwe

ciao, potresti anche utilizzare dei tcl5940 in cascata, pilotati con i2c