Espandere pin Arduino Uno

Ciao,
sono nuovo sia del forum che del mondo dell'elettronica ed essendomi avvicinato da poco ad Arduino, avrei un aiuto da chiedervi: come posso aumentare i pin di Arduino Uno (in particolare quelli analogici o digitali-PWM) con un integrato? Perchè necessito di più pin di quelli che ci sono.
Vorrei capire come creare i collegamenti tra l'integrato, nuovi pin ed arduino e se c'è bisogno di "istruire" Arduino (e come) perchè sappia dei nuovi pin.
Se volete darmi anche un consiglio su quale integrato utilizzare, ben venga.

Se hai fame di input/output prenditi un arduino mega 2560

ciao

Per i pin analogici usi un ADC esterno tipo quello indicato qui: http://arduino.cc/forum/index.php/topic,101197.msg759154.html#msg759154
Per i digitali-pwm c'è il pwm shield: http://www.robot-italy.com/product_info.php?products_id=2113
Per i collegamenti io uso questi: http://www.robot-italy.com/product_info.php?cPath=180_183&products_id=2101 :grin:
... e, naturalmente, dei programmare Arduino in C++

Grazie per il celere intervento ragazzi, ma:
@pablos: ovviamente sono a conoscenza di arduino Mega, ma per ora non mi interessa, preferisco smanettare di mio così imparo qualcosa in più e mi costa pure meno :slight_smile:

@PaoloP: vale un po' lo stesso discorso per quanto riguarda lo shield, mentre per l'ADC, bene, ma vorrei sapere se devo istruire arduino e come per fargli tener presente i nuovi pin (o le istruzioni glie le passo tramite il pin a cui è connesso l'ADC su arduino? Ma anche in questo caso, una piccola delucidazione su esempio di codice non mi dispiacerebbe :)).
Lo so che Arduino va programmato :smiley: ed in C mi sembra dalla sintassi più che C++.

Vi espongo anche una delle cose che avevo pensato: se aggiungessi un altro ATmega328 (o un'altra versione che sia)? Costo contenutissimo (lo si trova sui 3€), lo metto su una breadboard, lo collego tramite un pin all'arduino e...poi? Ovviamente con le opportune aggiunge eventuali di resistenze, ecc per l'alimentazione se ce ne fosse bisogno (non ho visto in dettaglio il datasheet di questo microcontroller).
Se avete altro da consigliarmi (seguendo sempre questa strada), ditemi pure.

Il problema delle espansioni se così vogliamo chiamarlo è che quando vuoi interrogare e quindi conoscerne il suo stato 1/0 non puoi farlo, sei obbligato a memorizzare su variabile lo stato imposto, dal mio punto di vista non poter fare digitalread della porta (ES:) 174 mi fa girare i marun :)..... per fare questo con espansioni devi avere un altro microcontroller. Usare i chip di espansione è come mandare un piccione viaggiatore ...... chissà se il messaggio arriverà a destinazione!!!! speriamo :slight_smile:

se sei al punto di risparmiare 10 caffè ben venga, ma è solo una questione di una cosa fatta bene, un espansione senza ritorno è una cacata spaziale :slight_smile:

ciao

Quindi dici che non sarebbe una buona soluzine aggiungere un altro ATmega? Ma se è solo per il dover memorizzare in variabili, non mi sembra un problema.
Se invece considerassi chip i2c?

p.s.: il discorso economico era solo un'osservazione in più tanto per...:smiley: quello che mi interessa invece e che mi piace, è smanettare il più possibile, quindi cerco di evitare moduli già pronti da utilizzare. Tra l'altro se ho già l'Arduino Uno, perchè prendere il Mega solo per pin aggiuntivi che mi servono? I vari integrati ci sono anche per questo.

Puoi allora prendere una cosa del genere: http://www.robot-italy.com/product_info.php?cPath=119_154&products_id=1896 o solo la scheda: http://www.robot-italy.com/product_info.php?cPath=119_154&products_id=2307 e crearti una tua shield personalizzata dove puoi montarci gli integrati che ti servono oppure un altro controllore.

Se non erro l'adc segnalato ha già il controller i2c a bordo.

Si, infatti prenderò una proto shield e sto valutando quale integrato prendere che lavori col protocollo i2c.
Grazie per il supporto :slight_smile: