Arduino + keypad, lcd, modulo rtc e sensori vari.

Salve a tutti,
mi sta bazzicando per la testa l'idea di utilizzare arduino più uno schermo lcd e un keypad per la lettura di alcuni sensori (il modulo rtc servirebbe ovviamente per avere il timestamp delle letture).
Ho quindi consultato un pò la documentazione/tutorial/forum/web e ho più o meno capito di cosa ho bisogno:

A questo punto però mi sono accorto che i pin digitali di input/output di arduino 2009 non mi bastano in quanto ne ha 14 mentre a me ne servono 47 (6 per il display LCD, 2 per il modulo RTC, 9 per il keypad e una trentina per i sensori). La soluzione più semplice sarebbe quella di utilizzare un arduino mega ma visto che siamo in tema "hack" ho pensato di utilizzare 6 74HC165N attaccandone 3 direttamente all'arduino e gli altri 3 in cascata ai primi (come spiegato qui). In questa maniera utilizzerei 12 pin sull'arduino per "comandare" 48 pin (6*8).

A questo punto però lato software mi sorge un dubbio: come faccio a gestire il tutto? Dalla documentazione sopra citata dello SN74HC165N dovrei fare un continuo "polling" per sapere se (per esempio) è stato premuto un tasto o un sensore è stato "attivato". A quel punto poi farei quello che devo fare.
Il dubbio mi viene perchè nella documentazione della libreria per il keypad c'è la funzione "addEventListener(keypadEvent)" che intercetta automaticamente la pressione di un tasto (se fa lei polling in background non lo so, non sono andato a vedere i sorgenti). Nel mio caso comunque non potrei utilizzare tale libreria in quanto non posso "passarci" i pin "fisici" come parametri.

Secondo voi è realizzabile la cosa? E una volta realizzata, funziona? :slight_smile:
Guardando il codice di "utilizzo" per il SN74HC165N tra un pool e l'altro nel mio caso passerebbero 1,255 millisecondi: secondo la vostra esperienza va bene o è un valore alto/basso (per esempio per gestire l'input da keypad)?

Grazie e ciao
InSa