problema nel creare unna mqtrice di tasti

Ciao ragazzi 8)

Vorrei costruire un launchpad e per fare ciò devo creare una matrice di tasti.
Ho Arduino uno che mi permette di collegare al massimo 18 tasti (quindi una matrice 4 x 4) ma vorrei arrivare almeno a 6 x 6 .
Esiste Un modo per poter collegaare molti piu tasti?
Vi ringrazio in anticipo :grin:

Ciao Antonio,

ci sono diverse possibilità... la più semplice è forse quella di usare un decoder tipo il 74HC154 che ti converte 4 output in 16 (oppure il 74HC138 che fa 3 out in 8 linee), in pratica componi con i 4 output il codice binario della colonna che vuoi usare (0010 seleziona la colonna 2).
In questo modo puoi fare molto semplicemente matrici di tasti 16x4 o 8x4

se vuoi aumentare anche il numero di righe puoi usare un multiplexer (che funziona esattamente al contrario es. il 74HC151 8 line muliplexer), anche qui impostando il numero di riga da leggere con gli output di arduino e leggendo il valore di output del multiplexer tramite input arduino.

Bye, Stefano

Ciao,

per una matrice 6x6 (36 tasti) ti servono 12 pin ovvero 6 per le righe e 6 per le colonne.

Ogni tasto della singola riga avrà appunto in comune il pin della riga ma sarà collegato ad una singola colonna.

In pratica ogni tasto è individuato da una coppia di coordinate (riga/colonna).

Ti allego una immagine con lo schema di una matrice 4x4 ma il concetto è lo stesso.

Attilio

OK grazie mille a entrambi 8)

penso che userò il multiplexer perche oltre alla matrice devo collegare altri tasti , luci e un lcd

facendo due conti riesco a collegare tutto per fortuna (avanzano pure due pin :smiley: )

Hai messo in conto anche i pin analog settabili come I/O digitali?

Si 8) ... comunque sto usando tutti e due : la matrice la faccio come ha detto ultimo_53 e le luci e altri tasti li metto con un multiplexer

Se vuoi espandere le porte digitali di Arduino, indipendentemente da come costruisci la matrice, puoi usare un MCP23008 (i/o port expander da 8 porte) oppure un MCP23017 (i/o port expander da 16 porte), entrambi pilotati via I2C.

Ti allego uno schema di un circuitino di prova che avevo fatto per pilotare un display a 7 segmenti proprio con un MCP23008.

Ciao

Attilio

MCP23008 con display 7 segmenti_bb.pdf (1010 KB)